mwifiex: verbose logging for association failure messages
This patch adds more detailed information about association failures - reason and states. Signed-off-by: Avinash Patil <patila@marvell.com> Signed-off-by: Cathy Luo <cluo@marvell.com> Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
This commit is contained in:
parent
300f77c08d
commit
12d1110974
@ -419,8 +419,12 @@ enum P2P_MODES {
|
||||
#define HS_CFG_COND_MAC_EVENT 0x00000004
|
||||
#define HS_CFG_COND_MULTICAST_DATA 0x00000008
|
||||
|
||||
#define MWIFIEX_TIMEOUT_FOR_AP_RESP 0xfffc
|
||||
#define MWIFIEX_STATUS_CODE_AUTH_TIMEOUT 2
|
||||
#define CONNECT_ERR_AUTH_ERR_STA_FAILURE 0xFFFB
|
||||
#define CONNECT_ERR_ASSOC_ERR_TIMEOUT 0xFFFC
|
||||
#define CONNECT_ERR_ASSOC_ERR_AUTH_REFUSED 0xFFFD
|
||||
#define CONNECT_ERR_AUTH_MSG_UNHANDLED 0xFFFE
|
||||
#define CONNECT_ERR_STA_FAILURE 0xFFFF
|
||||
|
||||
|
||||
#define CMD_F_HOSTCMD (1 << 0)
|
||||
#define CMD_F_CANCELED (1 << 1)
|
||||
@ -1151,6 +1155,13 @@ enum SNMP_MIB_INDEX {
|
||||
DOT11H_I = 10,
|
||||
};
|
||||
|
||||
enum mwifiex_assocmd_failurepoint {
|
||||
MWIFIEX_ASSOC_CMD_SUCCESS = 0,
|
||||
MWIFIEX_ASSOC_CMD_FAILURE_ASSOC,
|
||||
MWIFIEX_ASSOC_CMD_FAILURE_AUTH,
|
||||
MWIFIEX_ASSOC_CMD_FAILURE_JOIN
|
||||
};
|
||||
|
||||
#define MAX_SNMP_BUF_SIZE 128
|
||||
|
||||
struct host_cmd_ds_802_11_snmp_mib {
|
||||
|
@ -556,6 +556,23 @@ int mwifiex_cmd_802_11_associate(struct mwifiex_private *priv,
|
||||
return 0;
|
||||
}
|
||||
|
||||
static const char *assoc_failure_reason_to_str(u16 cap_info)
|
||||
{
|
||||
switch (cap_info) {
|
||||
case CONNECT_ERR_AUTH_ERR_STA_FAILURE:
|
||||
return "CONNECT_ERR_AUTH_ERR_STA_FAILURE";
|
||||
case CONNECT_ERR_AUTH_MSG_UNHANDLED:
|
||||
return "CONNECT_ERR_AUTH_MSG_UNHANDLED";
|
||||
case CONNECT_ERR_ASSOC_ERR_TIMEOUT:
|
||||
return "CONNECT_ERR_ASSOC_ERR_TIMEOUT";
|
||||
case CONNECT_ERR_ASSOC_ERR_AUTH_REFUSED:
|
||||
return "CONNECT_ERR_ASSOC_ERR_AUTH_REFUSED";
|
||||
case CONNECT_ERR_STA_FAILURE:
|
||||
return "CONNECT_ERR_STA_FAILURE";
|
||||
}
|
||||
|
||||
return "Unknown connect failure";
|
||||
}
|
||||
/*
|
||||
* Association firmware command response handler
|
||||
*
|
||||
@ -656,11 +673,18 @@ int mwifiex_ret_802_11_associate(struct mwifiex_private *priv,
|
||||
status_code, cap_info,
|
||||
le16_to_cpu(assoc_rsp->a_id));
|
||||
|
||||
if (cap_info == MWIFIEX_TIMEOUT_FOR_AP_RESP) {
|
||||
if (status_code == MWIFIEX_STATUS_CODE_AUTH_TIMEOUT)
|
||||
mwifiex_dbg(priv->adapter, ERROR, "assoc failure: reason %s\n",
|
||||
assoc_failure_reason_to_str(cap_info));
|
||||
if (cap_info == CONNECT_ERR_ASSOC_ERR_TIMEOUT) {
|
||||
if (status_code == MWIFIEX_ASSOC_CMD_FAILURE_AUTH) {
|
||||
ret = WLAN_STATUS_AUTH_TIMEOUT;
|
||||
else
|
||||
mwifiex_dbg(priv->adapter, ERROR,
|
||||
"ASSOC_RESP: AUTH timeout\n");
|
||||
} else {
|
||||
ret = WLAN_STATUS_UNSPECIFIED_FAILURE;
|
||||
mwifiex_dbg(priv->adapter, ERROR,
|
||||
"ASSOC_RESP: UNSPECIFIED failure\n");
|
||||
}
|
||||
} else {
|
||||
ret = status_code;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user