From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ben Warren Date: Tue, 27 Apr 2010 11:33:09 -0700 Subject: [U-Boot] [PATCH] Blackfin: bfin_mac: hook up new write_hwaddr function In-Reply-To: <1272392128-13333-1-git-send-email-vapier@gentoo.org> References: <1272392128-13333-1-git-send-email-vapier@gentoo.org> Message-ID: <4BD72DE5.9030808@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 Hi Mike, On 4/27/2010 11:15 AM, Mike Frysinger wrote: > Signed-off-by: Mike Frysinger > --- > drivers/net/bfin_mac.c | 28 +++++++++++++++------------- > drivers/net/bfin_mac.h | 3 +-- > 2 files changed, 16 insertions(+), 15 deletions(-) > > diff --git a/drivers/net/bfin_mac.c b/drivers/net/bfin_mac.c > index ec45b63..720e126 100644 > --- a/drivers/net/bfin_mac.c > +++ b/drivers/net/bfin_mac.c > @@ -106,6 +106,7 @@ int bfin_EMAC_initialize(bd_t *bis) > dev->halt = bfin_EMAC_halt; > dev->send = bfin_EMAC_send; > dev->recv = bfin_EMAC_recv; > + dev->write_hwaddr = bfin_EMAC_setup_addr; > > eth_register(dev); > > @@ -303,6 +304,19 @@ static int bfin_miiphy_init(struct eth_device *dev, int *opmode) > return 0; > } > > +static int bfin_EMAC_setup_addr(struct eth_device *dev) > +{ > + *pEMAC_ADDRLO = > + dev->enetaddr[0] | > + dev->enetaddr[1]<< 8 | > + dev->enetaddr[2]<< 16 | > + dev->enetaddr[3]<< 24; > + *pEMAC_ADDRHI = > + dev->enetaddr[4] | > + dev->enetaddr[5]<< 8; > + return 0; > +} > + > static int bfin_EMAC_init(struct eth_device *dev, bd_t *bd) > { > u32 opmode; > @@ -318,7 +332,7 @@ static int bfin_EMAC_init(struct eth_device *dev, bd_t *bd) > return -1; > > /* Initialize EMAC address */ > - bfin_EMAC_setup_addr(dev->enetaddr); > + bfin_EMAC_setup_addr(dev); > Are you sure you still want to program it on every init() call? There's nothing wrong with that, BTW... regards, Ben