linux-wireless.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 1/4] mwifiex: remove struct ieee_bssco_2040
@ 2011-03-05  5:22 Bing Zhao
  2011-03-05  5:22 ` [PATCH 2/4] mwifiex: remove struct ieee_types_2040bssco Bing Zhao
                   ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: Bing Zhao @ 2011-03-05  5:22 UTC (permalink / raw)
  To: linux-wireless
  Cc: John W. Linville, Johannes Berg, Amitkumar Karwar, Kiran Divekar,
	Yogesh Powar, Marc Yang, Frank Huang, Bing Zhao

This struct is not necessary.

Signed-off-by: Bing Zhao <bzhao@marvell.com>
Signed-off-by: Amitkumar Karwar <akarwar@marvell.com>
---
 drivers/net/wireless/mwifiex/11n.c  |    2 +-
 drivers/net/wireless/mwifiex/fw.h   |    2 +-
 drivers/net/wireless/mwifiex/ieee.h |    6 +-----
 3 files changed, 3 insertions(+), 7 deletions(-)

diff --git a/drivers/net/wireless/mwifiex/11n.c b/drivers/net/wireless/mwifiex/11n.c
index 49876e7..ffc005a 100644
--- a/drivers/net/wireless/mwifiex/11n.c
+++ b/drivers/net/wireless/mwifiex/11n.c
@@ -771,7 +771,7 @@ mwifiex_cmd_append_11n_tlv(struct mwifiex_private *priv,
 		       sizeof(struct mwifiex_ie_types_2040bssco));
 		bss_co_2040->header.type = cpu_to_le16(WLAN_EID_BSS_COEX_2040);
 		bss_co_2040->header.len =
-		       cpu_to_le16(sizeof(struct ieee_bssco_2040));
+		       cpu_to_le16(sizeof(bss_co_2040->bss_co_2040));
 
 		memcpy((u8 *) bss_co_2040 +
 		       sizeof(struct mwifiex_ie_types_header),
diff --git a/drivers/net/wireless/mwifiex/fw.h b/drivers/net/wireless/mwifiex/fw.h
index 50f6df6..038d7d6 100644
--- a/drivers/net/wireless/mwifiex/fw.h
+++ b/drivers/net/wireless/mwifiex/fw.h
@@ -1167,7 +1167,7 @@ struct mwifiex_ie_types_htinfo {
 
 struct mwifiex_ie_types_2040bssco {
 	struct mwifiex_ie_types_header header;
-	struct ieee_bssco_2040 bss_co_2040;
+	u8 bss_co_2040;
 } __packed;
 
 struct mwifiex_ie_types_extcap {
diff --git a/drivers/net/wireless/mwifiex/ieee.h b/drivers/net/wireless/mwifiex/ieee.h
index c9f0964..877a9f8 100644
--- a/drivers/net/wireless/mwifiex/ieee.h
+++ b/drivers/net/wireless/mwifiex/ieee.h
@@ -152,10 +152,6 @@ struct ieee_types_wmm_parameter {
 #define MWIFIEX_MAX_TRIPLET_802_11D		83
 #define COUNTRY_CODE_LEN			3
 
-struct ieee_bssco_2040 {
-	u8 bss_co_2040_value;
-} __packed;
-
 struct ieee_obss_scan_param {
 	u16 obss_scan_passive_dwell;
 	u16 obss_scan_active_dwell;
@@ -168,7 +164,7 @@ struct ieee_obss_scan_param {
 
 struct ieee_types_2040bssco {
 	struct ieee_types_header ieee_hdr;
-	struct ieee_bssco_2040 bss_co_2040;
+	u8 bss_co_2040;
 } __packed;
 
 struct ieee_types_obss_scan_param {
-- 
1.7.0.2


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

* [PATCH 2/4] mwifiex: remove struct ieee_types_2040bssco
  2011-03-05  5:22 [PATCH 1/4] mwifiex: remove struct ieee_bssco_2040 Bing Zhao
@ 2011-03-05  5:22 ` Bing Zhao
  2011-03-05  5:22 ` [PATCH 3/4] ieee80211: add IEEE80211_COUNTRY_STRING_LEN definition Bing Zhao
  2011-03-05  5:22 ` [PATCH 4/4] mwifiex: remove COUNTRY_CODE_LEN Bing Zhao
  2 siblings, 0 replies; 6+ messages in thread
