aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/nl80211.h
diff options
context:
space:
mode:
authorLuciano Coelho <coelho@ti.com>2011-05-11 10:09:35 -0400
committerJohn W. Linville <linville@tuxdriver.com>2011-05-11 15:12:26 -0400
commit807f8a8c300435d5483e8d78df9dcdbc27333166 (patch)
tree1537d40e149d7a8712fe63d17ea3b51093bf03a1 /include/linux/nl80211.h
parent6bdbdbf4a151a3a1333818cd17a7d7795e936041 (diff)
cfg80211/nl80211: add support for scheduled scans
Implement new functionality for scheduled scan offload. With this feature we can scan automatically at certain intervals. The idea is that the hardware can perform scan automatically and filter on desired results without waking up the host unnecessarily. Add NL80211_CMD_START_SCHED_SCAN and NL80211_CMD_STOP_SCHED_SCAN commands to the nl80211 interface. When results are available they are reported by NL80211_CMD_SCHED_SCAN_RESULTS events. The userspace is informed when the scheduled scan has stopped with a NL80211_CMD_SCHED_SCAN_STOPPED event, which can be triggered either by the driver or by a call to NL80211_CMD_STOP_SCHED_SCAN. Signed-off-by: Luciano Coelho <coelho@ti.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'include/linux/nl80211.h')
-rw-r--r--include/linux/nl80211.h25
1 files changed, 25 insertions, 0 deletions
diff --git a/include/linux/nl80211.h b/include/linux/nl80211.h
index de96783954a1..f8b5595ba4af 100644
--- a/include/linux/nl80211.h
+++ b/include/linux/nl80211.h
@@ -203,6 +203,26 @@
203 * @NL80211_CMD_SCAN_ABORTED: scan was aborted, for unspecified reasons, 203 * @NL80211_CMD_SCAN_ABORTED: scan was aborted, for unspecified reasons,
204 * partial scan results may be available 204 * partial scan results may be available
205 * 205 *
206 * @NL80211_CMD_START_SCHED_SCAN: start a scheduled scan. Like with normal
207 * scans, if SSIDs (%NL80211_ATTR_SCAN_SSIDS) are passed, they are used
208 * in the probe requests. For broadcast, a broadcast SSID must be
209 * passed (ie. an empty string). If no SSID is passed, no probe
210 * requests are sent and a passive scan is performed.
211 * %NL80211_ATTR_SCAN_FREQUENCIES, if passed, define which channels
212 * should be scanned; if not passed, all channels allowed for the
213 * current regulatory domain are used. Extra IEs can also be passed
214 * from the userspace by using the %NL80211_ATTR_IE attribute.
215 * @NL80211_CMD_STOP_SCHED_SCAN: stop a scheduled scan
216 * @NL80211_CMD_SCHED_SCAN_RESULTS: indicates that there are scheduled scan
217 * results available.
218 * @NL80211_CMD_SCHED_SCAN_STOPPED: indicates that the scheduled scan has
219 * stopped. The driver may issue this event at any time during a
220 * scheduled scan. One reason for stopping the scan is if the hardware
221 * does not support starting an association or a normal scan while running
222 * a scheduled scan. This event is also sent when the
223 * %NL80211_CMD_STOP_SCHED_SCAN command is received or when the interface
224 * is brought down while a scheduled scan was running.
225 *
206 * @NL80211_CMD_GET_SURVEY: get survey resuls, e.g. channel occupation 226 * @NL80211_CMD_GET_SURVEY: get survey resuls, e.g. channel occupation
207 * or noise level 227 * or noise level
208 * @NL80211_CMD_NEW_SURVEY_RESULTS: survey data notification (as a reply to 228 * @NL80211_CMD_NEW_SURVEY_RESULTS: survey data notification (as a reply to
@@ -545,6 +565,11 @@ enum nl80211_commands {
545 NL80211_CMD_GET_WOWLAN, 565 NL80211_CMD_GET_WOWLAN,
546 NL80211_CMD_SET_WOWLAN, 566 NL80211_CMD_SET_WOWLAN,
547 567
568 NL80211_CMD_START_SCHED_SCAN,
569 NL80211_CMD_STOP_SCHED_SCAN,
570 NL80211_CMD_SCHED_SCAN_RESULTS,
571 NL80211_CMD_SCHED_SCAN_STOPPED,
572
548 /* add new commands above here */ 573 /* add new commands above here */
549 574
550 /* used to define NL80211_CMD_MAX below */ 575 /* used to define NL80211_CMD_MAX below */