History

cfg80211: add extensible feature flag attribute

With the wiphy::features flag being used up this patch adds a new field wiphy::ext_features. Considering extensibility this new field is declared as a byte array. This extensible flag is exposed to user-space by NL80211_ATTR_EXT_FEATURES.

Gautam Kumar Shukla committed 11 years ago

Commit d75bb061 parent 1803f593 files · +66 −0Browse files

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

Unified · Split

include/uapi/linux/nl80211.h+22−0
@@ -1713,6 +1713,13 @@ enum nl80211_commands { · 1712 unmodified lines
1713 * obtained from it is coming from the device's wiphy and not the global1713 * obtained from it is coming from the device's wiphy and not the global
1714 * cfg80211 regdomain.1714 * cfg80211 regdomain.
1715 *1715 *
1716 * @NL80211_ATTR_EXT_FEATURES: extended feature flags contained in a byte
1717 * array. The feature flags are identified by their bit index (see &enum
1718 * nl80211_ext_feature_index). The bit index is ordered starting at the
1719 * least-significant bit of the first byte in the array, ie. bit index 0
1720 * is located at bit 0 of byte 0. bit index 25 would be located at bit 1
1721 * of byte 3 (u8 array).
1722 *
1716 * @NUM_NL80211_ATTR: total number of nl80211_attrs available1723 * @NUM_NL80211_ATTR: total number of nl80211_attrs available
1717 * @NL80211_ATTR_MAX: highest attribute number currently defined1724 * @NL80211_ATTR_MAX: highest attribute number currently defined
1718 * @__NL80211_ATTR_AFTER_LAST: internal use1725 * @__NL80211_ATTR_AFTER_LAST: internal use
@@ -2072,6 +2079,8 @@ enum nl80211_attrs { · 353 unmodified lines
2072 2079
2073 NL80211_ATTR_WIPHY_SELF_MANAGED_REG,2080 NL80211_ATTR_WIPHY_SELF_MANAGED_REG,
2074 2081
2082 NL80211_ATTR_EXT_FEATURES,
2083
2075 /* add attributes here, update the policy in nl80211.c */2084 /* add attributes here, update the policy in nl80211.c */
2076 2085
2077 __NL80211_ATTR_AFTER_LAST,2086 __NL80211_ATTR_AFTER_LAST,
@@ -4223,6 +4232,19 @@ enum nl80211_feature_flags { · 2145 unmodified lines
4223 NL80211_FEATURE_ND_RANDOM_MAC_ADDR = 1 << 31,4232 NL80211_FEATURE_ND_RANDOM_MAC_ADDR = 1 << 31,
4224};4233};
4225 4234
4235/**
4236 * enum nl80211_ext_feature_index - bit index of extended features.
4237 *
4238 * @NUM_NL80211_EXT_FEATURES: number of extended features.
4239 * @MAX_NL80211_EXT_FEATURES: highest extended feature index.
4240 */
4241enum nl80211_ext_feature_index {
4242
4243 /* add new features before the definition below */
4244 NUM_NL80211_EXT_FEATURES,
4245 MAX_NL80211_EXT_FEATURES = NUM_NL80211_EXT_FEATURES - 1
4246};
4247
4226/**4248/**
4227 * enum nl80211_probe_resp_offload_support_attr - optional supported4249 * enum nl80211_probe_resp_offload_support_attr - optional supported
4228 * protocols for probe-response offloading by the driver/FW.4250 * protocols for probe-response offloading by the driver/FW.