aboutsummaryrefslogtreecommitdiffstats
path: root/include/uapi/linux
diff options
context:
space:
mode:
authorSimon Wunderlich <simon.wunderlich@s2003.tu-chemnitz.de>2013-07-11 10:09:05 -0400
committerJohannes Berg <johannes.berg@intel.com>2013-08-01 12:30:28 -0400
commit16ef1fe272332b2f7fd99236017b891db48d9cd6 (patch)
tree95b7a750ade214349282f1858ac44640890fce9c /include/uapi/linux
parent7cf1f14ecf1f5025abb0e30e22e8f7ad219fa32e (diff)
nl80211/cfg80211: add channel switch command
To allow channel switch announcements within beacons, add the channel switch command to nl80211/cfg80211. This is implementation is intended for AP and (later) IBSS mode. Signed-off-by: Simon Wunderlich <siwu@hrz.tu-chemnitz.de> Signed-off-by: Mathias Kretschmer <mathias.kretschmer@fokus.fraunhofer.de> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'include/uapi/linux')
-rw-r--r--include/uapi/linux/nl80211.h30
1 files changed, 30 insertions, 0 deletions
diff --git a/include/uapi/linux/nl80211.h b/include/uapi/linux/nl80211.h
index eb68735b3318..1f42bc3dcb9c 100644
--- a/include/uapi/linux/nl80211.h
+++ b/include/uapi/linux/nl80211.h
@@ -676,6 +676,16 @@
676 * @NL80211_CMD_GET_COALESCE: Get currently supported coalesce rules. 676 * @NL80211_CMD_GET_COALESCE: Get currently supported coalesce rules.
677 * @NL80211_CMD_SET_COALESCE: Configure coalesce rules or clear existing rules. 677 * @NL80211_CMD_SET_COALESCE: Configure coalesce rules or clear existing rules.
678 * 678 *
679 * @NL80211_CMD_CHANNEL_SWITCH: Perform a channel switch by announcing the
680 * the new channel information (Channel Switch Announcement - CSA)
681 * in the beacon for some time (as defined in the
682 * %NL80211_ATTR_CH_SWITCH_COUNT parameter) and then change to the
683 * new channel. Userspace provides the new channel information (using
684 * %NL80211_ATTR_WIPHY_FREQ and the attributes determining channel
685 * width). %NL80211_ATTR_CH_SWITCH_BLOCK_TX may be supplied to inform
686 * other station that transmission must be blocked until the channel
687 * switch is complete.
688 *
679 * @NL80211_CMD_MAX: highest used command number 689 * @NL80211_CMD_MAX: highest used command number
680 * @__NL80211_CMD_AFTER_LAST: internal use 690 * @__NL80211_CMD_AFTER_LAST: internal use
681 */ 691 */
@@ -841,6 +851,8 @@ enum nl80211_commands {
841 NL80211_CMD_GET_COALESCE, 851 NL80211_CMD_GET_COALESCE,
842 NL80211_CMD_SET_COALESCE, 852 NL80211_CMD_SET_COALESCE,
843 853
854 NL80211_CMD_CHANNEL_SWITCH,
855
844 /* add new commands above here */ 856 /* add new commands above here */
845 857
846 /* used to define NL80211_CMD_MAX below */ 858 /* used to define NL80211_CMD_MAX below */
@@ -1469,6 +1481,18 @@ enum nl80211_commands {
1469 * 1481 *
1470 * @NL80211_ATTR_COALESCE_RULE: Coalesce rule information. 1482 * @NL80211_ATTR_COALESCE_RULE: Coalesce rule information.
1471 * 1483 *
1484 * @NL80211_ATTR_CH_SWITCH_COUNT: u32 attribute specifying the number of TBTT's
1485 * until the channel switch event.
1486 * @NL80211_ATTR_CH_SWITCH_BLOCK_TX: flag attribute specifying that transmission
1487 * must be blocked on the current channel (before the channel switch
1488 * operation).
1489 * @NL80211_ATTR_CSA_IES: Nested set of attributes containing the IE information
1490 * for the time while performing a channel switch.
1491 * @NL80211_ATTR_CSA_C_OFF_BEACON: Offset of the channel switch counter
1492 * field in the beacons tail (%NL80211_ATTR_BEACON_TAIL).
1493 * @NL80211_ATTR_CSA_C_OFF_PRESP: Offset of the channel switch counter
1494 * field in the probe response (%NL80211_ATTR_PROBE_RESP).
1495 *
1472 * @NL80211_ATTR_MAX: highest attribute number currently defined 1496 * @NL80211_ATTR_MAX: highest attribute number currently defined
1473 * @__NL80211_ATTR_AFTER_LAST: internal use 1497 * @__NL80211_ATTR_AFTER_LAST: internal use
1474 */ 1498 */
@@ -1771,6 +1795,12 @@ enum nl80211_attrs {
1771 1795
1772 NL80211_ATTR_COALESCE_RULE, 1796 NL80211_ATTR_COALESCE_RULE,
1773 1797
1798 NL80211_ATTR_CH_SWITCH_COUNT,
1799 NL80211_ATTR_CH_SWITCH_BLOCK_TX,
1800 NL80211_ATTR_CSA_IES,
1801 NL80211_ATTR_CSA_C_OFF_BEACON,
1802 NL80211_ATTR_CSA_C_OFF_PRESP,
1803
1774 /* add attributes here, update the policy in nl80211.c */ 1804 /* add attributes here, update the policy in nl80211.c */
1775 1805
1776 __NL80211_ATTR_AFTER_LAST, 1806 __NL80211_ATTR_AFTER_LAST,