[U-Boot] [PATCH] net: ethoc: add write_hwaddr support

Thomas Chou thomas at wytron.com.tw
Tue Apr 27 06:09:06 CEST 2010


Signed-off-by: Thomas Chou <thomas at wytron.com.tw>
---
 drivers/net/ethoc.c |    4 +++-
 1 files changed, 3 insertions(+), 1 deletions(-)

diff --git a/drivers/net/ethoc.c b/drivers/net/ethoc.c
index b912e44..286fbe7 100644
--- a/drivers/net/ethoc.c
+++ b/drivers/net/ethoc.c
@@ -215,13 +215,14 @@ static inline void ethoc_write_bd(struct eth_device *dev, int index,
 	ethoc_write(dev, offset + 4, bd->addr);
 }
 
-static inline void ethoc_set_mac_address(struct eth_device *dev)
+static int ethoc_set_mac_address(struct eth_device *dev)
 {
 	u8 *mac = dev->enetaddr;
 
 	ethoc_write(dev, MAC_ADDR0, (mac[2] << 24) | (mac[3] << 16) |
 		    (mac[4] << 8) | (mac[5] << 0));
 	ethoc_write(dev, MAC_ADDR1, (mac[0] << 8) | (mac[1] << 0));
+	return 0;
 }
 
 static inline void ethoc_ack_irq(struct eth_device *dev, u32 mask)
@@ -504,6 +505,7 @@ int ethoc_initialize(u8 dev_num, int base_addr)
 	dev->halt = ethoc_halt;
 	dev->send = ethoc_send;
 	dev->recv = ethoc_recv;
+	dev->write_hwaddr = ethoc_set_mac_address;
 	sprintf(dev->name, "%s-%hu", "ETHOC", dev_num);
 
 	eth_register(dev);
-- 
1.6.6.1



More information about the U-Boot mailing list