History

cfg80211: implement APIs for dedicated radar detection HW

If a dedicated (off-channel) radar detection hardware (chain) is available in the hardware/driver, allow this to be used by calling the NL80211_CMD_RADAR_DETECT command with a new flag attribute requesting off-channel radar detection is used. Offchannel CAC (channel availability check) avoids the CAC downtime when switching to a radar channel or when turning on the AP. Drivers advertise support for this using the new feature flag NL80211_EXT_FEATURE_RADAR_OFFCHAN.

Lorenzo Bianconi committed 5 years ago

Commit bc2dfc01 parent 3b1abcf8 files · +214 −6Browse files

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

Unified · Split

include/uapi/linux/nl80211.h+13−0
@@ -2639,6 +2639,13 @@ enum nl80211_commands { · 2638 unmodified lines
2639 * Mandatory parameter for the transmitting interface to enable MBSSID.2639 * Mandatory parameter for the transmitting interface to enable MBSSID.
2640 * Optional for the non-transmitting interfaces.2640 * Optional for the non-transmitting interfaces.
2641 *2641 *
2642 * @NL80211_ATTR_RADAR_OFFCHAN: Configure dedicated offchannel chain available for
2643 * radar/CAC detection on some hw. This chain can't be used to transmit
2644 * or receive frames and it is bounded to a running wdev.
2645 * Offchannel radar/CAC detection allows to avoid the CAC downtime
2646 * switching on a different channel during CAC detection on the selected
2647 * radar channel.
2648 *
2642 * @NUM_NL80211_ATTR: total number of nl80211_attrs available2649 * @NUM_NL80211_ATTR: total number of nl80211_attrs available
2643 * @NL80211_ATTR_MAX: highest attribute number currently defined2650 * @NL80211_ATTR_MAX: highest attribute number currently defined
2644 * @__NL80211_ATTR_AFTER_LAST: internal use2651 * @__NL80211_ATTR_AFTER_LAST: internal use
@@ -3145,6 +3152,8 @@ enum nl80211_attrs { · 500 unmodified lines
3145 NL80211_ATTR_MBSSID_CONFIG,3152 NL80211_ATTR_MBSSID_CONFIG,
3146 NL80211_ATTR_MBSSID_ELEMS,3153 NL80211_ATTR_MBSSID_ELEMS,
3147 3154
3155 NL80211_ATTR_RADAR_OFFCHAN,
3156
3148 /* add attributes here, update the policy in nl80211.c */3157 /* add attributes here, update the policy in nl80211.c */
3149 3158
3150 __NL80211_ATTR_AFTER_LAST,3159 __NL80211_ATTR_AFTER_LAST,
@@ -6051,6 +6060,9 @@ enum nl80211_feature_flags { · 2900 unmodified lines
6051 * frames. Userspace has to share FILS AAD details to the driver by using6060 * frames. Userspace has to share FILS AAD details to the driver by using
6052 * @NL80211_CMD_SET_FILS_AAD.6061 * @NL80211_CMD_SET_FILS_AAD.
6053 *6062 *
6063 * @NL80211_EXT_FEATURE_RADAR_OFFCHAN: Device supports offchannel radar/CAC
6064 * detection.
6065 *
6054 * @NUM_NL80211_EXT_FEATURES: number of extended features.6066 * @NUM_NL80211_EXT_FEATURES: number of extended features.
6055 * @MAX_NL80211_EXT_FEATURES: highest extended feature index.6067 * @MAX_NL80211_EXT_FEATURES: highest extended feature index.
6056 */6068 */
@@ -6117,6 +6129,7 @@ enum nl80211_ext_feature_index { · 60 unmodified lines
6117 NL80211_EXT_FEATURE_PROT_RANGE_NEGO_AND_MEASURE,6129 NL80211_EXT_FEATURE_PROT_RANGE_NEGO_AND_MEASURE,
6118 NL80211_EXT_FEATURE_BSS_COLOR,6130 NL80211_EXT_FEATURE_BSS_COLOR,
6119 NL80211_EXT_FEATURE_FILS_CRYPTO_OFFLOAD,6131 NL80211_EXT_FEATURE_FILS_CRYPTO_OFFLOAD,
6132 NL80211_EXT_FEATURE_RADAR_OFFCHAN,
6120 6133
6121 /* add new features before the definition below */6134 /* add new features before the definition below */
6122 NUM_NL80211_EXT_FEATURES,6135 NUM_NL80211_EXT_FEATURES,