public inbox for linux-wireless@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH] mac80211: include HT capabilities in probe request
@ 2009-03-26 17:31 Johannes Berg
  2009-03-26 17:39 ` Johannes Berg
  2009-03-26 17:51 ` [PATCH v2] " Johannes Berg
  0 siblings, 2 replies; 3+ messages in thread
From: Johannes Berg @ 2009-03-26 17:31 UTC (permalink / raw)
  To: John Linville; +Cc: Jouni Malinen, linux-wireless

Include the HT capabilities in the probe request frame.

Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
---
 net/mac80211/ieee80211_i.h |    3 ++-
 net/mac80211/util.c        |   14 ++++++++++++++
 2 files changed, 16 insertions(+), 1 deletion(-)

--- wireless-testing.orig/net/mac80211/ieee80211_i.h	2009-03-26 17:49:04.000000000 +0100
+++ wireless-testing/net/mac80211/ieee80211_i.h	2009-03-26 17:49:24.000000000 +0100
@@ -53,7 +53,8 @@ struct ieee80211_local;
 
 /* cfg80211 only supports 32 rates */
 #define MAC80211_PREQ_IE_LEN	( 2 + 32 /* SSID */\
-				+ 4 + 32 /* (ext) supp rates */)
+				+ 4 + 32 /* (ext) supp rates */\
+				+ sizeof(struct ieee80211_ht_cap))
 
 /*
  * Time after which we ignore scan results and no longer report/use
--- wireless-testing.orig/net/mac80211/util.c	2009-03-26 17:48:40.000000000 +0100
+++ wireless-testing/net/mac80211/util.c	2009-03-26 17:50:31.000000000 +0100
@@ -862,6 +862,20 @@ int ieee80211_build_preq_ies(struct ieee
 		*pos++ = rate->bitrate / 5;
 	}
 
+	if (sband->ht_cap.ht_supported) {
+		__le16 tmp = cpu_to_le16(sband->ht_cap.cap);
+
+		*pos++ = WLAN_EID_HT_CAPABILITY;
+		*pos++ = sizeof(struct ieee80211_ht_cap);
+		memset(pos, 0, sizeof(struct ieee80211_ht_cap));
+		memcpy(pos, &tmp, sizeof(u16));
+		pos += sizeof(u16);
+		/* TODO: needs a define here for << 2 */
+		*pos++ = sband->ht_cap.ampdu_factor |
+			 (sband->ht_cap.ampdu_density << 2);
+		memcpy(pos, &sband->ht_cap.mcs, sizeof(sband->ht_cap.mcs));
+	}
+
 	/* if adding more here, adjust MAC80211_PREQ_IE_LEN */
 
 	if (ie) {



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

* Re: [PATCH] mac80211: include HT capabilities in probe request
  2009-03-26 17:31 [PATCH] mac80211: include HT capabilities in probe request Johannes Berg
@ 2009-03-26 17:39 ` Johannes Berg
  2009-03-26 17:51 ` [PATCH v2] " Johannes Berg
  1 sibling, 0 replies; 3+ messages in thread
From: Johannes Berg @ 2009-03-26 17:39 UTC (permalink / raw)
  To: John Linville; +Cc: Jouni Malinen, linux-wireless

[-- Attachment #1: Type: text/plain, Size: 153 bytes --]

On Thu, 2009-03-26 at 18:31 +0100, Johannes Berg wrote:
> Include the HT capabilities in the probe request frame.

this patch is broken.

johannes

[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 836 bytes --]

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

* [PATCH v2] mac80211: include HT capabilities in probe request
  2009-03-26 17:31 [PATCH] mac80211: include HT capabilities in probe request Johannes Berg
  2009-03-26 17:39 ` Johannes Berg
@ 2009-03-26 17:51 ` Johannes Berg
  1 sibling, 0 replies; 3+ messages in thread
From: Johannes Berg @ 2009-03-26 17:51 UTC (permalink / raw)
  To: John Linville; +Cc: Jouni Malinen, linux-wireless

Include the HT capabilities in the probe request frame.

Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
---
v2: fix the HT IE

 net/mac80211/ieee80211_i.h |    3 ++-
 net/mac80211/util.c        |   16 ++++++++++++++++
 2 files changed, 18 insertions(+), 1 deletion(-)

--- wireless-testing.orig/net/mac80211/ieee80211_i.h	2009-03-26 18:21:59.000000000 +0100
+++ wireless-testing/net/mac80211/ieee80211_i.h	2009-03-26 18:28:44.000000000 +0100
@@ -53,7 +53,8 @@ struct ieee80211_local;
 
 /* cfg80211 only supports 32 rates */
 #define MAC80211_PREQ_IE_LEN	( 2 + 32 /* SSID */\
-				+ 4 + 32 /* (ext) supp rates */)
+				+ 4 + 32 /* (ext) supp rates */\
+				+ sizeof(struct ieee80211_ht_cap))
 
 /*
  * Time after which we ignore scan results and no longer report/use
--- wireless-testing.orig/net/mac80211/util.c	2009-03-26 18:21:59.000000000 +0100
+++ wireless-testing/net/mac80211/util.c	2009-03-26 18:46:22.000000000 +0100
@@ -862,6 +862,22 @@ int ieee80211_build_preq_ies(struct ieee
 		*pos++ = rate->bitrate / 5;
 	}
 
+	if (sband->ht_cap.ht_supported) {
+		__le16 tmp = cpu_to_le16(sband->ht_cap.cap);
+
+		*pos++ = WLAN_EID_HT_CAPABILITY;
+		*pos++ = sizeof(struct ieee80211_ht_cap);
+		memset(pos, 0, sizeof(struct ieee80211_ht_cap));
+		memcpy(pos, &tmp, sizeof(u16));
+		pos += sizeof(u16);
+		/* TODO: needs a define here for << 2 */
+		*pos++ = sband->ht_cap.ampdu_factor |
+			 (sband->ht_cap.ampdu_density << 2);
+		memcpy(pos, &sband->ht_cap.mcs, sizeof(sband->ht_cap.mcs));
+		pos += sizeof(sband->ht_cap.mcs);
+		pos += 2 + 4 + 1; /* ext info, BF cap, antsel */
+	}
+
 	/* if adding more here, adjust MAC80211_PREQ_IE_LEN */
 
 	if (ie) {



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

end of thread, other threads:[~2009-03-26 17:52 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-03-26 17:31 [PATCH] mac80211: include HT capabilities in probe request Johannes Berg
2009-03-26 17:39 ` Johannes Berg
2009-03-26 17:51 ` [PATCH v2] " Johannes Berg

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox