acx-mac80211: fetch WLAN MAC address from PROM environment
Patch from Daniel Gimpelevich. SVN-Revision: 33747
This commit is contained in:
parent
9d13de5739
commit
a5e7d09487
1 changed files with 31 additions and 0 deletions
31
package/acx-mac80211/patches/200-initial-macaddr.patch
Normal file
31
package/acx-mac80211/patches/200-initial-macaddr.patch
Normal file
|
@ -0,0 +1,31 @@
|
||||||
|
--- a/cardsetting.c 2012-07-03 16:21:25.934102662 -0700
|
||||||
|
+++ b/cardsetting.c 2012-07-03 16:49:26.910438174 -0700
|
||||||
|
@@ -710,12 +710,27 @@
|
||||||
|
u8 stationID[4 + acx_ie_descs[ACX1xx_IE_DOT11_STATION_ID].len];
|
||||||
|
const u8 *paddr;
|
||||||
|
int i, res;
|
||||||
|
+ const char *prom_addr;
|
||||||
|
+ char *prom_getenv(const char *name);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
res = acx_interrogate(adev, &stationID, ACX1xx_IE_DOT11_STATION_ID);
|
||||||
|
paddr = &stationID[4];
|
||||||
|
- for (i = 0; i < ETH_ALEN; i++) {
|
||||||
|
+ prom_addr = NULL;
|
||||||
|
+#ifdef CONFIG_VLYNQ
|
||||||
|
+ prom_addr = prom_getenv("macwlan");
|
||||||
|
+ if (prom_addr == NULL)
|
||||||
|
+ prom_addr = prom_getenv("mac_ap");
|
||||||
|
+#endif
|
||||||
|
+ if (prom_addr)
|
||||||
|
+ sscanf(prom_addr, "%hhx:%hhx:%hhx:%hhx:%hhx:%hhx", adev->dev_addr,
|
||||||
|
+ adev->dev_addr + 1,
|
||||||
|
+ adev->dev_addr + 2,
|
||||||
|
+ adev->dev_addr + 3,
|
||||||
|
+ adev->dev_addr + 4,
|
||||||
|
+ adev->dev_addr + 5);
|
||||||
|
+ else for (i = 0; i < ETH_ALEN; i++) {
|
||||||
|
/* we copy the MAC address (reversed in the card) to
|
||||||
|
* the netdevice's MAC address, and on ifup it will be
|
||||||
|
* copied into iwadev->dev_addr */
|
Loading…
Reference in a new issue