diff options
author | Jouni Malinen <jouni@qca.qualcomm.com> | 2011-08-30 14:57:59 -0400 |
---|---|---|
committer | Kalle Valo <kvalo@qca.qualcomm.com> | 2011-08-31 03:13:01 -0400 |
commit | b84da8c738681b96e7691d985191ebf9ee4a21e8 (patch) | |
tree | 235bf2dda5385c4e4937b5e7625da4612d5cbb1c /drivers/net/wireless/ath/ath6kl | |
parent | f9e5f05cb9c944696def27618215216df59c7c33 (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.c | 11 | ||||
-rw-r--r-- | drivers/net/wireless/ath/ath6kl/wmi.h | 3 |
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 | ||
2219 | int ath6kl_wmi_cancel_remain_on_chnl_cmd(struct wmi *wmi); | 2219 | int ath6kl_wmi_cancel_remain_on_chnl_cmd(struct wmi *wmi); |
2220 | 2220 | ||
2221 | int ath6kl_wmi_set_appie_cmd(struct wmi *wmi, u8 mgmt_frm_type, const u8 *ie, | ||
2222 | u8 ie_len); | ||
2223 | |||
2221 | void *ath6kl_wmi_init(struct ath6kl *devt); | 2224 | void *ath6kl_wmi_init(struct ath6kl *devt); |
2222 | void ath6kl_wmi_shutdown(struct wmi *wmi); | 2225 | void ath6kl_wmi_shutdown(struct wmi *wmi); |
2223 | 2226 | ||