diff options
| author | Simon Wunderlich <simon.wunderlich@s2003.tu-chemnitz.de> | 2013-07-11 10:09:05 -0400 |
|---|---|---|
| committer | Johannes Berg <johannes.berg@intel.com> | 2013-08-01 12:30:28 -0400 |
| commit | 16ef1fe272332b2f7fd99236017b891db48d9cd6 (patch) | |
| tree | 95b7a750ade214349282f1858ac44640890fce9c /include/uapi/linux | |
| parent | 7cf1f14ecf1f5025abb0e30e22e8f7ad219fa32e (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.h | 30 |
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, |
