History

nl80211: advertise HT/VHT channel limitations

When drivers or regulatory have limitations on 40, 80 or 160 MHz channels, advertise these to userspace via nl80211. Also add a new feature flag to let userspace know this is supported.

Johannes Berg committed 13 years ago

Commit 50640f11 parent c7a6ee23 files · +31 −1Browse files

Showing the changes to include/uapi/linux (1 of 3 files). Show all

Unified · Split

include/uapi/linux/nl80211.h+17−0
@@ -2041,6 +2041,16 @@ enum nl80211_band_attr { · 2040 unmodified lines
2041 * (enum nl80211_dfs_state)2041 * (enum nl80211_dfs_state)
2042 * @NL80211_FREQUENCY_ATTR_DFS_TIME: time in miliseconds for how long2042 * @NL80211_FREQUENCY_ATTR_DFS_TIME: time in miliseconds for how long
2043 * this channel is in this DFS state.2043 * this channel is in this DFS state.
2044 * @NL80211_FREQUENCY_ATTR_NO_HT40_MINUS: HT40- isn't possible with this
2045 * channel as the control channel
2046 * @NL80211_FREQUENCY_ATTR_NO_HT40_PLUS: HT40+ isn't possible with this
2047 * channel as the control channel
2048 * @NL80211_FREQUENCY_ATTR_NO_80MHZ: any 80 MHz channel using this channel
2049 * as the primary or any of the secondary channels isn't possible,
2050 * this includes 80+80 channels
2051 * @NL80211_FREQUENCY_ATTR_NO_160MHZ: any 160 MHz (but not 80+80) channel
2052 * using this channel as the primary or any of the secondary channels
2053 * isn't possible
2044 * @NL80211_FREQUENCY_ATTR_MAX: highest frequency attribute number2054 * @NL80211_FREQUENCY_ATTR_MAX: highest frequency attribute number
2045 * currently defined2055 * currently defined
2046 * @__NL80211_FREQUENCY_ATTR_AFTER_LAST: internal use2056 * @__NL80211_FREQUENCY_ATTR_AFTER_LAST: internal use
@@ -2055,6 +2065,10 @@ enum nl80211_frequency_attr { · 8 unmodified lines
2055 NL80211_FREQUENCY_ATTR_MAX_TX_POWER,2065 NL80211_FREQUENCY_ATTR_MAX_TX_POWER,
2056 NL80211_FREQUENCY_ATTR_DFS_STATE,2066 NL80211_FREQUENCY_ATTR_DFS_STATE,
2057 NL80211_FREQUENCY_ATTR_DFS_TIME,2067 NL80211_FREQUENCY_ATTR_DFS_TIME,
2068 NL80211_FREQUENCY_ATTR_NO_HT40_MINUS,
2069 NL80211_FREQUENCY_ATTR_NO_HT40_PLUS,
2070 NL80211_FREQUENCY_ATTR_NO_80MHZ,
2071 NL80211_FREQUENCY_ATTR_NO_160MHZ,
2058 2072
2059 /* keep last */2073 /* keep last */
2060 __NL80211_FREQUENCY_ATTR_AFTER_LAST,2074 __NL80211_FREQUENCY_ATTR_AFTER_LAST,
@@ -3421,6 +3435,8 @@ enum nl80211_ap_sme_features { · 1360 unmodified lines
3421 * Note that even for drivers that support this, the default is to add3435 * Note that even for drivers that support this, the default is to add
3422 * stations in authenticated/associated state, so to add unauthenticated3436 * stations in authenticated/associated state, so to add unauthenticated
3423 * stations the authenticated/associated bits have to be set in the mask.3437 * stations the authenticated/associated bits have to be set in the mask.
3438 * @NL80211_FEATURE_ADVERTISE_CHAN_LIMITS: cfg80211 advertises channel limits
3439 * (HT40, VHT 80/160 MHz) if this flag is set
3424 */3440 */
3425enum nl80211_feature_flags {3441enum nl80211_feature_flags {
3426 NL80211_FEATURE_SK_TX_STATUS = 1 << 0,3442 NL80211_FEATURE_SK_TX_STATUS = 1 << 0,
@@ -3437,6 +3453,7 @@ enum nl80211_feature_flags { · 10 unmodified lines
3437 NL80211_FEATURE_P2P_GO_CTWIN = 1 << 11,3453 NL80211_FEATURE_P2P_GO_CTWIN = 1 << 11,
3438 NL80211_FEATURE_P2P_GO_OPPPS = 1 << 12,3454 NL80211_FEATURE_P2P_GO_OPPPS = 1 << 12,
3439 NL80211_FEATURE_FULL_AP_CLIENT_STATE = 1 << 13,3455 NL80211_FEATURE_FULL_AP_CLIENT_STATE = 1 << 13,
3456 NL80211_FEATURE_ADVERTISE_CHAN_LIMITS = 1 << 14,
3440};3457};
3441 3458
3442/**3459/**

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t