On Fri, Aug 23, 2019 at 6:08 AM Michael Walle <mich...@walle.cc> wrote: > > The net_random_ethaddr() tries to get some entropy from different > startup times of a board. The seed is initialized with get_timer() which > has only a granularity of milliseconds. We can do better if we use > get_ticks() which returns the raw timer ticks. Using this we have a > higher chance of getting different values at startup. > > Signed-off-by: Michael Walle <mich...@walle.cc> > --- > include/net.h | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/include/net.h b/include/net.h > index a54d5eeac5..8215316bd3 100644 > --- a/include/net.h > +++ b/include/net.h > @@ -816,7 +816,7 @@ static inline int is_valid_ethaddr(const u8 *addr) > static inline void net_random_ethaddr(uchar *addr) > { > int i; > - unsigned int seed = get_timer(0); > + unsigned int seed = get_ticks() & (unsigned int)-1;
Shouldn't this be directly: unsigned int seed = get_ticks(); > > for (i = 0; i < 6; i++) > addr[i] = rand_r(&seed); Regards, Bin _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot