* [PATCH 01/17] mwifiex: verbose logging for association failure messages
[not found] <1432817450-25619-1-git-send-email-patila@marvell.com>
@ 2015-05-28 12:50 ` Avinash Patil
0 siblings, 0 replies; 8+ messages in thread
From: Avinash Patil @ 2015-05-28 12:50 UTC (permalink / raw)
To: linux-wireless; +Cc: akarwar, cluo, huxm, Avinash Patil
This patch adds more logging support for association failure -
reason and states.
Signed-off-by: Avinash Patil <patila@marvell.com>
---
drivers/net/wireless/mwifiex/fw.h | 15 +++++++++++++--
drivers/net/wireless/mwifiex/join.c | 30 +++++++++++++++++++++++++++---
2 files changed, 40 insertions(+), 5 deletions(-)
diff --git a/drivers/net/wireless/mwifiex/fw.h b/drivers/net/wireless/mwifiex/fw.h
index c404390..6a062dd 100644
--- a/drivers/net/wireless/mwifiex/fw.h
+++ b/drivers/net/wireless/mwifiex/fw.h
@@ -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 ASSOC_ERR_AUTH_ERR_STA_FAILURE 0xFFFB
+#define ASSOC_ERR_ASSOC_ERR_TIMEOUT 0xFFFC
+#define ASSOC_ERR_ASSOC_ERR_AUTH_REFUSED 0xFFFD
+#define ASSOC_ERR_AUTH_MSG_UNHANDLED 0xFFFE
+#define ASSOC_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 {
diff --git a/drivers/net/wireless/mwifiex/join.c b/drivers/net/wireless/mwifiex/join.c
index 6208ef1..69a44bb 100644
--- a/drivers/net/wireless/mwifiex/join.c
+++ b/drivers/net/wireless/mwifiex/join.c
@@ -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 ASSOC_ERR_AUTH_ERR_STA_FAILURE:
+ return "ASSOC_ERR_AUTH_ERR_STA_FAILURE";
+ case ASSOC_ERR_AUTH_MSG_UNHANDLED:
+ return "ASSOC_ERR_AUTH_MSG_UNHANDLED";
+ case ASSOC_ERR_ASSOC_ERR_TIMEOUT:
+ return "ASSOC_ERR_ASSOC_ERR_TIMEOUT";
+ case ASSOC_ERR_ASSOC_ERR_AUTH_REFUSED:
+ return "ASSOC_ERR_ASSOC_ERR_AUTH_REFUSED";
+ case ASSOC_ERR_STA_FAILURE:
+ return "ASSOC_ERR_STA_FAILURE";
+ }
+
+ return "Unknown 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 == ASSOC_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;
}
--
1.8.1.4
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [PATCH 01/17] mwifiex: verbose logging for association failure messages
[not found] <1432817552-25866-1-git-send-email-patila@marvell.com>
@ 2015-05-28 12:52 ` Avinash Patil
0 siblings, 0 replies; 8+ messages in thread
From: Avinash Patil @ 2015-05-28 12:52 UTC (permalink / raw)
To: linux-wireless; +Cc: akarwar, cluo, huxm, Avinash Patil
This patch adds more logging support for association failure -
reason and states.
Signed-off-by: Avinash Patil <patila@marvell.com>
---
drivers/net/wireless/mwifiex/fw.h | 15 +++++++++++++--
drivers/net/wireless/mwifiex/join.c | 30 +++++++++++++++++++++++++++---
2 files changed, 40 insertions(+), 5 deletions(-)
diff --git a/drivers/net/wireless/mwifiex/fw.h b/drivers/net/wireless/mwifiex/fw.h
index c404390..6a062dd 100644
--- a/drivers/net/wireless/mwifiex/fw.h
+++ b/drivers/net/wireless/mwifiex/fw.h
@@ -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 ASSOC_ERR_AUTH_ERR_STA_FAILURE 0xFFFB
+#define ASSOC_ERR_ASSOC_ERR_TIMEOUT 0xFFFC
+#define ASSOC_ERR_ASSOC_ERR_AUTH_REFUSED 0xFFFD
+#define ASSOC_ERR_AUTH_MSG_UNHANDLED 0xFFFE
+#define ASSOC_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 {
diff --git a/drivers/net/wireless/mwifiex/join.c b/drivers/net/wireless/mwifiex/join.c
index 6208ef1..69a44bb 100644
--- a/drivers/net/wireless/mwifiex/join.c
+++ b/drivers/net/wireless/mwifiex/join.c
@@ -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 ASSOC_ERR_AUTH_ERR_STA_FAILURE:
+ return "ASSOC_ERR_AUTH_ERR_STA_FAILURE";
+ case ASSOC_ERR_AUTH_MSG_UNHANDLED:
+ return "ASSOC_ERR_AUTH_MSG_UNHANDLED";
+ case ASSOC_ERR_ASSOC_ERR_TIMEOUT:
+ return "ASSOC_ERR_ASSOC_ERR_TIMEOUT";
+ case ASSOC_ERR_ASSOC_ERR_AUTH_REFUSED:
+ return "ASSOC_ERR_ASSOC_ERR_AUTH_REFUSED";
+ case ASSOC_ERR_STA_FAILURE:
+ return "ASSOC_ERR_STA_FAILURE";
+ }
+
+ return "Unknown 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 == ASSOC_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;
}
--
1.8.1.4
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [PATCH 01/17] mwifiex: verbose logging for association failure messages
[not found] <1432817766-26090-1-git-send-email-patila@marvell.com>
@ 2015-05-28 12:55 ` Avinash Patil
0 siblings, 0 replies; 8+ messages in thread
From: Avinash Patil @ 2015-05-28 12:55 UTC (permalink / raw)
To: linux-wireless; +Cc: akarwar, cluo, huxm, Avinash Patil
This patch adds more logging support for association failure -
reason and states.
Signed-off-by: Avinash Patil <patila@marvell.com>
---
drivers/net/wireless/mwifiex/fw.h | 15 +++++++++++++--
drivers/net/wireless/mwifiex/join.c | 30 +++++++++++++++++++++++++++---
2 files changed, 40 insertions(+), 5 deletions(-)
diff --git a/drivers/net/wireless/mwifiex/fw.h b/drivers/net/wireless/mwifiex/fw.h
index c404390..6a062dd 100644
--- a/drivers/net/wireless/mwifiex/fw.h
+++ b/drivers/net/wireless/mwifiex/fw.h
@@ -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 ASSOC_ERR_AUTH_ERR_STA_FAILURE 0xFFFB
+#define ASSOC_ERR_ASSOC_ERR_TIMEOUT 0xFFFC
+#define ASSOC_ERR_ASSOC_ERR_AUTH_REFUSED 0xFFFD
+#define ASSOC_ERR_AUTH_MSG_UNHANDLED 0xFFFE
+#define ASSOC_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 {
diff --git a/drivers/net/wireless/mwifiex/join.c b/drivers/net/wireless/mwifiex/join.c
index 6208ef1..69a44bb 100644
--- a/drivers/net/wireless/mwifiex/join.c
+++ b/drivers/net/wireless/mwifiex/join.c
@@ -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 ASSOC_ERR_AUTH_ERR_STA_FAILURE:
+ return "ASSOC_ERR_AUTH_ERR_STA_FAILURE";
+ case ASSOC_ERR_AUTH_MSG_UNHANDLED:
+ return "ASSOC_ERR_AUTH_MSG_UNHANDLED";
+ case ASSOC_ERR_ASSOC_ERR_TIMEOUT:
+ return "ASSOC_ERR_ASSOC_ERR_TIMEOUT";
+ case ASSOC_ERR_ASSOC_ERR_AUTH_REFUSED:
+ return "ASSOC_ERR_ASSOC_ERR_AUTH_REFUSED";
+ case ASSOC_ERR_STA_FAILURE:
+ return "ASSOC_ERR_STA_FAILURE";
+ }
+
+ return "Unknown 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 == ASSOC_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;
}
--
1.8.1.4
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [PATCH 01/17] mwifiex: verbose logging for association failure messages
[not found] <1432817889-26250-1-git-send-email-patila@marvell.com>
@ 2015-05-28 12:57 ` Avinash Patil
2015-05-28 18:27 ` Joe Perches
2015-05-28 12:57 ` [PATCH 02/17] mwifiex: correct bss_type assignment Avinash Patil
1 sibling, 1 reply; 8+ messages in thread
From: Avinash Patil @ 2015-05-28 12:57 UTC (permalink / raw)
To: linux-wireless; +Cc: akarwar, cluo, huxm, Avinash Patil
This patch adds more logging support for association failure -
reason and states.
Signed-off-by: Avinash Patil <patila@marvell.com>
---
drivers/net/wireless/mwifiex/fw.h | 15 +++++++++++++--
drivers/net/wireless/mwifiex/join.c | 30 +++++++++++++++++++++++++++---
2 files changed, 40 insertions(+), 5 deletions(-)
diff --git a/drivers/net/wireless/mwifiex/fw.h b/drivers/net/wireless/mwifiex/fw.h
index c404390..6a062dd 100644
--- a/drivers/net/wireless/mwifiex/fw.h
+++ b/drivers/net/wireless/mwifiex/fw.h
@@ -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 ASSOC_ERR_AUTH_ERR_STA_FAILURE 0xFFFB
+#define ASSOC_ERR_ASSOC_ERR_TIMEOUT 0xFFFC
+#define ASSOC_ERR_ASSOC_ERR_AUTH_REFUSED 0xFFFD
+#define ASSOC_ERR_AUTH_MSG_UNHANDLED 0xFFFE
+#define ASSOC_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 {
diff --git a/drivers/net/wireless/mwifiex/join.c b/drivers/net/wireless/mwifiex/join.c
index 6208ef1..69a44bb 100644
--- a/drivers/net/wireless/mwifiex/join.c
+++ b/drivers/net/wireless/mwifiex/join.c
@@ -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 ASSOC_ERR_AUTH_ERR_STA_FAILURE:
+ return "ASSOC_ERR_AUTH_ERR_STA_FAILURE";
+ case ASSOC_ERR_AUTH_MSG_UNHANDLED:
+ return "ASSOC_ERR_AUTH_MSG_UNHANDLED";
+ case ASSOC_ERR_ASSOC_ERR_TIMEOUT:
+ return "ASSOC_ERR_ASSOC_ERR_TIMEOUT";
+ case ASSOC_ERR_ASSOC_ERR_AUTH_REFUSED:
+ return "ASSOC_ERR_ASSOC_ERR_AUTH_REFUSED";
+ case ASSOC_ERR_STA_FAILURE:
+ return "ASSOC_ERR_STA_FAILURE";
+ }
+
+ return "Unknown 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 == ASSOC_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;
}
--
1.8.1.4
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [PATCH 02/17] mwifiex: correct bss_type assignment
[not found] <1432817889-26250-1-git-send-email-patila@marvell.com>
2015-05-28 12:57 ` [PATCH 01/17] mwifiex: verbose logging for association failure messages Avinash Patil
@ 2015-05-28 12:57 ` Avinash Patil
1 sibling, 0 replies; 8+ messages in thread
From: Avinash Patil @ 2015-05-28 12:57 UTC (permalink / raw)
To: linux-wireless; +Cc: akarwar, cluo, huxm, Avinash Patil
Correct bss_type assignment in add_virtual_interface.
This would ensure correct operation in multiple station scenarios.
Signed-off-by: Avinash Patil <patila@marvell.com>
---
drivers/net/wireless/mwifiex/cfg80211.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/drivers/net/wireless/mwifiex/cfg80211.c b/drivers/net/wireless/mwifiex/cfg80211.c
index 4eeceda..3a14d3a 100644
--- a/drivers/net/wireless/mwifiex/cfg80211.c
+++ b/drivers/net/wireless/mwifiex/cfg80211.c
@@ -2518,7 +2518,7 @@ struct wireless_dev *mwifiex_add_virtual_intf(struct wiphy *wiphy,
priv->frame_type = MWIFIEX_DATA_FRAME_TYPE_ETH_II;
priv->bss_priority = 0;
priv->bss_role = MWIFIEX_BSS_ROLE_STA;
- priv->bss_num = 0;
+ priv->bss_num = adapter->curr_iface_comb.sta_intf;
break;
case NL80211_IFTYPE_AP:
@@ -2544,7 +2544,7 @@ struct wireless_dev *mwifiex_add_virtual_intf(struct wiphy *wiphy,
priv->bss_priority = 0;
priv->bss_role = MWIFIEX_BSS_ROLE_UAP;
priv->bss_started = 0;
- priv->bss_num = 0;
+ priv->bss_num = adapter->curr_iface_comb.uap_intf;
priv->bss_mode = type;
break;
@@ -2580,7 +2580,7 @@ struct wireless_dev *mwifiex_add_virtual_intf(struct wiphy *wiphy,
priv->bss_priority = MWIFIEX_BSS_ROLE_STA;
priv->bss_role = MWIFIEX_BSS_ROLE_STA;
priv->bss_started = 0;
- priv->bss_num = 0;
+ priv->bss_num = adapter->curr_iface_comb.p2p_intf;
if (mwifiex_cfg80211_init_p2p_client(priv)) {
memset(&priv->wdev, 0, sizeof(priv->wdev));
--
1.8.1.4
^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [PATCH 01/17] mwifiex: verbose logging for association failure messages
2015-05-28 12:57 ` [PATCH 01/17] mwifiex: verbose logging for association failure messages Avinash Patil
@ 2015-05-28 18:27 ` Joe Perches
2015-05-29 9:27 ` Avinash Patil
0 siblings, 1 reply; 8+ messages in thread
From: Joe Perches @ 2015-05-28 18:27 UTC (permalink / raw)
To: Avinash Patil; +Cc: linux-wireless, akarwar, cluo, huxm
On Thu, 2015-05-28 at 18:27 +0530, Avinash Patil wrote:
> This patch adds more logging support for association failure -
> reason and states.
[]
> diff --git a/drivers/net/wireless/mwifiex/fw.h b/drivers/net/wireless/mwifiex/fw.h
[]
> @@ -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 ASSOC_ERR_AUTH_ERR_STA_FAILURE 0xFFFB
> +#define ASSOC_ERR_ASSOC_ERR_TIMEOUT 0xFFFC
> +#define ASSOC_ERR_ASSOC_ERR_AUTH_REFUSED 0xFFFD
Is there really value in duplicating ASSOC_ERR_
ASSOC_ERR_ASSOC_ERR_<foo>
^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH 01/17] mwifiex: verbose logging for association failure messages
2015-05-28 18:28 [PATCH 00/17] mwifiex patches Avinash Patil
@ 2015-05-28 18:28 ` Avinash Patil
0 siblings, 0 replies; 8+ messages in thread
From: Avinash Patil @ 2015-05-28 18:28 UTC (permalink / raw)
To: linux-wireless; +Cc: akarwar, cluo, huxm, Avinash Patil
This patch adds more logging support for association failure -
reason and states.
Signed-off-by: Avinash Patil <patila@marvell.com>
---
drivers/net/wireless/mwifiex/fw.h | 15 +++++++++++++--
drivers/net/wireless/mwifiex/join.c | 30 +++++++++++++++++++++++++++---
2 files changed, 40 insertions(+), 5 deletions(-)
diff --git a/drivers/net/wireless/mwifiex/fw.h b/drivers/net/wireless/mwifiex/fw.h
index c404390..6a062dd 100644
--- a/drivers/net/wireless/mwifiex/fw.h
+++ b/drivers/net/wireless/mwifiex/fw.h
@@ -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 ASSOC_ERR_AUTH_ERR_STA_FAILURE 0xFFFB
+#define ASSOC_ERR_ASSOC_ERR_TIMEOUT 0xFFFC
+#define ASSOC_ERR_ASSOC_ERR_AUTH_REFUSED 0xFFFD
+#define ASSOC_ERR_AUTH_MSG_UNHANDLED 0xFFFE
+#define ASSOC_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 {
diff --git a/drivers/net/wireless/mwifiex/join.c b/drivers/net/wireless/mwifiex/join.c
index 6208ef1..69a44bb 100644
--- a/drivers/net/wireless/mwifiex/join.c
+++ b/drivers/net/wireless/mwifiex/join.c
@@ -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 ASSOC_ERR_AUTH_ERR_STA_FAILURE:
+ return "ASSOC_ERR_AUTH_ERR_STA_FAILURE";
+ case ASSOC_ERR_AUTH_MSG_UNHANDLED:
+ return "ASSOC_ERR_AUTH_MSG_UNHANDLED";
+ case ASSOC_ERR_ASSOC_ERR_TIMEOUT:
+ return "ASSOC_ERR_ASSOC_ERR_TIMEOUT";
+ case ASSOC_ERR_ASSOC_ERR_AUTH_REFUSED:
+ return "ASSOC_ERR_ASSOC_ERR_AUTH_REFUSED";
+ case ASSOC_ERR_STA_FAILURE:
+ return "ASSOC_ERR_STA_FAILURE";
+ }
+
+ return "Unknown 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 == ASSOC_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;
}
--
1.8.1.4
^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [PATCH 01/17] mwifiex: verbose logging for association failure messages
2015-05-28 18:27 ` Joe Perches
@ 2015-05-29 9:27 ` Avinash Patil
0 siblings, 0 replies; 8+ messages in thread
From: Avinash Patil @ 2015-05-29 9:27 UTC (permalink / raw)
To: Joe Perches
Cc: linux-wireless@vger.kernel.org, Amitkumar Karwar, Cathy Luo,
Xinming Hu
T24gVGh1LCAyMDE1LTA1LTI4IGF0IDExOjI3IC0wNzAwLCBKb2UgUGVyY2hlcyB3cm90ZToNCj4g
T24gVGh1LCAyMDE1LTA1LTI4IGF0IDE4OjI3ICswNTMwLCBBdmluYXNoIFBhdGlsIHdyb3RlOg0K
PiA+IFRoaXMgcGF0Y2ggYWRkcyBtb3JlIGxvZ2dpbmcgc3VwcG9ydCBmb3IgYXNzb2NpYXRpb24g
ZmFpbHVyZSAtDQo+ID4gcmVhc29uIGFuZCBzdGF0ZXMuDQo+IFtdDQo+ID4gZGlmZiAtLWdpdCBh
L2RyaXZlcnMvbmV0L3dpcmVsZXNzL213aWZpZXgvZncuaCBiL2RyaXZlcnMvbmV0L3dpcmVsZXNz
L213aWZpZXgvZncuaA0KPiBbXQ0KPiA+IEBAIC00MTksOCArNDE5LDEyIEBAIGVudW0gUDJQX01P
REVTIHsNCj4gPiAgI2RlZmluZSBIU19DRkdfQ09ORF9NQUNfRVZFTlQJCTB4MDAwMDAwMDQNCj4g
PiAgI2RlZmluZSBIU19DRkdfQ09ORF9NVUxUSUNBU1RfREFUQQkweDAwMDAwMDA4DQo+ID4gIA0K
PiA+IC0jZGVmaW5lIE1XSUZJRVhfVElNRU9VVF9GT1JfQVBfUkVTUAkJMHhmZmZjDQo+ID4gLSNk
ZWZpbmUgTVdJRklFWF9TVEFUVVNfQ09ERV9BVVRIX1RJTUVPVVQJMg0KPiA+ICsjZGVmaW5lIEFT
U09DX0VSUl9BVVRIX0VSUl9TVEFfRkFJTFVSRQkJMHhGRkZCDQo+ID4gKyNkZWZpbmUgQVNTT0Nf
RVJSX0FTU09DX0VSUl9USU1FT1VUCQkweEZGRkMNCj4gPiArI2RlZmluZSBBU1NPQ19FUlJfQVNT
T0NfRVJSX0FVVEhfUkVGVVNFRAkweEZGRkQNCj4gDQo+IElzIHRoZXJlIHJlYWxseSB2YWx1ZSBp
biBkdXBsaWNhdGluZyBBU1NPQ19FUlJfDQo+IAlBU1NPQ19FUlJfQVNTT0NfRVJSXzxmb28+DQo+
IA0KPiANCkhtbS4uVHJ1ZS4NCkFjdHVhbGx5IGZpcnN0IHBhcnQgb2YgbWVzc2FnZSBpcyBmb3Ig
Y29ubmVjdGlvbiBmYWlsdXJlLg0KSSB0aGluayBiZXR0ZXIgZm9ybWF0IHdvdWxkIGJlIENPTk5F
Q1RfRVJSX3tBVVRIL0FTU09DfV9FUlIuDQpJIHdpbGwgbW9kaWZ5IHBhdGNoIGFjY29yZGluZ2x5
IGFuZCByZXNlbmQgdjMuDQoNCi1BdmluYXNoDQoNCg0K
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2015-05-29 9:27 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <1432817889-26250-1-git-send-email-patila@marvell.com>
2015-05-28 12:57 ` [PATCH 01/17] mwifiex: verbose logging for association failure messages Avinash Patil
2015-05-28 18:27 ` Joe Perches
2015-05-29 9:27 ` Avinash Patil
2015-05-28 12:57 ` [PATCH 02/17] mwifiex: correct bss_type assignment Avinash Patil
2015-05-28 18:28 [PATCH 00/17] mwifiex patches Avinash Patil
2015-05-28 18:28 ` [PATCH 01/17] mwifiex: verbose logging for association failure messages Avinash Patil
[not found] <1432817766-26090-1-git-send-email-patila@marvell.com>
2015-05-28 12:55 ` Avinash Patil
[not found] <1432817552-25866-1-git-send-email-patila@marvell.com>
2015-05-28 12:52 ` Avinash Patil
[not found] <1432817450-25619-1-git-send-email-patila@marvell.com>
2015-05-28 12:50 ` Avinash Patil
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).