From e3dae32ae8153b161e924e9aad070499e486d094 Mon Sep 17 00:00:00 2001 From: Luciano Coelho Date: Tue, 11 Jan 2011 18:25:18 +0100 Subject: [PATCH] --- yaml --- r: 236893 b: refs/heads/master c: a8aaaf53d5f22f7f60ca5af26fc85c2940575c37 h: refs/heads/master i: 236891: bac9c128e80999479ccad52758de0e7f0eb70bf5 v: v3 --- [refs] | 2 +- trunk/drivers/net/wireless/wl12xx/main.c | 16 ++++++++++++++-- trunk/drivers/net/wireless/wl12xx/wl12xx.h | 3 +++ 3 files changed, 18 insertions(+), 3 deletions(-) diff --git a/[refs] b/[refs] index a3f99fb77b9c..74162c406223 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: fa287b8f291d79f080182eb353d1c1f4f374ae87 +refs/heads/master: a8aaaf53d5f22f7f60ca5af26fc85c2940575c37 diff --git a/trunk/drivers/net/wireless/wl12xx/main.c b/trunk/drivers/net/wireless/wl12xx/main.c index a3529f56a3d6..588e10ee282c 100644 --- a/trunk/drivers/net/wireless/wl12xx/main.c +++ b/trunk/drivers/net/wireless/wl12xx/main.c @@ -3150,8 +3150,20 @@ int wl1271_init_ieee80211(struct wl1271 *wl) */ wl->hw->wiphy->max_scan_ie_len = WL1271_CMD_TEMPL_MAX_SIZE - sizeof(struct ieee80211_header); - wl->hw->wiphy->bands[IEEE80211_BAND_2GHZ] = &wl1271_band_2ghz; - wl->hw->wiphy->bands[IEEE80211_BAND_5GHZ] = &wl1271_band_5ghz; + + /* + * We keep local copies of the band structs because we need to + * modify them on a per-device basis. + */ + memcpy(&wl->bands[IEEE80211_BAND_2GHZ], &wl1271_band_2ghz, + sizeof(wl1271_band_2ghz)); + memcpy(&wl->bands[IEEE80211_BAND_5GHZ], &wl1271_band_5ghz, + sizeof(wl1271_band_5ghz)); + + wl->hw->wiphy->bands[IEEE80211_BAND_2GHZ] = + &wl->bands[IEEE80211_BAND_2GHZ]; + wl->hw->wiphy->bands[IEEE80211_BAND_5GHZ] = + &wl->bands[IEEE80211_BAND_5GHZ]; wl->hw->queues = 4; wl->hw->max_rates = 1; diff --git a/trunk/drivers/net/wireless/wl12xx/wl12xx.h b/trunk/drivers/net/wireless/wl12xx/wl12xx.h index f153e4b81c0d..ca727e0c4ce9 100644 --- a/trunk/drivers/net/wireless/wl12xx/wl12xx.h +++ b/trunk/drivers/net/wireless/wl12xx/wl12xx.h @@ -457,6 +457,9 @@ struct wl1271 { /* recoreded keys for AP-mode - set here before AP startup */ struct wl1271_ap_key *recorded_ap_keys[MAX_NUM_KEYS]; + + /* bands supported by this instance of wl12xx */ + struct ieee80211_supported_band bands[IEEE80211_NUM_BANDS]; }; struct wl1271_station {