[PATCH v1] 3: Added dcp_rng driver device binding code

Heinrich Schuchardt xypron.glpk at gmx.de
Thu Sep 8 21:31:29 CEST 2022


On 9/8/22 20:18, Simon Glass wrote:
> Hi Kshitiz,
>
> +Ilias Apalodimas
>
>
> On Thu, 8 Sept 2022 at 02:59, Kshitiz Varshney <kshitiz.varshney at nxp.com> wrote:
>>
>> From: Kshitiz <kshitiz.varshney at nxp.com>
>>
>> This commit manually binds dcp_rng device driver and initalizes it inside
>> arch_misc_init() function.
>>
>> Signed-off-by: Kshitiz Varshney <kshitiz.varshney at nxp.com>
>> Reviewed-by: Ye Li <ye.li at nxp.com>

CC the maintainer of RNG Sughosh Ganu <sughosh.ganu at linaro.org>

>> ---
>>   arch/arm/mach-imx/mx6/soc.c | 16 ++++++++++++++++
>>   1 file changed, 16 insertions(+)
>>
>> diff --git a/arch/arm/mach-imx/mx6/soc.c b/arch/arm/mach-imx/mx6/soc.c
>> index 3e538754d9..9bf16119c2 100644
>> --- a/arch/arm/mach-imx/mx6/soc.c
>> +++ b/arch/arm/mach-imx/mx6/soc.c
>> @@ -31,6 +31,8 @@
>>   #include <hang.h>
>>   #include <cpu_func.h>
>>   #include <env.h>
>> +#include<dm/device-internal.h>
>> +#include<dm/lists.h>
>>
>>   DECLARE_GLOBAL_DATA_PTR;
>>
>> @@ -1005,6 +1007,20 @@ int arch_misc_init(void)
>>                  if (ret)
>>                          printf("Failed to initialize caam_jr: %d\n", ret);
>>          }
>> +
>> +       if (IS_ENABLED(CONFIG_FSL_DCP_RNG)) {
>> +               struct udevice *dev;
>> +               int ret;
>> +
>> +               ret = device_bind_driver(NULL, "dcp_rng", "dcp_rng", NULL);
>
> This needs to be in the device tree. This it the kind of madness I was
> warning about with Ilias, so I have copied him here.
>
> We need to stop manually binding devices when they should be in the DT.
>
>> +               if (ret)
>> +                       printf("Couldn't bind dcp rng driver (%d)\n", ret);
>> +
>> +               ret = uclass_get_device_by_driver(UCLASS_RNG, DM_DRIVER_GET(dcp_rng), &dev);
>> +               if (ret)
>> +                       printf("Failed to initialize dcp rng: %d\n", ret);
>> +       }
>> +
>>          setup_serial_number();
>>          return 0;
>>   }
>> --
>> 2.25.1
>>
>
> Regards,
> SImon



More information about the U-Boot mailing list