All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 00/14] mwifiex fixes
@ 2015-12-14 12:15 Amitkumar Karwar
  2015-12-14 12:15 ` [PATCH 01/14] mwifiex: change ap and station interface limits Amitkumar Karwar
                   ` (14 more replies)
  0 siblings, 15 replies; 19+ messages in thread
From: Amitkumar Karwar @ 2015-12-14 12:15 UTC (permalink / raw)
  To: linux-wireless; +Cc: Cathy Luo, Nishant Sarmukadam, Amitkumar Karwar

These patches include few fixes for mwifiex and add a
debugfs file for chip reset.

Amitkumar Karwar (6):
  mwifiex: suppress "Rx of mgmt packet failed" message
  mwifiex: remove redundant timestamp assignment
  mwifiex: add debugfs file for testing reset of card
  mwifiex: fix AMPDU not setup on TDLS link problem
  mwifiex: update region_code_index array
  mwifiex: use world for unidentified region code

Shengzhen Li (2):
  mwifiex: change ap and station interface limits
  mwifiex: multiple bss support

Xinming Hu (3):
  mwifiex: fix bug for wildcard-prefix wowlan pattern
  mwifiex: increase supported wowlan pattern length
  mwifiex: abort cac in del_station() handler

Zhaoyang Liu (1):
  mwifiex: advertise SMS4 cipher suite

chunfan chen (2):
  mwifiex: fix wake on disconnect feature
  mwifiex: fix WPA connection problem

 drivers/net/wireless/marvell/mwifiex/11n_aggr.c    |  2 -
 .../net/wireless/marvell/mwifiex/11n_rxreorder.c   | 10 +++
 drivers/net/wireless/marvell/mwifiex/cfg80211.c    | 44 +++++++++----
 drivers/net/wireless/marvell/mwifiex/cfp.c         |  2 +-
 drivers/net/wireless/marvell/mwifiex/cmdevt.c      |  4 +-
 drivers/net/wireless/marvell/mwifiex/debugfs.c     | 30 +++++++++
 drivers/net/wireless/marvell/mwifiex/decl.h        |  6 +-
 drivers/net/wireless/marvell/mwifiex/fw.h          |  2 +-
 drivers/net/wireless/marvell/mwifiex/main.h        | 44 ++++++++++---
 drivers/net/wireless/marvell/mwifiex/sta_ioctl.c   | 75 +++++++++++++++-------
 drivers/net/wireless/marvell/mwifiex/sta_rx.c      |  2 +-
 drivers/net/wireless/marvell/mwifiex/uap_txrx.c    |  3 +-
 12 files changed, 168 insertions(+), 56 deletions(-)

-- 
1.8.1.4


^ permalink raw reply	[flat|nested] 19+ messages in thread

* [PATCH 01/14] mwifiex: change ap and station interface limits
  2015-12-14 12:15 [PATCH 00/14] mwifiex fixes Amitkumar Karwar
@ 2015-12-14 12:15 ` Amitkumar Karwar
  2015-12-30 14:59   ` [01/14] " Kalle Valo
  2015-12-14 12:15 ` [PATCH 02/14] mwifiex: multiple bss support Amitkumar Karwar
                   ` (13 subsequent siblings)
  14 siblings, 1 reply; 19+ messages in thread
From: Amitkumar Karwar @ 2015-12-14 12:15 UTC (permalink / raw)
  To: linux-wireless
  Cc: Cathy Luo, Nishant Sarmukadam, Shengzhen Li, Amitkumar Karwar

From: Shengzhen Li <szli@marvell.com>

ap/station interface limit has been changed to allow
creating maximum 3 interfaces.

Signed-off-by: Shengzhen Li <szli@marvell.com>
Signed-off-by: Amitkumar Karwar <akarwar@marvell.com>
---
 drivers/net/wireless/marvell/mwifiex/cfg80211.c | 8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)

diff --git a/drivers/net/wireless/marvell/mwifiex/cfg80211.c b/drivers/net/wireless/marvell/mwifiex/cfg80211.c
index 65dd85d..47d8afd 100644
--- a/drivers/net/wireless/marvell/mwifiex/cfg80211.c
+++ b/drivers/net/wireless/marvell/mwifiex/cfg80211.c
@@ -26,12 +26,10 @@ module_param(reg_alpha2, charp, 0);
 
 static const struct ieee80211_iface_limit mwifiex_ap_sta_limits[] = {
 	{
-		.max = 2, .types = BIT(NL80211_IFTYPE_STATION) |
+		.max = 3, .types = BIT(NL80211_IFTYPE_STATION) |
 				   BIT(NL80211_IFTYPE_P2P_GO) |
-				   BIT(NL80211_IFTYPE_P2P_CLIENT),
-	},
-	{
-		.max = 1, .types = BIT(NL80211_IFTYPE_AP),
+				   BIT(NL80211_IFTYPE_P2P_CLIENT) |
+				   BIT(NL80211_IFTYPE_AP),
 	},
 };
 
-- 
1.8.1.4


^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [PATCH 02/14] mwifiex: multiple bss support
  2015-12-14 12:15 [PATCH 00/14] mwifiex fixes Amitkumar Karwar
  2015-12-14 12:15 ` [PATCH 01/14] mwifiex: change ap and station interface limits Amitkumar Karwar
@ 2015-12-14 12:15 ` Amitkumar Karwar
  2015-12-30 15:02   ` Kalle Valo
  2015-12-14 12:15 ` [PATCH 03/14] mwifiex: advertise SMS4 cipher suite Amitkumar Karwar
                   ` (12 subsequent siblings)
  14 siblings, 1 reply; 19+ messages in thread
From: Amitkumar Karwar @ 2015-12-14 12:15 UTC (permalink / raw)
  To: linux-wireless
  Cc: Cathy Luo, Nishant Sarmukadam, Shengzhen Li, Amitkumar Karwar

From: Shengzhen Li <szli@marvell.com>

This patch fixes issues observed while starting 3 different
bss simultaneously, eg, 2 AP + 1 STA or 3 AP

Signed-off-by: Amitkumar Karwar <akarwar@marvell.com>
---
 drivers/net/wireless/marvell/mwifiex/cfg80211.c | 20 ++++++++----
 drivers/net/wireless/marvell/mwifiex/decl.h     |  6 ++--
 drivers/net/wireless/marvell/mwifiex/main.h     | 42 ++++++++++++++++++++-----
 3 files changed, 51 insertions(+), 17 deletions(-)

diff --git a/drivers/net/wireless/marvell/mwifiex/cfg80211.c b/drivers/net/wireless/marvell/mwifiex/cfg80211.c
index 47d8afd..ab0ba6a 100644
--- a/drivers/net/wireless/marvell/mwifiex/cfg80211.c
+++ b/drivers/net/wireless/marvell/mwifiex/cfg80211.c
@@ -825,18 +825,26 @@ mwifiex_init_new_priv_params(struct mwifiex_private *priv,
 	switch (type) {
 	case NL80211_IFTYPE_STATION:
 	case NL80211_IFTYPE_ADHOC:
+		priv->bss_num = mwifiex_get_unused_bss_num(adapter,
+			 MWIFIEX_BSS_TYPE_STA);
 		priv->bss_role =  MWIFIEX_BSS_ROLE_STA;
 		priv->bss_type = MWIFIEX_BSS_TYPE_STA;
 		break;
 	case NL80211_IFTYPE_P2P_CLIENT:
+		priv->bss_num = mwifiex_get_unused_bss_num(adapter,
+			 MWIFIEX_BSS_TYPE_P2P);
 		priv->bss_role =  MWIFIEX_BSS_ROLE_STA;
 		priv->bss_type = MWIFIEX_BSS_TYPE_P2P;
 		break;
 	case NL80211_IFTYPE_P2P_GO:
+		priv->bss_num = mwifiex_get_unused_bss_num(adapter,
+			 MWIFIEX_BSS_TYPE_P2P);
 		priv->bss_role =  MWIFIEX_BSS_ROLE_UAP;
 		priv->bss_type = MWIFIEX_BSS_TYPE_P2P;
 		break;
 	case NL80211_IFTYPE_AP:
+		priv->bss_num = mwifiex_get_unused_bss_num(adapter,
+			 MWIFIEX_BSS_TYPE_UAP);
 		priv->bss_type = MWIFIEX_BSS_TYPE_UAP;
 		priv->bss_role = MWIFIEX_BSS_ROLE_UAP;
 		break;
@@ -2606,7 +2614,8 @@ struct wireless_dev *mwifiex_add_virtual_intf(struct wiphy *wiphy,
 			return ERR_PTR(-EINVAL);
 		}
 
-		priv = mwifiex_get_unused_priv(adapter);
+		priv = mwifiex_get_unused_priv_by_bss_type(
+						adapter, MWIFIEX_BSS_TYPE_STA);
 		if (!priv) {
 			mwifiex_dbg(adapter, ERROR,
 				    "could not get free private struct\n");
@@ -2625,7 +2634,6 @@ 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 = adapter->curr_iface_comb.sta_intf;
 
 		break;
 	case NL80211_IFTYPE_AP:
@@ -2636,7 +2644,8 @@ struct wireless_dev *mwifiex_add_virtual_intf(struct wiphy *wiphy,
 			return ERR_PTR(-EINVAL);
 		}
 
-		priv = mwifiex_get_unused_priv(adapter);
+		priv = mwifiex_get_unused_priv_by_bss_type(
+						adapter, MWIFIEX_BSS_TYPE_UAP);
 		if (!priv) {
 			mwifiex_dbg(adapter, ERROR,
 				    "could not get free private struct\n");
@@ -2651,7 +2660,6 @@ 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 = adapter->curr_iface_comb.uap_intf;
 		priv->bss_mode = type;
 
 		break;
@@ -2663,7 +2671,8 @@ struct wireless_dev *mwifiex_add_virtual_intf(struct wiphy *wiphy,
 			return ERR_PTR(-EINVAL);
 		}
 
-		priv = mwifiex_get_unused_priv(adapter);
+		priv = mwifiex_get_unused_priv_by_bss_type(
+						adapter, MWIFIEX_BSS_TYPE_P2P);
 		if (!priv) {
 			mwifiex_dbg(adapter, ERROR,
 				    "could not get free private struct\n");
@@ -2687,7 +2696,6 @@ 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 = adapter->curr_iface_comb.p2p_intf;
 
 		if (mwifiex_cfg80211_init_p2p_client(priv)) {
 			memset(&priv->wdev, 0, sizeof(priv->wdev));
diff --git a/drivers/net/wireless/marvell/mwifiex/decl.h b/drivers/net/wireless/marvell/mwifiex/decl.h
index 098e1f1..d9c15cd 100644
--- a/drivers/net/wireless/marvell/mwifiex/decl.h
+++ b/drivers/net/wireless/marvell/mwifiex/decl.h
@@ -111,9 +111,9 @@
 /* Rate index for OFDM 0 */
 #define MWIFIEX_RATE_INDEX_OFDM0   4
 
-#define MWIFIEX_MAX_STA_NUM		1
-#define MWIFIEX_MAX_UAP_NUM		1
-#define MWIFIEX_MAX_P2P_NUM		1
+#define MWIFIEX_MAX_STA_NUM		3
+#define MWIFIEX_MAX_UAP_NUM		3
+#define MWIFIEX_MAX_P2P_NUM		3
 
 #define MWIFIEX_A_BAND_START_FREQ	5000
 
diff --git a/drivers/net/wireless/marvell/mwifiex/main.h b/drivers/net/wireless/marvell/mwifiex/main.h
index a86e2ae..10e614e 100644
--- a/drivers/net/wireless/marvell/mwifiex/main.h
+++ b/drivers/net/wireless/marvell/mwifiex/main.h
@@ -1273,20 +1273,46 @@ mwifiex_get_priv(struct mwifiex_adapter *adapter,
 }
 
 /*
+ * This function checks available bss_num when adding new interface or
+ * changing interface type.
+ */
+static inline u8
+mwifiex_get_unused_bss_num(struct mwifiex_adapter *adapter, u8 bss_type)
+{
+	u8 i, j;
+	int index[MWIFIEX_MAX_BSS_NUM];
+
+	memset(index, 0, sizeof(index));
+	for (i = 0; i < adapter->priv_num; i++)
+		if (adapter->priv[i]) {
+			if (adapter->priv[i]->bss_type == bss_type &&
+			    !(adapter->priv[i]->bss_mode ==
+			      NL80211_IFTYPE_UNSPECIFIED)) {
+				index[adapter->priv[i]->bss_num] = 1;
+			}
+		}
+	for (j = 0; j < MWIFIEX_MAX_BSS_NUM; j++)
+		if (!index[j])
+			return j;
+	return -1;
+}
+
+/*
  * This function returns the first available unused private structure pointer.
  */
 static inline struct mwifiex_private *
-mwifiex_get_unused_priv(struct mwifiex_adapter *adapter)
+mwifiex_get_unused_priv_by_bss_type(struct mwifiex_adapter *adapter,
+				    u8 bss_type)
 {
-	int i;
+	u8 i;
 
-	for (i = 0; i < adapter->priv_num; i++) {
-		if (adapter->priv[i]) {
-			if (adapter->priv[i]->bss_mode ==
-			    NL80211_IFTYPE_UNSPECIFIED)
-				break;
+	for (i = 0; i < adapter->priv_num; i++)
+		if (adapter->priv[i]->bss_mode ==
+		   NL80211_IFTYPE_UNSPECIFIED) {
+			adapter->priv[i]->bss_num =
+			mwifiex_get_unused_bss_num(adapter, bss_type);
+			break;
 		}
-	}
 
 	return ((i < adapter->priv_num) ? adapter->priv[i] : NULL);
 }
-- 
1.8.1.4


^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [PATCH 03/14] mwifiex: advertise SMS4 cipher suite
  2015-12-14 12:15 [PATCH 00/14] mwifiex fixes Amitkumar Karwar
  2015-12-14 12:15 ` [PATCH 01/14] mwifiex: change ap and station interface limits Amitkumar Karwar
  2015-12-14 12:15 ` [PATCH 02/14] mwifiex: multiple bss support Amitkumar Karwar
@ 2015-12-14 12:15 ` Amitkumar Karwar
  2015-12-14 12:15 ` [PATCH 04/14] mwifiex: fix bug for wildcard-prefix wowlan pattern Amitkumar Karwar
                   ` (11 subsequent siblings)
  14 siblings, 0 replies; 19+ messages in thread
From: Amitkumar Karwar @ 2015-12-14 12:15 UTC (permalink / raw)
  To: linux-wireless
  Cc: Cathy Luo, Nishant Sarmukadam, Zhaoyang Liu, Amitkumar Karwar

From: Zhaoyang Liu <liuzy@marvell.com>

This is needed to support WAPI functionality.

Signed-off-by: Zhaoyang Liu <liuzy@marvell.com>
Signed-off-by: Amitkumar Karwar <akarwar@marvell.com>
---
 drivers/net/wireless/marvell/mwifiex/cfg80211.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/net/wireless/marvell/mwifiex/cfg80211.c b/drivers/net/wireless/marvell/mwifiex/cfg80211.c
index ab0ba6a..3349c2a 100644
--- a/drivers/net/wireless/marvell/mwifiex/cfg80211.c
+++ b/drivers/net/wireless/marvell/mwifiex/cfg80211.c
@@ -1539,6 +1539,7 @@ static const u32 mwifiex_cipher_suites[] = {
 	WLAN_CIPHER_SUITE_WEP104,
 	WLAN_CIPHER_SUITE_TKIP,
 	WLAN_CIPHER_SUITE_CCMP,
+	WLAN_CIPHER_SUITE_SMS4,
 	WLAN_CIPHER_SUITE_AES_CMAC,
 };
 
-- 
1.8.1.4


^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [PATCH 04/14] mwifiex: fix bug for wildcard-prefix wowlan pattern
  2015-12-14 12:15 [PATCH 00/14] mwifiex fixes Amitkumar Karwar
                   ` (2 preceding siblings ...)
  2015-12-14 12:15 ` [PATCH 03/14] mwifiex: advertise SMS4 cipher suite Amitkumar Karwar
@ 2015-12-14 12:15 ` Amitkumar Karwar
  2015-12-14 12:15 ` [PATCH 05/14] mwifiex: increase supported wowlan pattern length Amitkumar Karwar
                   ` (10 subsequent siblings)
  14 siblings, 0 replies; 19+ messages in thread
From: Amitkumar Karwar @ 2015-12-14 12:15 UTC (permalink / raw)
  To: linux-wireless
  Cc: Cathy Luo, Nishant Sarmukadam, Xinming Hu, Amitkumar Karwar

From: Xinming Hu <huxm@marvell.com>

Wildcard prefix bytes are ignored while downloading packet
pattern to firmware. As packet offset is not adjusted
accordingly firmware end up matching the pattern at wrong
offset. The packet offset is corrected in this patch.

Signed-off-by: Xinming Hu <huxm@marvell.com>
Signed-off-by: Amitkumar Karwar <akarwar@marvell.com>
---
 drivers/net/wireless/marvell/mwifiex/cfg80211.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/drivers/net/wireless/marvell/mwifiex/cfg80211.c b/drivers/net/wireless/marvell/mwifiex/cfg80211.c
index 3349c2a..0aab935 100644
--- a/drivers/net/wireless/marvell/mwifiex/cfg80211.c
+++ b/drivers/net/wireless/marvell/mwifiex/cfg80211.c
@@ -2921,6 +2921,12 @@ mwifiex_is_pattern_supported(struct cfg80211_pkt_pattern *pat, s8 *byte_seq,
 					dont_care_byte = true;
 			}
 
+			/* wildcard bytes record as the offset
+			 * before the valid byte
+			 */
+			if (!valid_byte_cnt && !dont_care_byte)
+				pat->pkt_offset++;
+
 			if (valid_byte_cnt > max_byte_seq)
 				return false;
 		}
-- 
1.8.1.4


^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [PATCH 05/14] mwifiex: increase supported wowlan pattern length
  2015-12-14 12:15 [PATCH 00/14] mwifiex fixes Amitkumar Karwar
                   ` (3 preceding siblings ...)
  2015-12-14 12:15 ` [PATCH 04/14] mwifiex: fix bug for wildcard-prefix wowlan pattern Amitkumar Karwar
@ 2015-12-14 12:15 ` Amitkumar Karwar
  2015-12-14 12:15 ` [PATCH 06/14] mwifiex: abort cac in del_station() handler Amitkumar Karwar
                   ` (9 subsequent siblings)
  14 siblings, 0 replies; 19+ messages in thread
From: Amitkumar Karwar @ 2015-12-14 12:15 UTC (permalink / raw)
  To: linux-wireless
  Cc: Cathy Luo, Nishant Sarmukadam, Xinming Hu, Amitkumar Karwar

From: Xinming Hu <huxm@marvell.com>

Maximum supported wowlan pattern length has been increased
from 20 to 40.

Signed-off-by: Xinming Hu <huxm@marvell.com>
Signed-off-by: Amitkumar Karwar <akarwar@marvell.com>
---
 drivers/net/wireless/marvell/mwifiex/fw.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/wireless/marvell/mwifiex/fw.h b/drivers/net/wireless/marvell/mwifiex/fw.h
index 89938f6..ced7af2 100644
--- a/drivers/net/wireless/marvell/mwifiex/fw.h
+++ b/drivers/net/wireless/marvell/mwifiex/fw.h
@@ -537,7 +537,7 @@ enum P2P_MODES {
 #define EVENT_GET_BSS_TYPE(event_cause)         \
 	(((event_cause) >> 24) & 0x00ff)
 
-#define MWIFIEX_MAX_PATTERN_LEN		20
+#define MWIFIEX_MAX_PATTERN_LEN		40
 #define MWIFIEX_MAX_OFFSET_LEN		100
 #define STACK_NBYTES			100
 #define TYPE_DNUM			1
-- 
1.8.1.4


^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [PATCH 06/14] mwifiex: abort cac in del_station() handler
  2015-12-14 12:15 [PATCH 00/14] mwifiex fixes Amitkumar Karwar
                   ` (4 preceding siblings ...)
  2015-12-14 12:15 ` [PATCH 05/14] mwifiex: increase supported wowlan pattern length Amitkumar Karwar
@ 2015-12-14 12:15 ` Amitkumar Karwar
  2015-12-14 12:15 ` [PATCH 07/14] mwifiex: suppress "Rx of mgmt packet failed" message Amitkumar Karwar
                   ` (8 subsequent siblings)
  14 siblings, 0 replies; 19+ messages in thread
From: Amitkumar Karwar @ 2015-12-14 12:15 UTC (permalink / raw)
  To: linux-wireless
  Cc: Cathy Luo, Nishant Sarmukadam, Xinming Hu, Amitkumar Karwar

From: Xinming Hu <huxm@marvell.com>

When hostapd is killed with Ctrl+C before cac get completed,
stop_ap handler will not be called, thus priv->wdev.cac_started
flag remains set.
Hostapd restart attempt will be failed in this case with device
busy error. This patch aborts cac in del_station handler to
handle this corner case.

Signed-off-by: Xinming Hu <huxm@marvell.com>
Signed-off-by: Amitkumar Karwar <akarwar@marvell.com>
---
 drivers/net/wireless/marvell/mwifiex/cfg80211.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/drivers/net/wireless/marvell/mwifiex/cfg80211.c b/drivers/net/wireless/marvell/mwifiex/cfg80211.c
index 0aab935..f7c26d6 100644
--- a/drivers/net/wireless/marvell/mwifiex/cfg80211.c
+++ b/drivers/net/wireless/marvell/mwifiex/cfg80211.c
@@ -1708,6 +1708,11 @@ mwifiex_cfg80211_del_station(struct wiphy *wiphy, struct net_device *dev,
 	u8 deauth_mac[ETH_ALEN];
 	unsigned long flags;
 
+	if (!priv->bss_started && priv->wdev.cac_started) {
+		mwifiex_dbg(priv->adapter, INFO, "%s: abort CAC!\n", __func__);
+		mwifiex_abort_cac(priv);
+	}
+
 	if (list_empty(&priv->sta_list) || !priv->bss_started)
 		return 0;
 
-- 
1.8.1.4


^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [PATCH 07/14] mwifiex: suppress "Rx of mgmt packet failed" message
  2015-12-14 12:15 [PATCH 00/14] mwifiex fixes Amitkumar Karwar
                   ` (5 preceding siblings ...)
  2015-12-14 12:15 ` [PATCH 06/14] mwifiex: abort cac in del_station() handler Amitkumar Karwar
@ 2015-12-14 12:15 ` Amitkumar Karwar
  2015-12-14 12:15 ` [PATCH 08/14] mwifiex: remove redundant timestamp assignment Amitkumar Karwar
                   ` (7 subsequent siblings)
  14 siblings, 0 replies; 19+ messages in thread
From: Amitkumar Karwar @ 2015-12-14 12:15 UTC (permalink / raw)
  To: linux-wireless; +Cc: Cathy Luo, Nishant Sarmukadam, Amitkumar Karwar

Block ACK action frames are dropped in driver. This error
is expected in this case. Let's lower the priority of this
message.

Signed-off-by: Amitkumar Karwar <akarwar@marvell.com>
---
 drivers/net/wireless/marvell/mwifiex/sta_rx.c   | 2 +-
 drivers/net/wireless/marvell/mwifiex/uap_txrx.c | 3 +--
 2 files changed, 2 insertions(+), 3 deletions(-)

diff --git a/drivers/net/wireless/marvell/mwifiex/sta_rx.c b/drivers/net/wireless/marvell/mwifiex/sta_rx.c
index d4d4cb1..00fcbda 100644
--- a/drivers/net/wireless/marvell/mwifiex/sta_rx.c
+++ b/drivers/net/wireless/marvell/mwifiex/sta_rx.c
@@ -215,7 +215,7 @@ int mwifiex_process_sta_rx_packet(struct mwifiex_private *priv,
 	if (rx_pkt_type == PKT_TYPE_MGMT) {
 		ret = mwifiex_process_mgmt_packet(priv, skb);
 		if (ret)
-			mwifiex_dbg(adapter, ERROR, "Rx of mgmt packet failed");
+			mwifiex_dbg(adapter, DATA, "Rx of mgmt packet failed");
 		dev_kfree_skb_any(skb);
 		return ret;
 	}
diff --git a/drivers/net/wireless/marvell/mwifiex/uap_txrx.c b/drivers/net/wireless/marvell/mwifiex/uap_txrx.c
index 74d5d72..52f7981 100644
--- a/drivers/net/wireless/marvell/mwifiex/uap_txrx.c
+++ b/drivers/net/wireless/marvell/mwifiex/uap_txrx.c
@@ -310,8 +310,7 @@ int mwifiex_process_uap_rx_packet(struct mwifiex_private *priv,
 	if (rx_pkt_type == PKT_TYPE_MGMT) {
 		ret = mwifiex_process_mgmt_packet(priv, skb);
 		if (ret)
-			mwifiex_dbg(adapter, ERROR,
-				    "Rx of mgmt packet failed");
+			mwifiex_dbg(adapter, DATA, "Rx of mgmt packet failed");
 		dev_kfree_skb_any(skb);
 		return ret;
 	}
-- 
1.8.1.4


^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [PATCH 08/14] mwifiex: remove redundant timestamp assignment
  2015-12-14 12:15 [PATCH 00/14] mwifiex fixes Amitkumar Karwar
                   ` (6 preceding siblings ...)
  2015-12-14 12:15 ` [PATCH 07/14] mwifiex: suppress "Rx of mgmt packet failed" message Amitkumar Karwar
@ 2015-12-14 12:15 ` Amitkumar Karwar
  2015-12-14 12:15 ` [PATCH 09/14] mwifiex: add debugfs file for testing reset of card Amitkumar Karwar
                   ` (6 subsequent siblings)
  14 siblings, 0 replies; 19+ messages in thread
From: Amitkumar Karwar @ 2015-12-14 12:15 UTC (permalink / raw)
  To: linux-wireless; +Cc: Cathy Luo, Nishant Sarmukadam, Amitkumar Karwar

During AMSDU aggregation, we are already using timestamp
value of a first packet being aggregated. This patch removes
redundant ktime_get_real() call.

Signed-off-by: Amitkumar Karwar <akarwar@marvell.com>
---
 drivers/net/wireless/marvell/mwifiex/11n_aggr.c | 2 --
 1 file changed, 2 deletions(-)

diff --git a/drivers/net/wireless/marvell/mwifiex/11n_aggr.c b/drivers/net/wireless/marvell/mwifiex/11n_aggr.c
index aa498e0..1efef3b 100644
--- a/drivers/net/wireless/marvell/mwifiex/11n_aggr.c
+++ b/drivers/net/wireless/marvell/mwifiex/11n_aggr.c
@@ -203,8 +203,6 @@ mwifiex_11n_aggregate_pkt(struct mwifiex_private *priv,
 	skb_aggr->priority = skb_src->priority;
 	skb_aggr->tstamp = skb_src->tstamp;
 
-	skb_aggr->tstamp = ktime_get_real();
-
 	do {
 		/* Check if AMSDU can accommodate this MSDU */
 		if (skb_tailroom(skb_aggr) < (skb_src->len + LLC_SNAP_LEN))
-- 
1.8.1.4


^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [PATCH 09/14] mwifiex: add debugfs file for testing reset of card
  2015-12-14 12:15 [PATCH 00/14] mwifiex fixes Amitkumar Karwar
                   ` (7 preceding siblings ...)
  2015-12-14 12:15 ` [PATCH 08/14] mwifiex: remove redundant timestamp assignment Amitkumar Karwar
@ 2015-12-14 12:15 ` Amitkumar Karwar
  2015-12-14 12:15 ` [PATCH 10/14] mwifiex: fix AMPDU not setup on TDLS link problem Amitkumar Karwar
                   ` (5 subsequent siblings)
  14 siblings, 0 replies; 19+ messages in thread
From: Amitkumar Karwar @ 2015-12-14 12:15 UTC (permalink / raw)
  To: linux-wireless; +Cc: Cathy Luo, Nishant Sarmukadam, Amitkumar Karwar

This provides an option for user to power cycle the card.
It will be used to change the firmware without actually
rebooting the system.

Signed-off-by: Amitkumar Karwar <akarwar@marvell.com>
---
 drivers/net/wireless/marvell/mwifiex/debugfs.c | 30 ++++++++++++++++++++++++++
 1 file changed, 30 insertions(+)

diff --git a/drivers/net/wireless/marvell/mwifiex/debugfs.c b/drivers/net/wireless/marvell/mwifiex/debugfs.c
index 9824d8d..5e55629 100644
--- a/drivers/net/wireless/marvell/mwifiex/debugfs.c
+++ b/drivers/net/wireless/marvell/mwifiex/debugfs.c
@@ -906,6 +906,34 @@ mwifiex_timeshare_coex_write(struct file *file, const char __user *ubuf,
 		return count;
 }
 
+static ssize_t
+mwifiex_reset_write(struct file *file,
+		    const char __user *ubuf, size_t count, loff_t *ppos)
+{
+	struct mwifiex_private *priv = file->private_data;
+	struct mwifiex_adapter *adapter = priv->adapter;
+	char cmd;
+	bool result;
+
+	if (copy_from_user(&cmd, ubuf, sizeof(cmd)))
+		return -EFAULT;
+
+	if (strtobool(&cmd, &result))
+		return -EINVAL;
+
+	if (!result)
+		return -EINVAL;
+
+	if (adapter->if_ops.card_reset) {
+		dev_info(adapter->dev, "Resetting per request\n");
+		adapter->hw_status = MWIFIEX_HW_STATUS_RESET;
+		mwifiex_cancel_all_pending_cmd(adapter);
+		adapter->if_ops.card_reset(adapter);
+	}
+
+	return count;
+}
+
 #define MWIFIEX_DFS_ADD_FILE(name) do {                                 \
 	if (!debugfs_create_file(#name, 0644, priv->dfs_dev_dir,        \
 			priv, &mwifiex_dfs_##name##_fops))              \
@@ -943,6 +971,7 @@ MWIFIEX_DFS_FILE_OPS(hscfg);
 MWIFIEX_DFS_FILE_OPS(histogram);
 MWIFIEX_DFS_FILE_OPS(debug_mask);
 MWIFIEX_DFS_FILE_OPS(timeshare_coex);
+MWIFIEX_DFS_FILE_WRITE_OPS(reset);
 
 /*
  * This function creates the debug FS directory structure and the files.
@@ -970,6 +999,7 @@ mwifiex_dev_debugfs_init(struct mwifiex_private *priv)
 	MWIFIEX_DFS_ADD_FILE(histogram);
 	MWIFIEX_DFS_ADD_FILE(debug_mask);
 	MWIFIEX_DFS_ADD_FILE(timeshare_coex);
+	MWIFIEX_DFS_ADD_FILE(reset);
 }
 
 /*
-- 
1.8.1.4


^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [PATCH 10/14] mwifiex: fix AMPDU not setup on TDLS link problem
  2015-12-14 12:15 [PATCH 00/14] mwifiex fixes Amitkumar Karwar
                   ` (8 preceding siblings ...)
  2015-12-14 12:15 ` [PATCH 09/14] mwifiex: add debugfs file for testing reset of card Amitkumar Karwar
@ 2015-12-14 12:15 ` Amitkumar Karwar
  2015-12-14 12:15 ` [PATCH 11/14] mwifiex: fix wake on disconnect feature Amitkumar Karwar
                   ` (4 subsequent siblings)
  14 siblings, 0 replies; 19+ messages in thread
From: Amitkumar Karwar @ 2015-12-14 12:15 UTC (permalink / raw)
  To: linux-wireless; +Cc: Cathy Luo, Nishant Sarmukadam, Amitkumar Karwar

Sometimes AP sends TDLS setup response as AMSDU packet.
As driver doesn't parse it and update peer station's 11n
capability in this case, AMPDU doesn't get setup.

This patch calls mwifiex_process_tdls_action_frame() in
AMSDU Rx path to fix the problem.

Signed-off-by: Amitkumar Karwar <akarwar@marvell.com>
Signed-off-by: Cathy Luo <cluo@marvell.com>
---
 drivers/net/wireless/marvell/mwifiex/11n_rxreorder.c | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/drivers/net/wireless/marvell/mwifiex/11n_rxreorder.c b/drivers/net/wireless/marvell/mwifiex/11n_rxreorder.c
index b3970a8..09578c6 100644
--- a/drivers/net/wireless/marvell/mwifiex/11n_rxreorder.c
+++ b/drivers/net/wireless/marvell/mwifiex/11n_rxreorder.c
@@ -48,7 +48,17 @@ static int mwifiex_11n_dispatch_amsdu_pkt(struct mwifiex_private *priv,
 					 priv->wdev.iftype, 0, false);
 
 		while (!skb_queue_empty(&list)) {
+			struct rx_packet_hdr *rx_hdr;
+
 			rx_skb = __skb_dequeue(&list);
+			rx_hdr = (struct rx_packet_hdr *)rx_skb->data;
+			if (ISSUPP_TDLS_ENABLED(priv->adapter->fw_cap_info) &&
+			    ntohs(rx_hdr->eth803_hdr.h_proto) == ETH_P_TDLS) {
+				mwifiex_process_tdls_action_frame(priv,
+								  (u8 *)rx_hdr,
+								  skb->len);
+			}
+
 			ret = mwifiex_recv_packet(priv, rx_skb);
 			if (ret == -1)
 				mwifiex_dbg(priv->adapter, ERROR,
-- 
1.8.1.4


^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [PATCH 11/14] mwifiex: fix wake on disconnect feature
  2015-12-14 12:15 [PATCH 00/14] mwifiex fixes Amitkumar Karwar
                   ` (9 preceding siblings ...)
  2015-12-14 12:15 ` [PATCH 10/14] mwifiex: fix AMPDU not setup on TDLS link problem Amitkumar Karwar
@ 2015-12-14 12:15 ` Amitkumar Karwar
  2015-12-14 12:15 ` [PATCH 12/14] mwifiex: update region_code_index array Amitkumar Karwar
                   ` (3 subsequent siblings)
  14 siblings, 0 replies; 19+ messages in thread
From: Amitkumar Karwar @ 2015-12-14 12:15 UTC (permalink / raw)
  To: linux-wireless
  Cc: Cathy Luo, Nishant Sarmukadam, chunfan chen, Amitkumar Karwar

From: chunfan chen <jeffc@marvell.com>

Default gpio and gap is downloaded to firmware while
configuring host sleep for wake on disconnect. We may
have gpio and gap modified by user.

This patch fixes the problem.

Signed-off-by: chunfan chen <jeffc@marvell.com>
Signed-off-by: Amitkumar Karwar <akarwar@marvell.com>
---
 drivers/net/wireless/marvell/mwifiex/cfg80211.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/net/wireless/marvell/mwifiex/cfg80211.c b/drivers/net/wireless/marvell/mwifiex/cfg80211.c
index f7c26d6..e7adef7 100644
--- a/drivers/net/wireless/marvell/mwifiex/cfg80211.c
+++ b/drivers/net/wireless/marvell/mwifiex/cfg80211.c
@@ -3159,8 +3159,8 @@ static int mwifiex_cfg80211_suspend(struct wiphy *wiphy,
 		memset(&hs_cfg, 0, sizeof(hs_cfg));
 		hs_cfg.is_invoke_hostcmd = false;
 		hs_cfg.conditions = HS_CFG_COND_MAC_EVENT;
-		hs_cfg.gpio = HS_CFG_GPIO_DEF;
-		hs_cfg.gap = HS_CFG_GAP_DEF;
+		hs_cfg.gpio = adapter->hs_cfg.gpio;
+		hs_cfg.gap = adapter->hs_cfg.gap;
 		ret = mwifiex_set_hs_params(priv, HostCmd_ACT_GEN_SET,
 					    MWIFIEX_SYNC_CMD, &hs_cfg);
 		if (ret) {
-- 
1.8.1.4


^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [PATCH 12/14] mwifiex: update region_code_index array
  2015-12-14 12:15 [PATCH 00/14] mwifiex fixes Amitkumar Karwar
                   ` (10 preceding siblings ...)
  2015-12-14 12:15 ` [PATCH 11/14] mwifiex: fix wake on disconnect feature Amitkumar Karwar
@ 2015-12-14 12:15 ` Amitkumar Karwar
  2015-12-14 12:15 ` [PATCH 13/14] mwifiex: use world for unidentified region code Amitkumar Karwar
                   ` (2 subsequent siblings)
  14 siblings, 0 replies; 19+ messages in thread
From: Amitkumar Karwar @ 2015-12-14 12:15 UTC (permalink / raw)
  To: linux-wireless; +Cc: Cathy Luo, Nishant Sarmukadam, Amitkumar Karwar

This array contains list of supported region codes.
It is changed to make it aligned with region code
to country mapping table in driver.

Signed-off-by: Amitkumar Karwar <akarwar@marvell.com>
---
 drivers/net/wireless/marvell/mwifiex/cfp.c  | 2 +-
 drivers/net/wireless/marvell/mwifiex/main.h | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/net/wireless/marvell/mwifiex/cfp.c b/drivers/net/wireless/marvell/mwifiex/cfp.c
index beb564f..09fae27 100644
--- a/drivers/net/wireless/marvell/mwifiex/cfp.c
+++ b/drivers/net/wireless/marvell/mwifiex/cfp.c
@@ -67,7 +67,7 @@ static u8 supported_rates_bg[BG_SUPPORTED_RATES] = { 0x02, 0x04, 0x0b, 0x0c,
 					0x60, 0x6c, 0 };
 
 u16 region_code_index[MWIFIEX_MAX_REGION_CODE] = { 0x00, 0x10, 0x20, 0x30,
-						0x32, 0x40, 0x41, 0xff };
+						0x31, 0x32, 0x40, 0x41, 0x50 };
 
 static u8 supported_rates_n[N_SUPPORTED_RATES] = { 0x02, 0x04, 0 };
 
diff --git a/drivers/net/wireless/marvell/mwifiex/main.h b/drivers/net/wireless/marvell/mwifiex/main.h
index 10e614e..0fa1d8e 100644
--- a/drivers/net/wireless/marvell/mwifiex/main.h
+++ b/drivers/net/wireless/marvell/mwifiex/main.h
@@ -84,7 +84,7 @@ enum {
 
 #define MWIFIEX_KEY_BUFFER_SIZE			16
 #define MWIFIEX_DEFAULT_LISTEN_INTERVAL 10
-#define MWIFIEX_MAX_REGION_CODE         8
+#define MWIFIEX_MAX_REGION_CODE         9
 
 #define DEFAULT_BCN_AVG_FACTOR          8
 #define DEFAULT_DATA_AVG_FACTOR         8
-- 
1.8.1.4


^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [PATCH 13/14] mwifiex: use world for unidentified region code
  2015-12-14 12:15 [PATCH 00/14] mwifiex fixes Amitkumar Karwar
                   ` (11 preceding siblings ...)
  2015-12-14 12:15 ` [PATCH 12/14] mwifiex: update region_code_index array Amitkumar Karwar
@ 2015-12-14 12:15 ` Amitkumar Karwar
  2015-12-14 12:15 ` [PATCH 14/14] mwifiex: fix WPA connection problem Amitkumar Karwar
  2015-12-14 12:22 ` [PATCH 00/14] mwifiex fixes Johannes Berg
  14 siblings, 0 replies; 19+ messages in thread
From: Amitkumar Karwar @ 2015-12-14 12:15 UTC (permalink / raw)
  To: linux-wireless; +Cc: Cathy Luo, Nishant Sarmukadam, Amitkumar Karwar

It's better to use world if region code from EEPROM is
unidentied instead of forcing it to FCC

Signed-off-by: Amitkumar Karwar <akarwar@marvell.com>
---
 drivers/net/wireless/marvell/mwifiex/cmdevt.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/net/wireless/marvell/mwifiex/cmdevt.c b/drivers/net/wireless/marvell/mwifiex/cmdevt.c
index 45ae38e..cb25aa7 100644
--- a/drivers/net/wireless/marvell/mwifiex/cmdevt.c
+++ b/drivers/net/wireless/marvell/mwifiex/cmdevt.c
@@ -1637,9 +1637,9 @@ int mwifiex_ret_get_hw_spec(struct mwifiex_private *priv,
 		if (adapter->region_code == region_code_index[i])
 			break;
 
-	/* If it's unidentified region code, use the default (USA) */
+	/* If it's unidentified region code, use the default (world) */
 	if (i >= MWIFIEX_MAX_REGION_CODE) {
-		adapter->region_code = 0x10;
+		adapter->region_code = 0x00;
 		mwifiex_dbg(adapter, WARN,
 			    "cmd: unknown region code, use default (USA)\n");
 	}
-- 
1.8.1.4


^ permalink raw reply related	[flat|nested] 19+ messages in thread

* [PATCH 14/14] mwifiex: fix WPA connection problem
  2015-12-14 12:15 [PATCH 00/14] mwifiex fixes Amitkumar Karwar
                   ` (12 preceding siblings ...)
  2015-12-14 12:15 ` [PATCH 13/14] mwifiex: use world for unidentified region code Amitkumar Karwar
@ 2015-12-14 12:15 ` Amitkumar Karwar
  2015-12-14 12:22 ` [PATCH 00/14] mwifiex fixes Johannes Berg
  14 siblings, 0 replies; 19+ messages in thread
From: Amitkumar Karwar @ 2015-12-14 12:15 UTC (permalink / raw)
  To: linux-wireless
  Cc: Cathy Luo, Nishant Sarmukadam, chunfan chen, Amitkumar Karwar

From: chunfan chen <jeffc@marvell.com>

Device fails to connect to some AP's configured in WPA
security mode. Currently IE buffer parsing logic in driver
expects WPA IE to be present at the beginning of IE buffer.
Otherwise connection is failed with 'incompatible network
setting' error.

This patch fixes the problem by improving IE buffer parsing
logic.

Signed-off-by: chunfan chen <jeffc@marvell.com>
Signed-off-by: Amitkumar Karwar <akarwar@marvell.com>
---
 drivers/net/wireless/marvell/mwifiex/sta_ioctl.c | 75 +++++++++++++++++-------
 1 file changed, 53 insertions(+), 22 deletions(-)

diff --git a/drivers/net/wireless/marvell/mwifiex/sta_ioctl.c b/drivers/net/wireless/marvell/mwifiex/sta_ioctl.c
index 62b35a3..439e73f 100644
--- a/drivers/net/wireless/marvell/mwifiex/sta_ioctl.c
+++ b/drivers/net/wireless/marvell/mwifiex/sta_ioctl.c
@@ -1293,6 +1293,8 @@ mwifiex_set_gen_ie_helper(struct mwifiex_private *priv, u8 *ie_data_ptr,
 	struct ieee_types_vendor_header *pvendor_ie;
 	const u8 wpa_oui[] = { 0x00, 0x50, 0xf2, 0x01 };
 	const u8 wps_oui[] = { 0x00, 0x50, 0xf2, 0x04 };
+	u16 unparsed_len = ie_len;
+	int find_wpa_ie = 0;
 
 	/* If the passed length is zero, reset the buffer */
 	if (!ie_len) {
@@ -1304,40 +1306,69 @@ mwifiex_set_gen_ie_helper(struct mwifiex_private *priv, u8 *ie_data_ptr,
 		return -1;
 	}
 	pvendor_ie = (struct ieee_types_vendor_header *) ie_data_ptr;
-	/* Test to see if it is a WPA IE, if not, then it is a gen IE */
-	if (((pvendor_ie->element_id == WLAN_EID_VENDOR_SPECIFIC) &&
-	     (!memcmp(pvendor_ie->oui, wpa_oui, sizeof(wpa_oui)))) ||
-	    (pvendor_ie->element_id == WLAN_EID_RSN)) {
 
-		/* IE is a WPA/WPA2 IE so call set_wpa function */
-		ret = mwifiex_set_wpa_ie_helper(priv, ie_data_ptr, ie_len);
-		priv->wps.session_enable = false;
+	while (pvendor_ie) {
+		if (pvendor_ie->element_id == WLAN_EID_VENDOR_SPECIFIC) {
+			/* Test to see if it is a WPA IE, if not, then it is a
+			 * gen IE
+			 */
+			if (!memcmp(pvendor_ie->oui, wpa_oui,
+				    sizeof(wpa_oui))) {
+				find_wpa_ie = 1;
+				break;
+			}
 
-		return ret;
-	} else if (pvendor_ie->element_id == WLAN_EID_BSS_AC_ACCESS_DELAY) {
+			/* Test to see if it is a WPS IE, if so, enable
+			 * wps session flag
+			 */
+			if (!memcmp(pvendor_ie->oui, wps_oui,
+				    sizeof(wps_oui))) {
+				priv->wps.session_enable = true;
+				mwifiex_dbg(priv->adapter, MSG,
+					    "info: WPS Session Enabled.\n");
+				ret = mwifiex_set_wps_ie(priv,
+							 (u8 *)pvendor_ie,
+							 unparsed_len);
+			}
+		}
+
+		if (pvendor_ie->element_id == WLAN_EID_RSN) {
+			find_wpa_ie = 1;
+			break;
+		}
+
+		if (pvendor_ie->element_id == WLAN_EID_BSS_AC_ACCESS_DELAY) {
 		/* IE is a WAPI IE so call set_wapi function */
-		ret = mwifiex_set_wapi_ie(priv, ie_data_ptr, ie_len);
+			ret = mwifiex_set_wapi_ie(priv, (u8 *)pvendor_ie,
+						  unparsed_len);
+			return ret;
+		}
+
+		unparsed_len -= (pvendor_ie->len +
+				 sizeof(struct ieee_types_header));
+
+		if (unparsed_len <= sizeof(struct ieee_types_header))
+			pvendor_ie = NULL;
+		else
+			pvendor_ie = (struct ieee_types_vendor_header *)
+				(((u8 *)pvendor_ie) + pvendor_ie->len +
+				 sizeof(struct ieee_types_header));
+	}
 
+	if (find_wpa_ie) {
+		/* IE is a WPA/WPA2 IE so call set_wpa function */
+		ret = mwifiex_set_wpa_ie_helper(priv, (u8 *)pvendor_ie,
+						unparsed_len);
+		priv->wps.session_enable = false;
 		return ret;
 	}
+
 	/*
 	 * Verify that the passed length is not larger than the
 	 * available space remaining in the buffer
 	 */
 	if (ie_len < (sizeof(priv->gen_ie_buf) - priv->gen_ie_buf_len)) {
 
-		/* Test to see if it is a WPS IE, if so, enable
-		 * wps session flag
-		 */
-		pvendor_ie = (struct ieee_types_vendor_header *) ie_data_ptr;
-		if ((pvendor_ie->element_id == WLAN_EID_VENDOR_SPECIFIC) &&
-		    (!memcmp(pvendor_ie->oui, wps_oui, sizeof(wps_oui)))) {
-			priv->wps.session_enable = true;
-			mwifiex_dbg(priv->adapter, INFO,
-				    "info: WPS Session Enabled.\n");
-			ret = mwifiex_set_wps_ie(priv, ie_data_ptr, ie_len);
-		}
-
 		/* Append the passed data to the end of the
 		   genIeBuffer */
 		memcpy(priv->gen_ie_buf + priv->gen_ie_buf_len, ie_data_ptr,
-- 
1.8.1.4


^ permalink raw reply related	[flat|nested] 19+ messages in thread

* Re: [PATCH 00/14] mwifiex fixes
  2015-12-14 12:15 [PATCH 00/14] mwifiex fixes Amitkumar Karwar
                   ` (13 preceding siblings ...)
  2015-12-14 12:15 ` [PATCH 14/14] mwifiex: fix WPA connection problem Amitkumar Karwar
@ 2015-12-14 12:22 ` Johannes Berg
  2015-12-14 12:53   ` Amitkumar Karwar
  14 siblings, 1 reply; 19+ messages in thread
From: Johannes Berg @ 2015-12-14 12:22 UTC (permalink / raw)
  To: Amitkumar Karwar, linux-wireless; +Cc: Cathy Luo, Nishant Sarmukadam

On Mon, 2015-12-14 at 04:15 -0800, Amitkumar Karwar wrote:
> These patches include few fixes for mwifiex and add a
> debugfs file for chip reset.
> 

A lot of these "fixes" look like new firmware features to me (e.g.
interface limits, sms4 cipher, pattern length).

First of all - is that really appropriate as "fixes", what tree are you
targeting?

And secondly, how are you making sure the user won't have an older
firmware version where this will presumably cause crashes?

johannes

^ permalink raw reply	[flat|nested] 19+ messages in thread

* RE: [PATCH 00/14] mwifiex fixes
  2015-12-14 12:22 ` [PATCH 00/14] mwifiex fixes Johannes Berg
@ 2015-12-14 12:53   ` Amitkumar Karwar
  0 siblings, 0 replies; 19+ messages in thread
From: Amitkumar Karwar @ 2015-12-14 12:53 UTC (permalink / raw)
  To: Johannes Berg, linux-wireless; +Cc: Cathy Luo, Nishant Sarmukadam

PiBGcm9tOiBKb2hhbm5lcyBCZXJnIFttYWlsdG86am9oYW5uZXNAc2lwc29sdXRpb25zLm5ldF0N
Cj4gU2VudDogTW9uZGF5LCBEZWNlbWJlciAxNCwgMjAxNSA1OjUzIFBNDQo+IFRvOiBBbWl0a3Vt
YXIgS2Fyd2FyOyBsaW51eC13aXJlbGVzc0B2Z2VyLmtlcm5lbC5vcmcNCj4gQ2M6IENhdGh5IEx1
bzsgTmlzaGFudCBTYXJtdWthZGFtDQo+IFN1YmplY3Q6IFJlOiBbUEFUQ0ggMDAvMTRdIG13aWZp
ZXggZml4ZXMNCj4gDQo+IE9uIE1vbiwgMjAxNS0xMi0xNCBhdCAwNDoxNSAtMDgwMCwgQW1pdGt1
bWFyIEthcndhciB3cm90ZToNCj4gPiBUaGVzZSBwYXRjaGVzIGluY2x1ZGUgZmV3IGZpeGVzIGZv
ciBtd2lmaWV4IGFuZCBhZGQgYSBkZWJ1Z2ZzIGZpbGUgZm9yDQo+ID4gY2hpcCByZXNldC4NCj4g
Pg0KPiANCj4gQSBsb3Qgb2YgdGhlc2UgImZpeGVzIiBsb29rIGxpa2UgbmV3IGZpcm13YXJlIGZl
YXR1cmVzIHRvIG1lIChlLmcuDQo+IGludGVyZmFjZSBsaW1pdHMsIHNtczQgY2lwaGVyLCBwYXR0
ZXJuIGxlbmd0aCkuDQoNClRoZXNlIGZlYXR1cmVzIGFyZSBzdXBwb3J0ZWQgZXZlbiB3aXRoIG9s
ZGVyIGZpcm13YXJlcy4gSXTigJlzIGp1c3QgdGhhdCB0aGV5IGFyZSBhZHZlcnRpc2VkIG5vdyB0
byBtZWV0IHNwZWNpZmljIHJlcXVpcmVtZW50cyBmcm9tIGN1c3RvbWVyLg0KDQpzbXM0IGNpcGhl
ciAtIFdBUEkgaXMgc3VwcG9ydGVkIGluIGZpcm13YXJlIGZvciBsb25nIHRpbWUuDQppbnRlcmZh
Y2UgbGltaXRzIC0gSW50ZXJmYWNlIGxpbWl0IGhhcyBiZWVuIGNoYW5nZWQsIGJ1dCB0b3RhbCBu
dW1iZXIgb2YgbWF4aW11bSBpbnRlcmZhY2VzIGFyZSBzYW1lLiBDaGFuZ2UgaXMgY29tcGF0aWJs
ZSB3aXRoIG9sZGVyIGZpcm13YXJlLg0KcGF0dGVybiBsZW5ndGggLSBVc2VyIHByb3ZpZGVkIHBh
dHRlcm4gbGVuZ3RoICh3aWxkY2FyZCBieXRlcyArIGFjdHVhbCBieXRlcykgaGFzIGJlZW4gaW5j
cmVhc2VkIHRvIGFjY29tbW9kYXRlIG1vcmUgd2lsZGNhcmQgYnl0ZXMuIE5vIGNoYW5nZSBpbiBh
Y3R1YWwgcGFja2V0IGxlbmd0aCBzdXBwb3J0ZWQgYnkgZmlybXdhcmUuDQoNCj4gDQo+IEZpcnN0
IG9mIGFsbCAtIGlzIHRoYXQgcmVhbGx5IGFwcHJvcHJpYXRlIGFzICJmaXhlcyIsIHdoYXQgdHJl
ZSBhcmUgeW91DQo+IHRhcmdldGluZz8NCg0KTW9zdCBvZiB0aGUgcGF0Y2hlcyBpbiB0aGlzIHNl
cmllcyBhcmUgZml4ZXMuIEhlbmNlIEkgdXNlZCB3b3JkICdmaXhlcycuIEkgYW0gdGFyZ2V0aW5n
IHRoZW0gZm9yIHdpcmVsZXNzLWRyaXZlcnMtbmV4dCB0cmVlIG9ubHkuDQoNCj4gDQo+IEFuZCBz
ZWNvbmRseSwgaG93IGFyZSB5b3UgbWFraW5nIHN1cmUgdGhlIHVzZXIgd29uJ3QgaGF2ZSBhbiBv
bGRlcg0KPiBmaXJtd2FyZSB2ZXJzaW9uIHdoZXJlIHRoaXMgd2lsbCBwcmVzdW1hYmx5IGNhdXNl
IGNyYXNoZXM/DQo+IA0KDQpUaGlzIHBhdGNoIHNlcmllcyBkb2VzbuKAmXQgaW5jbHVkZSBhbnkg
bmV3IGZlYXR1cmUgd2hpY2ggYXJlbid0IHN1cHBvcnRlZCBieSBvbGRlciBmaXJtd2FyZS4NCg0K
UmVnYXJkcywNCkFtaXRrdW1hcg0K

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [01/14] mwifiex: change ap and station interface limits
  2015-12-14 12:15 ` [PATCH 01/14] mwifiex: change ap and station interface limits Amitkumar Karwar
@ 2015-12-30 14:59   ` Kalle Valo
  0 siblings, 0 replies; 19+ messages in thread
From: Kalle Valo @ 2015-12-30 14:59 UTC (permalink / raw)
  To: Amitkumar Karwar
  Cc: linux-wireless, Cathy Luo, Nishant Sarmukadam, Shengzhen Li,
	Amitkumar Karwar


> From: Shengzhen Li <szli@marvell.com>
> 
> ap/station interface limit has been changed to allow
> creating maximum 3 interfaces.
> 
> Signed-off-by: Shengzhen Li <szli@marvell.com>
> Signed-off-by: Amitkumar Karwar <akarwar@marvell.com>

Thanks, 14 patches applied to wireless-drivers-next.git:

eb5d912e1564 mwifiex: change ap and station interface limits
5b13d3e1f926 mwifiex: multiple bss support
5eab67779974 mwifiex: advertise SMS4 cipher suite
c8ac6a8ee8e7 mwifiex: fix bug for wildcard-prefix wowlan pattern
b0922ffa706b mwifiex: increase supported wowlan pattern length
abffd274a243 mwifiex: abort cac in del_station() handler
bd642acf3213 mwifiex: suppress "Rx of mgmt packet failed" message
47f336d7e0df mwifiex: remove redundant timestamp assignment
76ae3e26ea43 mwifiex: add debugfs file for testing reset of card
776f742040ca mwifiex: fix AMPDU not setup on TDLS link problem
7f3f1245ffcd mwifiex: fix wake on disconnect feature
610d0af8e8d2 mwifiex: update region_code_index array
19b0a71017aa mwifiex: use world for unidentified region code
84a38fb3167e mwifiex: fix WPA connection problem

Kalle Valo

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: [PATCH 02/14] mwifiex: multiple bss support
  2015-12-14 12:15 ` [PATCH 02/14] mwifiex: multiple bss support Amitkumar Karwar
@ 2015-12-30 15:02   ` Kalle Valo
  0 siblings, 0 replies; 19+ messages in thread
From: Kalle Valo @ 2015-12-30 15:02 UTC (permalink / raw)
  To: Amitkumar Karwar
  Cc: linux-wireless, Cathy Luo, Nishant Sarmukadam, Shengzhen Li

Amitkumar Karwar <akarwar@marvell.com> writes:

> From: Shengzhen Li <szli@marvell.com>
>
> This patch fixes issues observed while starting 3 different
> bss simultaneously, eg, 2 AP + 1 STA or 3 AP
>
> Signed-off-by: Amitkumar Karwar <akarwar@marvell.com>

I applied this already but I want to point out still that the title is
quite vague. For example, "mwifiex: fix an issue with 3 simultaneous
bss" would have been more informative.

-- 
Kalle Valo

^ permalink raw reply	[flat|nested] 19+ messages in thread

end of thread, other threads:[~2015-12-30 15:02 UTC | newest]

Thread overview: 19+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-12-14 12:15 [PATCH 00/14] mwifiex fixes Amitkumar Karwar
2015-12-14 12:15 ` [PATCH 01/14] mwifiex: change ap and station interface limits Amitkumar Karwar
2015-12-30 14:59   ` [01/14] " Kalle Valo
2015-12-14 12:15 ` [PATCH 02/14] mwifiex: multiple bss support Amitkumar Karwar
2015-12-30 15:02   ` Kalle Valo
2015-12-14 12:15 ` [PATCH 03/14] mwifiex: advertise SMS4 cipher suite Amitkumar Karwar
2015-12-14 12:15 ` [PATCH 04/14] mwifiex: fix bug for wildcard-prefix wowlan pattern Amitkumar Karwar
2015-12-14 12:15 ` [PATCH 05/14] mwifiex: increase supported wowlan pattern length Amitkumar Karwar
2015-12-14 12:15 ` [PATCH 06/14] mwifiex: abort cac in del_station() handler Amitkumar Karwar
2015-12-14 12:15 ` [PATCH 07/14] mwifiex: suppress "Rx of mgmt packet failed" message Amitkumar Karwar
2015-12-14 12:15 ` [PATCH 08/14] mwifiex: remove redundant timestamp assignment Amitkumar Karwar
2015-12-14 12:15 ` [PATCH 09/14] mwifiex: add debugfs file for testing reset of card Amitkumar Karwar
2015-12-14 12:15 ` [PATCH 10/14] mwifiex: fix AMPDU not setup on TDLS link problem Amitkumar Karwar
2015-12-14 12:15 ` [PATCH 11/14] mwifiex: fix wake on disconnect feature Amitkumar Karwar
2015-12-14 12:15 ` [PATCH 12/14] mwifiex: update region_code_index array Amitkumar Karwar
2015-12-14 12:15 ` [PATCH 13/14] mwifiex: use world for unidentified region code Amitkumar Karwar
2015-12-14 12:15 ` [PATCH 14/14] mwifiex: fix WPA connection problem Amitkumar Karwar
2015-12-14 12:22 ` [PATCH 00/14] mwifiex fixes Johannes Berg
2015-12-14 12:53   ` Amitkumar Karwar

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.