diff options
author | Dan Williams <dcbw@redhat.com> | 2007-05-25 16:46:33 -0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2007-06-11 14:28:42 -0400 |
commit | ef9a264b7a288a07c43ddb244c4f9ab0e8df90e4 (patch) | |
tree | 67dad09f719d1e91cb168143db2215b9a84dd942 /drivers/net/wireless/libertas/join.c | |
parent | d43fb8ee3dab261e475d4f5189cf86182139b7f4 (diff) | |
download | blackbird-op-linux-ef9a264b7a288a07c43ddb244c4f9ab0e8df90e4.tar.gz blackbird-op-linux-ef9a264b7a288a07c43ddb244c4f9ab0e8df90e4.zip |
[PATCH] libertas: move channel changing into association framework
Handle channel changes through the deferred association framework
rather than directly. Fixes errors when setting channels along
with other parameters like mode and SSID.
Signed-off-by: Dan Williams <dcbw@redhat.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/libertas/join.c')
-rw-r--r-- | drivers/net/wireless/libertas/join.c | 13 |
1 files changed, 5 insertions, 8 deletions
diff --git a/drivers/net/wireless/libertas/join.c b/drivers/net/wireless/libertas/join.c index c9111b877067..a11ce3a6f611 100644 --- a/drivers/net/wireless/libertas/join.c +++ b/drivers/net/wireless/libertas/join.c @@ -158,7 +158,6 @@ int libertas_start_adhoc_network(wlan_private * priv, struct WLAN_802_11_SSID *a libertas_set_radio_control(priv); - lbs_deb_join("Adhoc channel = %d\n", adapter->adhocchannel); lbs_deb_join("curbssparams.channel = %d\n", adapter->curbssparams.channel); lbs_deb_join("curbssparams.band = %d\n", adapter->curbssparams.band); @@ -513,15 +512,13 @@ int libertas_cmd_80211_ad_hoc_start(wlan_private * priv, adhs->phyparamset.dsparamset.elementid = DS_PARA_IE_ID; adhs->phyparamset.dsparamset.len = DS_PARA_IE_LEN; - WARN_ON(!adapter->adhocchannel); + WARN_ON(!adapter->curbssparams.channel); lbs_deb_join("ADHOC_S_CMD: Creating ADHOC on channel %d\n", - adapter->adhocchannel); - - adapter->curbssparams.channel = adapter->adhocchannel; + adapter->curbssparams.channel); - pbssdesc->channel = adapter->adhocchannel; - adhs->phyparamset.dsparamset.currentchan = adapter->adhocchannel; + pbssdesc->channel = adapter->curbssparams.channel; + adhs->phyparamset.dsparamset.currentchan = adapter->curbssparams.channel; memcpy(&pbssdesc->phyparamset, &adhs->phyparamset, sizeof(union ieeetypes_phyparamset)); @@ -909,7 +906,7 @@ int libertas_ret_80211_ad_hoc_start(wlan_private * priv, wireless_send_event(priv->dev, SIOCGIWAP, &wrqu, NULL); lbs_deb_join("ADHOC_RESP: - Joined/Started Ad Hoc\n"); - lbs_deb_join("ADHOC_RESP: channel = %d\n", adapter->adhocchannel); + lbs_deb_join("ADHOC_RESP: channel = %d\n", adapter->curbssparams.channel); lbs_deb_join("ADHOC_RESP: BSSID = %02x:%02x:%02x:%02x:%02x:%02x\n", padhocresult->BSSID[0], padhocresult->BSSID[1], padhocresult->BSSID[2], padhocresult->BSSID[3], |