From: Albert Aribaud Date: Mon, 12 Jul 2010 09:03:33 +0000 (+0200) Subject: kirkwood_egiga: CONFIG_SKIP_LOCAL_MAC_RANDOMIZATION X-Git-Tag: v2010.09-rc1~82^2~2^2~4 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=c67e2ccd5045d7f1dff7eac3ac9007bb4bfa9794;p=u-boot kirkwood_egiga: CONFIG_SKIP_LOCAL_MAC_RANDOMIZATION This configuration option allows SoCs without random generation capability to fill in local MACs with a fixed rather than random value Signed-off-by: Albert Aribaud Signed-off-by: Ben Warren --- diff --git a/drivers/net/kirkwood_egiga.c b/drivers/net/kirkwood_egiga.c index dca9f11c2a..7aabcefa98 100644 --- a/drivers/net/kirkwood_egiga.c +++ b/drivers/net/kirkwood_egiga.c @@ -699,13 +699,21 @@ int kirkwood_egiga_initialize(bd_t * bis) } while (!eth_getenv_enetaddr(s, dev->enetaddr)) { - /* Generate Random Private MAC addr if not set */ + /* Generate Private MAC addr if not set */ dev->enetaddr[0] = 0x02; dev->enetaddr[1] = 0x50; dev->enetaddr[2] = 0x43; +#if defined (CONFIG_SKIP_LOCAL_MAC_RANDOMIZATION) + /* Generate fixed lower MAC half using devnum */ + dev->enetaddr[3] = 0; + dev->enetaddr[4] = 0; + dev->enetaddr[5] = devnum; +#else + /* Generate random lower MAC half */ dev->enetaddr[3] = get_random_hex(); dev->enetaddr[4] = get_random_hex(); dev->enetaddr[5] = get_random_hex(); +#endif eth_setenv_enetaddr(s, dev->enetaddr); }