diff options
-rw-r--r-- | drivers/staging/cw1200/ap.c | 5 | ||||
-rw-r--r-- | drivers/staging/cw1200/scan.c | 7 |
2 files changed, 7 insertions, 5 deletions
diff --git a/drivers/staging/cw1200/ap.c b/drivers/staging/cw1200/ap.c index 561dab3f94f..f17ce334ed1 100644 --- a/drivers/staging/cw1200/ap.c +++ b/drivers/staging/cw1200/ap.c @@ -38,13 +38,8 @@ int cw1200_sta_add(struct ieee80211_hw *hw, struct ieee80211_vif *vif, .link_id = 0, }; - - /* Link ID mapping works fine in STA mode as well. - * It's better to keep same handling for both STA ans AP modes */ -#if 0 if (priv->mode != NL80211_IFTYPE_AP) return 0; -#endif map_link.link_id = ffs(~(priv->link_id_map | 1)) - 1; if (map_link.link_id > CW1200_MAX_STA_IN_AP_MODE) { diff --git a/drivers/staging/cw1200/scan.c b/drivers/staging/cw1200/scan.c index 6e5b89c5635..7fb42d4ee05 100644 --- a/drivers/staging/cw1200/scan.c +++ b/drivers/staging/cw1200/scan.c @@ -192,6 +192,11 @@ void cw1200_scan_work(struct work_struct *work) scan.numOfChannels = it - priv->scan.begin; /* TODO: Is it optimal? */ scan.probeDelay = 100; + /* It is not stated in WSM specification, however + * FW team says that driver may not use FG scan + * when joined. */ + if (priv->join_status == CW1200_JOIN_STATUS_STA) + scan.scanType = WSM_SCAN_TYPE_BACKGROUND; scan.ch = kzalloc( sizeof(struct wsm_scan_ch[it - priv->scan.begin]), GFP_KERNEL); @@ -324,6 +329,8 @@ void cw1200_probe_work(struct work_struct *work) scan.band = (priv->channel->band == IEEE80211_BAND_5GHZ) ? WSM_PHY_BAND_5G : WSM_PHY_BAND_2_4G; + if (priv->join_status == CW1200_JOIN_STATUS_STA) + scan.scanType = WSM_SCAN_TYPE_BACKGROUND; ch[0].number = priv->channel->hw_value; skb_pull(frame.skb, sizeof(struct wsm_tx)); |