aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/ath/ath6kl
diff options
context:
space:
mode:
authorJouni Malinen <jouni@qca.qualcomm.com>2011-08-30 14:57:59 -0400
committerKalle Valo <kvalo@qca.qualcomm.com>2011-08-31 03:13:01 -0400
commitb84da8c738681b96e7691d985191ebf9ee4a21e8 (patch)
tree235bf2dda5385c4e4937b5e7625da4612d5cbb1c /drivers/net/wireless/ath/ath6kl
parentf9e5f05cb9c944696def27618215216df59c7c33 (diff)
ath6kl: Use set_appie command to add Probe Request IEs
Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com> Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
Diffstat (limited to 'drivers/net/wireless/ath/ath6kl')
-rw-r--r--drivers/net/wireless/ath/ath6kl/cfg80211.c11
-rw-r--r--drivers/net/wireless/ath/ath6kl/wmi.h3
2 files changed, 14 insertions, 0 deletions
diff --git a/drivers/net/wireless/ath/ath6kl/cfg80211.c b/drivers/net/wireless/ath/ath6kl/cfg80211.c
index 5c98de36d163..56a60c7f53c1 100644
--- a/drivers/net/wireless/ath/ath6kl/cfg80211.c
+++ b/drivers/net/wireless/ath/ath6kl/cfg80211.c
@@ -776,6 +776,16 @@ static int ath6kl_cfg80211_scan(struct wiphy *wiphy, struct net_device *ndev,
776 request->ssids[i].ssid); 776 request->ssids[i].ssid);
777 } 777 }
778 778
779 if (request->ie) {
780 ret = ath6kl_wmi_set_appie_cmd(ar->wmi, WMI_FRAME_PROBE_REQ,
781 request->ie, request->ie_len);
782 if (ret) {
783 ath6kl_err("failed to set Probe Request appie for "
784 "scan");
785 return ret;
786 }
787 }
788
779 if (ath6kl_wmi_startscan_cmd(ar->wmi, WMI_LONG_SCAN, 0, 789 if (ath6kl_wmi_startscan_cmd(ar->wmi, WMI_LONG_SCAN, 0,
780 false, 0, 0, 0, NULL) != 0) { 790 false, 0, 0, 0, NULL) != 0) {
781 ath6kl_err("wmi_startscan_cmd failed\n"); 791 ath6kl_err("wmi_startscan_cmd failed\n");
@@ -1770,6 +1780,7 @@ struct wireless_dev *ath6kl_cfg80211_init(struct device *dev)
1770 BIT(NL80211_IFTYPE_ADHOC); 1780 BIT(NL80211_IFTYPE_ADHOC);
1771 /* max num of ssids that can be probed during scanning */ 1781 /* max num of ssids that can be probed during scanning */
1772 wdev->wiphy->max_scan_ssids = MAX_PROBED_SSID_INDEX; 1782 wdev->wiphy->max_scan_ssids = MAX_PROBED_SSID_INDEX;
1783 wdev->wiphy->max_scan_ie_len = 1000; /* FIX: what is correct limit? */
1773 wdev->wiphy->bands[IEEE80211_BAND_2GHZ] = &ath6kl_band_2ghz; 1784 wdev->wiphy->bands[IEEE80211_BAND_2GHZ] = &ath6kl_band_2ghz;
1774 wdev->wiphy->bands[IEEE80211_BAND_5GHZ] = &ath6kl_band_5ghz; 1785 wdev->wiphy->bands[IEEE80211_BAND_5GHZ] = &ath6kl_band_5ghz;
1775 wdev->wiphy->signal_type = CFG80211_SIGNAL_TYPE_MBM; 1786 wdev->wiphy->signal_type = CFG80211_SIGNAL_TYPE_MBM;
diff --git a/drivers/net/wireless/ath/ath6kl/wmi.h b/drivers/net/wireless/ath/ath6kl/wmi.h
index 5e2f6ce41ba1..83af518fcafc 100644
--- a/drivers/net/wireless/ath/ath6kl/wmi.h
+++ b/drivers/net/wireless/ath/ath6kl/wmi.h
@@ -2218,6 +2218,9 @@ int ath6kl_wmi_info_req_cmd(struct wmi *wmi, u32 info_req_flags);
2218 2218
2219int ath6kl_wmi_cancel_remain_on_chnl_cmd(struct wmi *wmi); 2219int ath6kl_wmi_cancel_remain_on_chnl_cmd(struct wmi *wmi);
2220 2220
2221int ath6kl_wmi_set_appie_cmd(struct wmi *wmi, u8 mgmt_frm_type, const u8 *ie,
2222 u8 ie_len);
2223
2221void *ath6kl_wmi_init(struct ath6kl *devt); 2224void *ath6kl_wmi_init(struct ath6kl *devt);
2222void ath6kl_wmi_shutdown(struct wmi *wmi); 2225void ath6kl_wmi_shutdown(struct wmi *wmi);
2223 2226