aboutsummaryrefslogtreecommitdiffstats
path: root/package/acx-mac80211/patches/200-initial-macaddr.patch
diff options
context:
space:
mode:
authorFlorian Fainelli <florian@openwrt.org>2012-10-14 15:41:16 +0000
committerFlorian Fainelli <florian@openwrt.org>2012-10-14 15:41:16 +0000
commitbbad6b5e944e0d099d4bde7523ade5bec94e475f (patch)
tree0b8837896cc1662e7873ce0cee2413140ddd38a3 /package/acx-mac80211/patches/200-initial-macaddr.patch
parent6bab195e7bd7493a7e6ea7effe417adaff92579a (diff)
downloadupstream-bbad6b5e944e0d099d4bde7523ade5bec94e475f.tar.gz
upstream-bbad6b5e944e0d099d4bde7523ade5bec94e475f.tar.bz2
upstream-bbad6b5e944e0d099d4bde7523ade5bec94e475f.zip
attitude_adjustment: backport ar7 changes r33744 to r33756 changes
git-svn-id: svn://svn.openwrt.org/openwrt/branches/attitude_adjustment@33764 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package/acx-mac80211/patches/200-initial-macaddr.patch')
-rw-r--r--package/acx-mac80211/patches/200-initial-macaddr.patch31
1 files changed, 31 insertions, 0 deletions
diff --git a/package/acx-mac80211/patches/200-initial-macaddr.patch b/package/acx-mac80211/patches/200-initial-macaddr.patch
new file mode 100644
index 0000000000..498c72dd85
--- /dev/null
+++ b/package/acx-mac80211/patches/200-initial-macaddr.patch
@@ -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 */