[PATCH] fdt_support: add optional board_rng_seed() hook
Rasmus Villemoes
rasmus.villemoes at prevas.dk
Tue Aug 23 16:06:36 CEST 2022
On 23/08/2022 15.38, Simon Glass wrote:
>> +/**
>> + * board_rng_seed() - Provide a seed to be passed via /chosen/rng-seed
>> + *
>> + * This function is called if CONFIG_BOARD_RNG_SEED is set, and must
>> + * be provided by the board. It should return, via @buf, some suitable
>> + * seed value to pass to the kernel.
>> + *
>> + * @param buf A struct abuf for returning the seed and its size.
>> + * @return 0 if ok, negative on error.
>> + */
>> +int board_rng_seed(struct abuf *buf);
>
> Instead of yet another hook, can we use EVT_FT_FIXUP? An even better
> option might be to use EVT_FT_FIXUP and then call a UCLASS_BOARD
> method to obtain the information.
I didn't know there was anything called EVT_FT_FIXUP, and from grepping,
it seems suffer the same problem as ft_board_setup() as I mention,
namely running after the command line (aka /chosen/bootargs) has been
set up.
Also, I can't see how it can actually affect the blob being passed to
the kernel, doesn't
fixup.tree = oftree_default();
ret = event_notify(EVT_FT_FIXUP, &fixup, sizeof(fixup));
mean that fixup.tree points at U-Boot's control fdt rather than the blob
that will be passed as the kernel's fdt? That seems wrong.
Rasmus
More information about the U-Boot
mailing list