On Thu, Apr 18, 2024 at 11:42 AM Marek Vasut <ma...@denx.de> wrote: > > On 4/18/24 8:02 PM, Fabio Estevam wrote: > > Hi Tim, > > > > On Thu, Apr 18, 2024 at 2:54 PM Tim Harvey <thar...@gateworks.com> wrote: > > > >> Fabio, if you enable CONFIG_DM_RNG on an imx8m{m,p}_evk do you get the > >> following in the SPL? > >> Couldn't bind rng driver (-96) > >> SEC0: RNG instantiated > >> > >> sec_init failed! > > > > Yes, if I add CONFIG_DM_RNG=y to imx8mm_evk_defconfig I get: > > > > U-Boot SPL 2024.04-00793-g3434b88d2c2f-dirty (Apr 18 2024 - 14:58:57 -0300) > > No pmic > > Couldn't bind rng driver (-96) > > SEC0: RNG instantiated > > > > sec_init failed! > > Interesting. Which TFA blob version do you use ? I used the mainline > 2.10 for my tests.
Marek, Were you able to reproduce this as well with the board you enabled DM_RNG for? If it does work fine what dtb were you using... perhaps there is something in its u-boot.dtsi that we need? The error -EPFNOSUPPORT is interesting and helps point to the only place it can be where the comment says the strange errno is to make this easier to find: https://elixir.bootlin.com/u-boot/latest/source/drivers/core/uclass.c#L70: if (!uc_drv) { debug("Cannot find uclass for id %d: please add the UCLASS_DRIVER() declaration for this UCLASS_... id\n", id); /* * Use a strange error to make this case easier to find. When * a uclass is not available it can prevent driver model from * starting up and this failure is otherwise hard to debug. */ return -EPFNOSUPPORT; } I'm not very familiar with the dm driver binding - does the U-BOOT_DRIVER usage in drivers/crypto/fsl/rng.c need to be refactored to use UCLASS_DRIVER for it to be usable in both SPL and U-Boot? Honestly I don't know why we need DM_RNG in SPL anyway and we could just add support for disabling it there to avoid unwanted bloat. Tim