From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ben Warren Date: Mon, 11 May 2009 17:28:05 -0700 Subject: [U-Boot] [PATCH 1/4] net: extend the netdev to have a common way to set the hw mac address In-Reply-To: <1242023969-13542-1-git-send-email-plagnioj@jcrosoft.com> References: <1242023969-13542-1-git-send-email-plagnioj@jcrosoft.com> Message-ID: <4A08C295.9030708@gmail.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Jean-Christophe PLAGNIOL-VILLARD wrote: > init it at the eth_initialize > > this will allow to add later a hook to update the enetadd hw storage > when it's updated in env or when the env is saved > > Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD > Cc: Ben Warren > --- > include/net.h | 2 ++ > net/eth.c | 4 ++++ > 2 files changed, 6 insertions(+), 0 deletions(-) > > diff --git a/include/net.h b/include/net.h > index 5a1d36e..2ed6263 100644 > --- a/include/net.h > +++ b/include/net.h > @@ -93,6 +93,7 @@ enum eth_state_t { > }; > > struct eth_device { > + int num; > char name[NAMESIZE]; > unsigned char enetaddr[6]; > int iobase; > @@ -105,6 +106,7 @@ struct eth_device { > #ifdef CONFIG_MCAST_TFTP > int (*mcast) (struct eth_device*, u32 ip, u8 set); > #endif > + int (*set_hw_enetaddr) (struct eth_device*, bd_t*); > struct eth_device *next; > void *priv; > }; > diff --git a/net/eth.c b/net/eth.c > index c6fa5b9..99bb6c2 100644 > --- a/net/eth.c > +++ b/net/eth.c > @@ -217,6 +217,8 @@ int eth_initialize(bd_t *bis) > if (eth_number) > puts (", "); > > + dev->num = eth_number; > + > printf("%s", dev->name); > > if (ethprime && strcmp (dev->name, ethprime) == 0) { > @@ -240,6 +242,8 @@ int eth_initialize(bd_t *bis) > } > > memcpy(dev->enetaddr, env_enetaddr, 6); > + if(dev->set_hw_enetaddr) > + dev->set_hw_enetaddr(dev, bis); > } > > eth_number++; > NAK, as convincingly explained by others. regards, Ben