Introduce QCA_NL80211_VENDOR_SUBCMD_HANG
This is an event indicating to the user space that the driver has detected an internal failure. The driver is expected to recover from such a failure automatically, e.g., by resetting the device. This event carries the information indicating the reason that triggered this detection. Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com>
This commit is contained in:
parent
96fa53f911
commit
cf39475b40
1 changed files with 54 additions and 0 deletions
|
@ -332,6 +332,12 @@ enum qca_radiotap_vendor_ids {
|
||||||
* These scan parameters shall be reset by the driver/firmware once
|
* These scan parameters shall be reset by the driver/firmware once
|
||||||
* disconnected. The attributes used with this command are defined in
|
* disconnected. The attributes used with this command are defined in
|
||||||
* enum qca_wlan_vendor_attr_active_tos.
|
* enum qca_wlan_vendor_attr_active_tos.
|
||||||
|
*
|
||||||
|
* @QCA_NL80211_VENDOR_SUBCMD_HANG: Event indicating to the user space that the
|
||||||
|
* driver has detected an internal failure. This event carries the
|
||||||
|
* information indicating the reason that triggered this detection. The
|
||||||
|
* attributes for this command are defined in
|
||||||
|
* enum qca_wlan_vendor_attr_hang.
|
||||||
*/
|
*/
|
||||||
enum qca_nl80211_vendor_subcmds {
|
enum qca_nl80211_vendor_subcmds {
|
||||||
QCA_NL80211_VENDOR_SUBCMD_UNSPEC = 0,
|
QCA_NL80211_VENDOR_SUBCMD_UNSPEC = 0,
|
||||||
|
@ -463,6 +469,7 @@ enum qca_nl80211_vendor_subcmds {
|
||||||
QCA_NL80211_VENDOR_SUBCMD_SPECTRAL_SCAN_START = 154,
|
QCA_NL80211_VENDOR_SUBCMD_SPECTRAL_SCAN_START = 154,
|
||||||
QCA_NL80211_VENDOR_SUBCMD_SPECTRAL_SCAN_STOP = 155,
|
QCA_NL80211_VENDOR_SUBCMD_SPECTRAL_SCAN_STOP = 155,
|
||||||
QCA_NL80211_VENDOR_SUBCMD_ACTIVE_TOS = 156,
|
QCA_NL80211_VENDOR_SUBCMD_ACTIVE_TOS = 156,
|
||||||
|
QCA_NL80211_VENDOR_SUBCMD_HANG = 157,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
@ -3868,4 +3875,51 @@ enum qca_wlan_vendor_attr_active_tos {
|
||||||
QCA_WLAN_VENDOR_ATTR_ACTIVE_TOS_START = 2,
|
QCA_WLAN_VENDOR_ATTR_ACTIVE_TOS_START = 2,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
enum qca_wlan_vendor_hang_reason {
|
||||||
|
/* Unspecified reason */
|
||||||
|
QCA_WLAN_HANG_REASON_UNSPECIFIED = 0,
|
||||||
|
/* No Map for the MAC entry for the received frame */
|
||||||
|
QCA_WLAN_HANG_RX_HASH_NO_ENTRY_FOUND = 1,
|
||||||
|
/* Peer deletion timeout happened */
|
||||||
|
QCA_WLAN_HANG_PEER_DELETION_TIMEDOUT = 2,
|
||||||
|
/* Peer unmap timeout */
|
||||||
|
QCA_WLAN_HANG_PEER_UNMAP_TIMEDOUT = 3,
|
||||||
|
/* Scan request timed out */
|
||||||
|
QCA_WLAN_HANG_SCAN_REQ_EXPIRED = 4,
|
||||||
|
/* Consecutive Scan attempt failures */
|
||||||
|
QCA_WLAN_HANG_SCAN_ATTEMPT_FAILURES = 5,
|
||||||
|
/* Unable to get the message buffer */
|
||||||
|
QCA_WLAN_HANG_GET_MSG_BUFF_FAILURE = 6,
|
||||||
|
/* Current command processing is timedout */
|
||||||
|
QCA_WLAN_HANG_ACTIVE_LIST_TIMEOUT = 7,
|
||||||
|
/* Timeout for an ACK from FW for suspend request */
|
||||||
|
QCA_WLAN_HANG_SUSPEND_TIMEOUT = 8,
|
||||||
|
/* Timeout for an ACK from FW for resume request */
|
||||||
|
QCA_WLAN_HANG_RESUME_TIMEOUT = 9,
|
||||||
|
/* Transmission timeout for consecutive data frames */
|
||||||
|
QCA_WLAN_HANG_TRANSMISSIONS_TIMEOUT = 10,
|
||||||
|
/* Timeout for the TX completion status of data frame */
|
||||||
|
QCA_WLAN_HANG_TX_COMPLETE_TIMEOUT = 11,
|
||||||
|
/* DXE failure for TX/RX, DXE resource unavailability */
|
||||||
|
QCA_WLAN_HANG_DXE_FAILURE = 12,
|
||||||
|
/* WMI pending commands exceed the maximum count */
|
||||||
|
QCA_WLAN_HANG_WMI_EXCEED_MAX_PENDING_CMDS = 13,
|
||||||
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* enum qca_wlan_vendor_attr_hang - Used by the vendor command
|
||||||
|
* QCA_NL80211_VENDOR_SUBCMD_HANG.
|
||||||
|
*/
|
||||||
|
enum qca_wlan_vendor_attr_hang {
|
||||||
|
QCA_WLAN_VENDOR_ATTR_HANG_INVALID = 0,
|
||||||
|
/* Reason for the hang - u32 attribute with a value from enum
|
||||||
|
* qca_wlan_vendor_hang_reason.
|
||||||
|
*/
|
||||||
|
QCA_WLAN_VENDOR_ATTR_HANG_REASON = 1,
|
||||||
|
|
||||||
|
QCA_WLAN_VENDOR_ATTR_HANG_AFTER_LAST,
|
||||||
|
QCA_WLAN_VENDOR_ATTR_HANG_MAX =
|
||||||
|
QCA_WLAN_VENDOR_ATTR_HANG_AFTER_LAST - 1,
|
||||||
|
};
|
||||||
|
|
||||||
#endif /* QCA_VENDOR_H */
|
#endif /* QCA_VENDOR_H */
|
||||||
|
|
Loading…
Add table
Reference in a new issue