aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/wl12xx/wl12xx.h
diff options
context:
space:
mode:
authorLuciano Coelho <coelho@ti.com>2011-12-23 02:32:17 -0500
committerLuciano Coelho <coelho@ti.com>2012-02-15 01:38:29 -0500
commit5e037e74802a10a71dddbb05585753b2fcbd8ad7 (patch)
tree4fca005d0d5bdf06ed0d44a095e5bf3c36c27999 /drivers/net/wireless/wl12xx/wl12xx.h
parent30c5dbd1ee191dca1c04c70df0ba1adf0a9769c3 (diff)
wl12xx: use two MAC addresses based on the NVS or from fuse ROM
Add support for two MAC addresses. If the NVS has a valid MAC address, that takes precedence and we use two sequential address starting from the one specified. If the NVS doesn't contain a valid MAC address (ie. if it is set to 00:00:00:00:00:00), we check if the HW PG version in use has the BD_ADDR written in the fuse ROM. If it does, we read it and derive the two subsequent addresses for WLAN. During production, 3 addresses are reserved per device. The first for Bluetooth (burnt in the fuse ROM) and the following two for WLAN. This patch has some code by Igal and Arik (squashed from internal patches). Signed-off-by: Arik Nemtsov <arik@wizery.com> Signed-off-by: Igal Chernobelsky <igalc@ti.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
Diffstat (limited to 'drivers/net/wireless/wl12xx/wl12xx.h')
-rw-r--r--drivers/net/wireless/wl12xx/wl12xx.h7
1 files changed, 6 insertions, 1 deletions
diff --git a/drivers/net/wireless/wl12xx/wl12xx.h b/drivers/net/wireless/wl12xx/wl12xx.h
index b2b09cd02022..1f629fac02e4 100644
--- a/drivers/net/wireless/wl12xx/wl12xx.h
+++ b/drivers/net/wireless/wl12xx/wl12xx.h
@@ -313,7 +313,12 @@ struct wl1271 {
313 313
314 s8 hw_pg_ver; 314 s8 hw_pg_ver;
315 315
316 u8 mac_addr[ETH_ALEN]; 316 /* address read from the fuse ROM */
317 u32 fuse_oui_addr;
318 u32 fuse_nic_addr;
319
320 /* we have up to 2 MAC addresses */
321 struct mac_address addresses[2];
317 int channel; 322 int channel;
318 u8 system_hlid; 323 u8 system_hlid;
319 324