nl80211: Allocate QCA vendor subcmds for DFS radar detected and CAC events
When DFS offloading capability is supported by the driver, the driver should use these events to indicate when a radar pattern has been detected, channel availability check (CAC) has been completed, aborted or finished after the non-occupancy period is over on a DFS channel. Also, add a new driver.h event to be used by NL80211 to indicate CAC Started event on a DFS channel. Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com>
This commit is contained in:
parent
f245b45075
commit
480994dafb
3 changed files with 38 additions and 7 deletions
|
@ -70,8 +70,25 @@ enum qca_radiotap_vendor_ids {
|
|||
* supported by the driver. enum qca_wlan_vendor_features defines
|
||||
* the possible features.
|
||||
*
|
||||
* @QCA_NL80211_VENDOR_SUBCMD_CAC_STARTED: Event used by driver, which
|
||||
* supports DFS offloading, to indicate a channel availability check start.
|
||||
* @QCA_NL80211_VENDOR_SUBCMD_DFS_OFFLOAD_CAC_STARTED: Event used by driver,
|
||||
* which supports DFS offloading, to indicate a channel availability check
|
||||
* start.
|
||||
*
|
||||
* @QCA_NL80211_VENDOR_SUBCMD_DFS_OFFLOAD_CAC_FINISHED: Event used by driver,
|
||||
* which supports DFS offloading, to indicate a channel availability check
|
||||
* completion.
|
||||
*
|
||||
* @QCA_NL80211_VENDOR_SUBCMD_DFS_OFFLOAD_CAC_ABORTED: Event used by driver,
|
||||
* which supports DFS offloading, to indicate that the channel availability
|
||||
* check aborted, no change to the channel status.
|
||||
*
|
||||
* @QCA_NL80211_VENDOR_SUBCMD_DFS_OFFLOAD_CAC_NOP_FINISHED: Event used by
|
||||
* driver, which supports DFS offloading, to indicate that the
|
||||
* Non-Occupancy Period for this channel is over, channel becomes usable.
|
||||
*
|
||||
* @QCA_NL80211_VENDOR_SUBCMD_DFS_OFFLOAD_RADAR_DETECTED: Event used by driver,
|
||||
* which supports DFS offloading, to indicate a radar pattern has been
|
||||
* detected. The channel is now unusable.
|
||||
*/
|
||||
enum qca_nl80211_vendor_subcmds {
|
||||
QCA_NL80211_VENDOR_SUBCMD_UNSPEC = 0,
|
||||
|
@ -118,7 +135,11 @@ enum qca_nl80211_vendor_subcmds {
|
|||
/* 53 - reserved for QCA */
|
||||
QCA_NL80211_VENDOR_SUBCMD_DO_ACS = 54,
|
||||
QCA_NL80211_VENDOR_SUBCMD_GET_FEATURES = 55,
|
||||
QCA_NL80211_VENDOR_SUBCMD_CAC_STARTED = 56,
|
||||
QCA_NL80211_VENDOR_SUBCMD_DFS_OFFLOAD_CAC_STARTED = 56,
|
||||
QCA_NL80211_VENDOR_SUBCMD_DFS_OFFLOAD_CAC_FINISHED = 57,
|
||||
QCA_NL80211_VENDOR_SUBCMD_DFS_OFFLOAD_CAC_ABORTED = 58,
|
||||
QCA_NL80211_VENDOR_SUBCMD_DFS_OFFLOAD_CAC_NOP_FINISHED = 59,
|
||||
QCA_NL80211_VENDOR_SUBCMD_DFS_OFFLOAD_RADAR_DETECTED = 60,
|
||||
};
|
||||
|
||||
|
||||
|
|
|
@ -3763,7 +3763,7 @@ enum wpa_event_type {
|
|||
EVENT_CONNECT_FAILED_REASON,
|
||||
|
||||
/**
|
||||
* EVENT_RADAR_DETECTED - Notify of radar detection
|
||||
* EVENT_DFS_RADAR_DETECTED - Notify of radar detection
|
||||
*
|
||||
* A radar has been detected on the supplied frequency, hostapd should
|
||||
* react accordingly (e.g., change channel).
|
||||
|
@ -3771,14 +3771,14 @@ enum wpa_event_type {
|
|||
EVENT_DFS_RADAR_DETECTED,
|
||||
|
||||
/**
|
||||
* EVENT_CAC_FINISHED - Notify that channel availability check has been completed
|
||||
* EVENT_DFS_CAC_FINISHED - Notify that channel availability check has been completed
|
||||
*
|
||||
* After a successful CAC, the channel can be marked clear and used.
|
||||
*/
|
||||
EVENT_DFS_CAC_FINISHED,
|
||||
|
||||
/**
|
||||
* EVENT_CAC_ABORTED - Notify that channel availability check has been aborted
|
||||
* EVENT_DFS_CAC_ABORTED - Notify that channel availability check has been aborted
|
||||
*
|
||||
* The CAC was not successful, and the channel remains in the previous
|
||||
* state. This may happen due to a radar beeing detected or other
|
||||
|
@ -3787,7 +3787,7 @@ enum wpa_event_type {
|
|||
EVENT_DFS_CAC_ABORTED,
|
||||
|
||||
/**
|
||||
* EVENT_DFS_CAC_NOP_FINISHED - Notify that non-occupancy period is over
|
||||
* EVENT_DFS_NOP_FINISHED - Notify that non-occupancy period is over
|
||||
*
|
||||
* The channel which was previously unavailable is now available again.
|
||||
*/
|
||||
|
@ -3836,6 +3836,15 @@ enum wpa_event_type {
|
|||
* in device.
|
||||
*/
|
||||
EVENT_ACS_CHANNEL_SELECTED,
|
||||
|
||||
/**
|
||||
* EVENT_DFS_CAC_STARTED - Notify that channel availability check has
|
||||
* been started.
|
||||
*
|
||||
* This event indicates that channel availability check has been started
|
||||
* on a DFS frequency by a driver that supports DFS Offload.
|
||||
*/
|
||||
EVENT_DFS_CAC_STARTED,
|
||||
};
|
||||
|
||||
|
||||
|
|
|
@ -79,6 +79,7 @@ const char * event_to_string(enum wpa_event_type event)
|
|||
E2S(AVOID_FREQUENCIES);
|
||||
E2S(NEW_PEER_CANDIDATE);
|
||||
E2S(ACS_CHANNEL_SELECTED);
|
||||
E2S(DFS_CAC_STARTED);
|
||||
}
|
||||
|
||||
return "UNKNOWN";
|
||||
|
|
Loading…
Reference in a new issue