[U-Boot] [PATCH] smc91111: add write_hwaddr

Add smc_write_hwaddr() to set mac address. Clear dev before use.
Signed-off-by: Thomas Chou thomas@wytron.com.tw --- drivers/net/smc91111.c | 40 ++++++++++++++++++++++++---------------- 1 files changed, 24 insertions(+), 16 deletions(-)
diff --git a/drivers/net/smc91111.c b/drivers/net/smc91111.c index 54a1bfb..ba9c67e 100644 --- a/drivers/net/smc91111.c +++ b/drivers/net/smc91111.c @@ -654,6 +654,28 @@ again: return length; }
+static int smc_write_hwaddr(struct eth_device *dev) +{ + int i; + + swap_to(ETHERNET); + SMC_SELECT_BANK (dev, 1); +#ifdef USE_32_BIT + for (i = 0; i < 6; i += 2) { + word address; + + address = dev->enetaddr[i + 1] << 8; + address |= dev->enetaddr[i]; + SMC_outw(dev, address, (ADDR0_REG + i)); + } +#else + for (i = 0; i < 6; i++) + SMC_outb(dev, dev->enetaddr[i], (ADDR0_REG + i)); +#endif + swap_to(FLASH); + return 0; +} + /* * Open and Initialize the board * @@ -662,8 +684,6 @@ again: */ static int smc_init(struct eth_device *dev, bd_t *bd) { - int i; - swap_to(ETHERNET);
PRINTK2 ("%s: smc_init\n", SMC_DEV_NAME); @@ -680,20 +700,6 @@ static int smc_init(struct eth_device *dev, bd_t *bd) /* conservative setting (10Mbps, HalfDuplex, no AutoNeg.) */ /* SMC_SELECT_BANK(dev, 0); */ /* SMC_outw(dev, 0, RPC_REG); */ - SMC_SELECT_BANK (dev, 1); - -#ifdef USE_32_BIT - for (i = 0; i < 6; i += 2) { - word address; - - address = dev->enetaddr[i + 1] << 8; - address |= dev->enetaddr[i]; - SMC_outw(dev, address, (ADDR0_REG + i)); - } -#else - for (i = 0; i < 6; i++) - SMC_outb(dev, dev->enetaddr[i], (ADDR0_REG + i)); -#endif
printf(SMC_DEV_NAME ": MAC %pM\n", dev->enetaddr);
@@ -1360,6 +1366,7 @@ int smc91111_initialize(u8 dev_num, int base_addr) return 0; }
+ memset(dev, 0, sizeof(*dev)); priv->dev_num = dev_num; dev->priv = priv; dev->iobase = base_addr; @@ -1374,6 +1381,7 @@ int smc91111_initialize(u8 dev_num, int base_addr) dev->halt = smc_halt; dev->send = smc_send; dev->recv = smc_rcv; + dev->write_hwaddr = smc_write_hwaddr; sprintf(dev->name, "%s-%hu", SMC_DEV_NAME, dev_num);
eth_register(dev);

Mike Frysinger wrote:
On Tuesday, October 05, 2010 21:16:10 Thomas Chou wrote:
Add smc_write_hwaddr() to set mac address. Clear dev before use.
how is this different from the one sent earlier today ? when re-submitting, you should note what changed. -mike
Sorry. It is the same patch resend.
I was confused by the greylisting of denx mail server and wondered why the first mail was not received after 12 hours.
- Thomas

Dear Thomas Chou,
In message 4CAC0B1E.1050007@wytron.com.tw you wrote:
I was confused by the greylisting of denx mail server and wondered why the first mail was not received after 12 hours.
There is no greylisting on our side.
Best regards,
Wolfgang Denk

Hi Wolfgang,
Dear Thomas Chou,
In message 4CAC0B1E.1050007@wytron.com.tw you wrote:
I was confused by the greylisting of denx mail server and wondered why the first mail was not received after 12 hours.
There is no greylisting on our side.
Well actually we do run postgrey. But as yet we did not get any complaints that this interferes with regular usage. The default values of the software should not intrude much on completely unfiltered traffic.
Cheers Detlev

On 10/07/2010 06:27 PM, Detlev Zundel wrote:
Hi Wolfgang,
Dear Thomas Chou,
In message4CAC0B1E.1050007@wytron.com.tw you wrote:
I was confused by the greylisting of denx mail server and wondered why the first mail was not received after 12 hours.
There is no greylisting on our side.
Well actually we do run postgrey. But as yet we did not get any complaints that this interferes with regular usage. The default values of the software should not intrude much on completely unfiltered traffic.
Dear Wolfgang and Detlev,
The retransmission wait time on my first mail server is quite long and I forgot that there is postgrey on denx mail server, so I sent the patch again using another mail server. I wondered if my first mail server changed IP. Sorry for the noise.
Best regards, Thomas

Dear Thomas Chou,
In message 4CAEC4CD.6050705@wytron.com.tw you wrote:
The retransmission wait time on my first mail server is quite long and I forgot that there is postgrey on denx mail server, so I sent the patch again using another mail server. I wondered if my first mail server changed IP. Sorry for the noise.
No problem. It was informative for me, too, as I learned that we're running postgrey. I didn't know that before.
Best regards,
Wolfgang Denk

Hi Thomas,
On 10/5/2010 6:16 PM, Thomas Chou wrote:
Add smc_write_hwaddr() to set mac address. Clear dev before use.
Signed-off-by: Thomas Chouthomas@wytron.com.tw
drivers/net/smc91111.c | 40 ++++++++++++++++++++++++---------------- 1 files changed, 24 insertions(+), 16 deletions(-)
Applied to net repo.
thanks, Ben
participants (5)
-
Ben Warren
-
Detlev Zundel
-
Mike Frysinger
-
Thomas Chou
-
Wolfgang Denk