diff options
author | Imre Kaloz <kaloz@openwrt.org> | 2007-02-08 13:19:34 +0000 |
---|---|---|
committer | Imre Kaloz <kaloz@openwrt.org> | 2007-02-08 13:19:34 +0000 |
commit | c03468fed97d68243c9e305d660ee4fafaff91e8 (patch) | |
tree | c30f8cc481eeb7bb10a481a54973698acc844566 | |
parent | 59f6b504750a5119b8c7d91c4366ae14fa181f90 (diff) | |
download | upstream-c03468fed97d68243c9e305d660ee4fafaff91e8.tar.gz upstream-c03468fed97d68243c9e305d660ee4fafaff91e8.tar.bz2 upstream-c03468fed97d68243c9e305d660ee4fafaff91e8.zip |
fix mac handling, thanks to Kestutis Kupciunas
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@6278 3c298f89-4303-0410-b956-a3cf2f4a3e73
-rw-r--r-- | target/linux/atheros-2.6/files/drivers/net/ar2313/ar2313.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/target/linux/atheros-2.6/files/drivers/net/ar2313/ar2313.c b/target/linux/atheros-2.6/files/drivers/net/ar2313/ar2313.c index 82e9e94d5c..bf62c78b13 100644 --- a/target/linux/atheros-2.6/files/drivers/net/ar2313/ar2313.c +++ b/target/linux/atheros-2.6/files/drivers/net/ar2313/ar2313.c @@ -296,7 +296,10 @@ int __init ar2313_probe(struct platform_device *pdev) memcpy(dev->dev_addr, def_mac, 6); } else { memcpy(dev->dev_addr, ((u8 *)configstart)+102, 6); - } + /* use the other MAC slot if the first one is empty */ + if (!memcmp(dev->dev_addr, "\xff\xff\xff\xff\xff\xff", 6)) + memcpy(dev->dev_addr, ((u8 *)configstart)+102 + 6, 6); + } } sp->board_idx = BOARD_IDX_STATIC; |