From: Bing Zhao @ 2011-03-05  5:22 UTC (permalink / raw)
  To: linux-wireless
  Cc: John W. Linville, Johannes Berg, Amitkumar Karwar, Kiran Divekar,
	Yogesh Powar, Marc Yang, Frank Huang, Bing Zhao

This struct is not necessary.

Signed-off-by: Bing Zhao <bzhao@marvell.com>
Signed-off-by: Amitkumar Karwar <akarwar@marvell.com>
---
 drivers/net/wireless/mwifiex/ieee.h |    7 +------
 drivers/net/wireless/mwifiex/scan.c |   23 ++++++++++-------------
 2 files changed, 11 insertions(+), 19 deletions(-)

diff --git a/drivers/net/wireless/mwifiex/ieee.h b/drivers/net/wireless/mwifiex/ieee.h
index 877a9f8..1c95780 100644
--- a/drivers/net/wireless/mwifiex/ieee.h
+++ b/drivers/net/wireless/mwifiex/ieee.h
@@ -162,11 +162,6 @@ struct ieee_obss_scan_param {
 	u16 obss_scan_active_threshold;
 } __packed;
 
-struct ieee_types_2040bssco {
-	struct ieee_types_header ieee_hdr;
-	u8 bss_co_2040;
-} __packed;
-
 struct ieee_types_obss_scan_param {
 	struct ieee_types_header ieee_hdr;
 	struct ieee_obss_scan_param obss_scan;
@@ -202,7 +197,7 @@ struct mwifiex_bssdescriptor {
 	u16 ht_cap_offset;
 	struct ieee80211_ht_info *bcn_ht_info;
 	u16 ht_info_offset;
-	struct ieee_types_2040bssco *bcn_bss_co_2040;
+	u8 *bcn_bss_co_2040;
 	u16 bss_co_2040_offset;
 	u8 *bcn_ext_cap;
 	u16 ext_cap_offset;
diff --git a/drivers/net/wireless/mwifiex/scan.c b/drivers/net/wireless/mwifiex/scan.c
index 19a9494..2e33588 100644
--- a/drivers/net/wireless/mwifiex/scan.c
+++ b/drivers/net/wireless/mwifiex/scan.c
@@ -1540,11 +1540,11 @@ mwifiex_interpret_bss_desc_with_ie(struct mwifiex_adapter *adapter,
 					bss_entry->beacon_buf);
 			break;
 		case WLAN_EID_BSS_COEX_2040:
-			bss_entry->bcn_bss_co_2040 =
-				(struct ieee_types_2040bssco *) current_ptr;
-			bss_entry->bss_co_2040_offset =
-				(u16) (current_ptr -
-					 bss_entry->beacon_buf);
+			bss_entry->bcn_bss_co_2040 = (u8 *) (current_ptr +
+					sizeof(struct ieee_types_header));
+			bss_entry->bss_co_2040_offset = (u16) (current_ptr +
+					sizeof(struct ieee_types_header) -
+						bss_entry->beacon_buf);
 			break;
 		case WLAN_EID_EXT_CAPABILITY:
 			bss_entry->bcn_ext_cap = (u8 *) (current_ptr +
@@ -1655,7 +1655,7 @@ mwifiex_adjust_beacon_buffer_ptrs(struct mwifiex_private *priv,
 			}
 			if (adapter->scan_table[adj_idx].bcn_bss_co_2040) {
 				adapter->scan_table[adj_idx].bcn_bss_co_2040 =
-				(struct ieee_types_2040bssco *)
+				(u8 *)
 				(adapter->scan_table[adj_idx].beacon_buf +
 			       adapter->scan_table[adj_idx].bss_co_2040_offset);
 			}
@@ -1920,8 +1920,7 @@ mwifiex_ret_802_11_scan_store_beacon(struct mwifiex_private *priv,
 				 new_beacon->ht_info_offset);
 		}
 		if (new_beacon->bcn_bss_co_2040) {
-			new_beacon->bcn_bss_co_2040 =
-				(struct ieee_types_2040bssco *)
+			new_beacon->bcn_bss_co_2040 = (u8 *)
 				(new_beacon->beacon_buf +
 				 new_beacon->bss_co_2040_offset);
 		}
@@ -1995,8 +1994,7 @@ mwifiex_ret_802_11_scan_store_beacon(struct mwifiex_private *priv,
 			}
 			if (new_beacon->bcn_bss_co_2040) {
 				new_beacon->bcn_bss_co_2040 =
-					(struct ieee_types_2040bssco *)
-					(new_beacon->beacon_buf +
+					(u8 *) (new_beacon->beacon_buf +
 					 new_beacon->bss_co_2040_offset);
 			}
 			if (new_beacon->bcn_ext_cap) {
@@ -2282,7 +2280,7 @@ mwifiex_scan_delete_table_entry(struct mwifiex_private *priv, s32 table_idx)
 			}
 			if (adapter->scan_table[del_idx].bcn_bss_co_2040) {
 				adapter->scan_table[del_idx].bcn_bss_co_2040 =
-					(struct ieee_types_2040bssco *)
+					(u8 *)
 					(adapter->scan_table[del_idx].beacon_buf
 					 + adapter->scan_table[del_idx].
 					   bss_co_2040_offset);
@@ -3218,8 +3216,7 @@ mwifiex_restore_curr_bcn(struct mwifiex_private *priv)
 
 		if (curr_bss->bcn_bss_co_2040) {
 			curr_bss->bcn_bss_co_2040 =
-				(struct ieee_types_2040bssco *)
-				(curr_bss->beacon_buf +
+				(u8 *) (curr_bss->beacon_buf +
 				 curr_bss->bss_co_2040_offset);
 		}
 
-- 
1.7.0.2


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

* [PATCH 3/4] ieee80211: add IEEE80211_COUNTRY_STRING_LEN definition
  2011-03-05  5:22 [PATCH 1/4] mwifiex: remove struct ieee_bssco_2040 Bing Zhao
  2011-03-05  5:22 ` [PATCH 2/4] mwifiex: remove struct ieee_types_2040bssco Bing Zhao
@ 2011-03-05  5:22 ` Bing Zhao
  2011-03-07  7:33   ` Luciano Coelho
  2011-03-05  5:22 ` [PATCH 4/4] mwifiex: remove COUNTRY_CODE_LEN Bing Zhao
  2 siblings, 1 reply; 6+ messages in thread
From: Bing Zhao @ 2011-03-05  5:22 UTC (permalink / raw)
  To: linux-wireless
  Cc: John W. Linville, Johannes Berg, Amitkumar Karwar, Kiran Divekar,
	Yogesh Powar, Marc Yang, Frank Huang, Bing Zhao

and make use of it in wireless drivers

Signed-off-by: Bing Zhao <bzhao@marvell.com>
---
 drivers/net/wireless/at76c50x-usb.h        |    2 +-
 drivers/net/wireless/ipw2x00/ipw2200.h     |    2 +-
 drivers/net/wireless/libertas/host.h       |    2 +-
 drivers/net/wireless/wl1251/wl12xx_80211.h |    3 +--
 drivers/net/wireless/wl12xx/wl12xx_80211.h |    3 +--
 include/linux/ieee80211.h                  |    3 +++
 6 files changed, 8 insertions(+), 7 deletions(-)

diff --git a/drivers/net/wireless/at76c50x-usb.h b/drivers/net/wireless/at76c50x-usb.h
index 4a37447..f14a654 100644
--- a/drivers/net/wireless/at76c50x-usb.h
+++ b/drivers/net/wireless/at76c50x-usb.h
@@ -290,7 +290,7 @@ struct mib_mac_mgmt {
 	u8 res;
 	u8 multi_domain_capability_implemented;
 	u8 multi_domain_capability_enabled;
-	u8 country_string[3];
+	u8 country_string[IEEE80211_COUNTRY_STRING_LEN];
 	u8 reserved[3];
 } __packed;
 
diff --git a/drivers/net/wireless/ipw2x00/ipw2200.h b/drivers/net/wireless/ipw2x00/ipw2200.h
index d7d049c..d9e1d9b 100644
--- a/drivers/net/wireless/ipw2x00/ipw2200.h
+++ b/drivers/net/wireless/ipw2x00/ipw2200.h
@@ -961,7 +961,7 @@ struct ipw_country_channel_info {
 struct ipw_country_info {
 	u8 id;
 	u8 length;
-	u8 country_str[3];
+	u8 country_str[IEEE80211_COUNTRY_STRING_LEN];
 	struct ipw_country_channel_info groups[7];
 } __packed;
 
diff --git a/drivers/net/wireless/libertas/host.h b/drivers/net/wireless/libertas/host.h
index 5eac135..6cb6935 100644
--- a/drivers/net/wireless/libertas/host.h
+++ b/drivers/net/wireless/libertas/host.h
@@ -387,7 +387,7 @@ struct lbs_offset_value {
 struct mrvl_ie_domain_param_set {
 	struct mrvl_ie_header header;
 
-	u8 country_code[3];
+	u8 country_code[IEEE80211_COUNTRY_STRING_LEN];
 	struct ieee80211_country_ie_triplet triplet[MAX_11D_TRIPLETS];
 } __packed;
 
diff --git a/drivers/net/wireless/wl1251/wl12xx_80211.h b/drivers/net/wireless/wl1251/wl12xx_80211.h
index 1846280..1417b14 100644
--- a/drivers/net/wireless/wl1251/wl12xx_80211.h
+++ b/drivers/net/wireless/wl1251/wl12xx_80211.h
@@ -54,7 +54,6 @@
 
 /* This really should be 8, but not for our firmware */
 #define MAX_SUPPORTED_RATES 32
-#define COUNTRY_STRING_LEN 3
 #define MAX_COUNTRY_TRIPLETS 32
 
 /* Headers */
@@ -98,7 +97,7 @@ struct country_triplet {
 
 struct wl12xx_ie_country {
 	struct wl12xx_ie_header header;
-	u8 country_string[COUNTRY_STRING_LEN];
+	u8 country_string[IEEE80211_COUNTRY_STRING_LEN];
 	struct country_triplet triplets[MAX_COUNTRY_TRIPLETS];
 } __packed;
 
diff --git a/drivers/net/wireless/wl12xx/wl12xx_80211.h b/drivers/net/wireless/wl12xx/wl12xx_80211.h
index 67dcf8f..18fe542 100644
--- a/drivers/net/wireless/wl12xx/wl12xx_80211.h
+++ b/drivers/net/wireless/wl12xx/wl12xx_80211.h
@@ -55,7 +55,6 @@
 
 /* This really should be 8, but not for our firmware */
 #define MAX_SUPPORTED_RATES 32
-#define COUNTRY_STRING_LEN 3
 #define MAX_COUNTRY_TRIPLETS 32
 
 /* Headers */
@@ -99,7 +98,7 @@ struct country_triplet {
 
 struct wl12xx_ie_country {
 	struct wl12xx_ie_header header;
-	u8 country_string[COUNTRY_STRING_LEN];
+	u8 country_string[IEEE80211_COUNTRY_STRING_LEN];
 	struct country_triplet triplets[MAX_COUNTRY_TRIPLETS];
 } __packed;
 
diff --git a/include/linux/ieee80211.h b/include/linux/ieee80211.h
index 294169e..2d1c611 100644
--- a/include/linux/ieee80211.h
+++ b/include/linux/ieee80211.h
@@ -1325,6 +1325,9 @@ enum {
 /* Although the spec says 8 I'm seeing 6 in practice */
 #define IEEE80211_COUNTRY_IE_MIN_LEN	6
 
+/* The Country String field of the element shall be 3 octets in length */
+#define IEEE80211_COUNTRY_STRING_LEN	3
+
 /*
  * For regulatory extension stuff see IEEE 802.11-2007
  * Annex I (page 1141) and Annex J (page 1147). Also
-- 
1.7.0.2


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

* [PATCH 4/4] mwifiex: remove COUNTRY_CODE_LEN
  2011-03-05  5:22 [PATCH 1/4] mwifiex: remove struct ieee_bssco_2040 Bing Zhao
  2011-03-05  5:22 ` [PATCH 2/4] mwifiex: remove struct ieee_types_2040bssco Bing Zhao
  2011-03-05  5:22 ` [PATCH 3/4] ieee80211: add IEEE80211_COUNTRY_STRING_LEN definition Bing Zhao
@ 2011-03-05  5:22 ` Bing Zhao
  2 siblings, 0 replies; 6+ messages in thread
From: Bing Zhao @ 2011-03-05  5:22 UTC (permalink / raw)
  To: linux-wireless
  Cc: John W. Linville, Johannes Berg, Amitkumar Karwar, Kiran Divekar,
	Yogesh Powar, Marc Yang, Frank Huang, Bing Zhao

use IEEE80211_COUNTRY_STRING_LEN instead

Signed-off-by: Bing Zhao <bzhao@marvell.com>
---
 drivers/net/wireless/mwifiex/fw.h          |    2 +-
 drivers/net/wireless/mwifiex/ieee.h        |    1 -
 drivers/net/wireless/mwifiex/main.h        |    4 ++--
 drivers/net/wireless/mwifiex/sta_cmdresp.c |    8 +++-----
 4 files changed, 6 insertions(+), 9 deletions(-)

diff --git a/drivers/net/wireless/mwifiex/fw.h b/drivers/net/wireless/mwifiex/fw.h
index 038d7d6..861e64a 100644
--- a/drivers/net/wireless/mwifiex/fw.h
+++ b/drivers/net/wireless/mwifiex/fw.h
@@ -1062,7 +1062,7 @@ struct host_cmd_ds_802_11_bg_scan_query_rsp {
 
 struct mwifiex_ietypes_domain_param_set {
 	struct mwifiex_ie_types_header header;
-	u8 country_code[COUNTRY_CODE_LEN];
+	u8 country_code[IEEE80211_COUNTRY_STRING_LEN];
 	struct ieee80211_country_ie_triplet triplet[1];
 } __packed;
 
diff --git a/drivers/net/wireless/mwifiex/ieee.h b/drivers/net/wireless/mwifiex/ieee.h
index 1c95780..c4f5c79 100644
--- a/drivers/net/wireless/mwifiex/ieee.h
+++ b/drivers/net/wireless/mwifiex/ieee.h
@@ -150,7 +150,6 @@ struct ieee_types_wmm_parameter {
 } __packed;
 
 #define MWIFIEX_MAX_TRIPLET_802_11D		83
-#define COUNTRY_CODE_LEN			3
 
 struct ieee_obss_scan_param {
 	u16 obss_scan_passive_dwell;
diff --git a/drivers/net/wireless/mwifiex/main.h b/drivers/net/wireless/mwifiex/main.h
index 41aeebd..6503feb 100644
--- a/drivers/net/wireless/mwifiex/main.h
+++ b/drivers/net/wireless/mwifiex/main.h
@@ -290,7 +290,7 @@ enum state_11d_t {
 };
 
 struct mwifiex_802_11d_domain_reg {
-	u8 country_code[COUNTRY_CODE_LEN];
+	u8 country_code[IEEE80211_COUNTRY_STRING_LEN];
 	u8 no_of_triplet;
 	struct ieee80211_country_ie_triplet
 		triplet[MWIFIEX_MAX_TRIPLET_802_11D];
@@ -430,7 +430,7 @@ struct mwifiex_private {
 	u8 cfg_bssid[6];
 	struct workqueue_struct *workqueue;
 	struct work_struct cfg_workqueue;
-	u8 country_code[COUNTRY_CODE_LEN];
+	u8 country_code[IEEE80211_COUNTRY_STRING_LEN];
 	struct wps wps;
 	u8 scan_block;
 };
diff --git a/drivers/net/wireless/mwifiex/sta_cmdresp.c b/drivers/net/wireless/mwifiex/sta_cmdresp.c
index cb56489..ebd40b2 100644
--- a/drivers/net/wireless/mwifiex/sta_cmdresp.c
+++ b/drivers/net/wireless/mwifiex/sta_cmdresp.c
@@ -853,11 +853,9 @@ int mwifiex_ret_802_11d_domain_info(struct mwifiex_private *priv,
 	u16 action = le16_to_cpu(domain_info->action);
 	u8 no_of_triplet = 0;
 
-	no_of_triplet =
-		(u8) ((le16_to_cpu(domain->header.len) -
-					3) / sizeof(struct
-					ieee80211_country_ie_triplet));
-	/* Country code is 3 bytes */
+	no_of_triplet = (u8) ((le16_to_cpu(domain->header.len) -
+					IEEE80211_COUNTRY_STRING_LEN) /
+				sizeof(struct ieee80211_country_ie_triplet));
 
 	dev_dbg(priv->adapter->dev, "info: 11D Domain Info Resp:"
 			" no_of_triplet=%d\n", no_of_triplet);
-- 
1.7.0.2


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

* Re: [PATCH 3/4] ieee80211: add IEEE80211_COUNTRY_STRING_LEN definition
  2011-03-05  5:22 ` [PATCH 3/4] ieee80211: add IEEE80211_COUNTRY_STRING_LEN definition Bing Zhao
@ 2011-03-07  7:33   ` Luciano Coelho
  2011-03-07 15:10     ` John W. Linville
  0 siblings, 1 reply; 6+ messages in thread
From: Luciano Coelho @ 2011-03-07  7:33 UTC (permalink / raw)
  To: Bing Zhao
  Cc: linux-wireless, John W. Linville, Johannes Berg, Amitkumar Karwar,
	Kiran Divekar, Yogesh Powar, Marc Yang, Frank Huang

On Fri, 2011-03-04 at 21:22 -0800, Bing Zhao wrote:
> and make use of it in wireless drivers
> 
> Signed-off-by: Bing Zhao <bzhao@marvell.com>
> ---

For the wl12xx part:

Acked-by: Luciano Coelho <coelho@ti.com>

But I'd prefer if this patch was sent separately and not as part of a
mwifiex series. (But this is John's call anyway ;)

-- 
Cheers,
Luca.


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

* Re: [PATCH 3/4] ieee80211: add IEEE80211_COUNTRY_STRING_LEN definition
  2011-03-07  7:33   ` Luciano Coelho
@ 2011-03-07 15:10     ` John W. Linville
  0 siblings, 0 replies; 6+ messages in thread
From: John W. Linville @ 2011-03-07 15:10 UTC (permalink / raw)
  To: Luciano Coelho
  Cc: Bing Zhao, linux-wireless, Johannes Berg, Amitkumar Karwar,
	Kiran Divekar, Yogesh Powar, Marc Yang, Frank Huang

On Mon, Mar 07, 2011 at 09:33:02AM +0200, Luciano Coelho wrote:
> On Fri, 2011-03-04 at 21:22 -0800, Bing Zhao wrote:
> > and make use of it in wireless drivers
> > 
> > Signed-off-by: Bing Zhao <bzhao@marvell.com>
> > ---
> 
> For the wl12xx part:
> 
> Acked-by: Luciano Coelho <coelho@ti.com>
> 
> But I'd prefer if this patch was sent separately and not as part of a
> mwifiex series. (But this is John's call anyway ;)

Yes, probably better to send it separately.

John
-- 
John W. Linville		Someday the world will need a hero, and you
linville@tuxdriver.com			might be all we have.  Be ready.

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

end of thread, other threads:[~2011-03-07 15:15 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-03-05  5:22 [PATCH 1/4] mwifiex: remove struct ieee_bssco_2040 Bing Zhao
2011-03-05  5:22 ` [PATCH 2/4] mwifiex: remove struct ieee_types_2040bssco Bing Zhao
2011-03-05  5:22 ` [PATCH 3/4] ieee80211: add IEEE80211_COUNTRY_STRING_LEN definition Bing Zhao
2011-03-07  7:33   ` Luciano Coelho
2011-03-07 15:10     ` John W. Linville
2011-03-05  5:22 ` [PATCH 4/4] mwifiex: remove COUNTRY_CODE_LEN Bing Zhao

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).