[PATCH 1/2] lib: uuid: use RNG device if present
Torsten Duwe
duwe at lst.de
Wed Dec 16 14:22:03 CET 2020
On Wed, 16 Dec 2020 11:41:16 +0100
matthias.bgg at kernel.org wrote:
> @@ -249,9 +250,22 @@ void gen_rand_uuid(unsigned char *uuid_bin)
> {
> u32 ptr[4];
> struct uuid *uuid = (struct uuid *)ptr;
> - int i;
> -
> - srand(get_ticks() + rand());
> + int i, ret;
> + struct udevice *devp;
> + u8 randv = 0;
> +
> +#if defined(CONFIG_DM_RNG)
> + ret = uclass_get_device(UCLASS_RNG, 0, &devp);
> + if (ret) {
> + ret = dm_rng_read(dev, randv, sizeof(randv));
^ ^
same as patch 2/2
> + if (ret < 0)
> + randv = 0;
> + }
> + if (randv)
> + srand(randv);
> + else
> +#endif
> + srand(get_ticks() + rand());
>
> /* Set all fields randomly */
> for (i = 0; i < 4; i++)
More information about the U-Boot
mailing list