[U-Boot] [PATCH 2/3] lib: rand: add call to hw_rand() - hardware random number generator

Michael Walle michael at walle.cc
Fri Feb 28 18:02:05 CET 2014


Am Freitag, 28. Februar 2014, 17:30:54 schrieb Przemyslaw Marczak:
> Changes:
> - lib/rand.c: add call to hw_rand() (depends on CONFIG_RAND_HW_ACCEL)
> - include/common.h: add hw_rand() declaration.
> 
> Signed-off-by: Przemyslaw Marczak <p.marczak at samsung.com>
> cc: Michael Walle <michael at walle.cc>
> cc: Tom Rini <trini at ti.com>
> ---
>  include/common.h |    3 +++
>  lib/rand.c       |    4 ++++
>  2 files changed, 7 insertions(+)
> 
> diff --git a/include/common.h b/include/common.h
> index 96a45a6..58e2fbc 100644
> --- a/include/common.h
> +++ b/include/common.h
> @@ -836,6 +836,9 @@ void srand(unsigned int seed);
>  unsigned int rand(void);
>  unsigned int rand_r(unsigned int *seedp);
>  #endif
> +#ifdef CONFIG_RAND_HW_ACCEL
> +unsigned int hw_rand(void);
> +#endif
> 
>  /* common/console.c */
>  int	console_init_f(void);	/* Before relocation; uses the serial  stuff	
*/
> diff --git a/lib/rand.c b/lib/rand.c
> index 5c367e1..f534635 100644
> --- a/lib/rand.c
> +++ b/lib/rand.c
> @@ -23,7 +23,11 @@ unsigned int rand_r(unsigned int *seedp)
> 
>  unsigned int rand(void)
>  {
> +#ifdef CONFIG_RAND_HW_ACCEL
> +	return hw_rand();
> +#else
>  	return rand_r(&y);
> +#endif
>  }

shouldn't we put that into rand_r() and ignore the argument? because then both 
users of rand() and rand_r() will benefit from the hardware random generator.

and what does HW_ACCEL mean? is this a real hardware random generator? if this 
is the case, wouldn't it make more sense to name it CONFIG_RAND_USE_HW_RNG.

-michael


More information about the U-Boot mailing list