All of lore.kernel.org
 help / color / mirror / Atom feed
* [RFC] wireless: add BlockAck frame structure
@ 2009-11-13 23:23 Christian Lamparter
  2009-11-13 23:27 ` Luis R. Rodriguez
  0 siblings, 1 reply; 2+ messages in thread
From: Christian Lamparter @ 2009-11-13 23:23 UTC (permalink / raw)
  To: linux-wireless; +Cc: Johannes Berg, Jouni Malinen, linville

This patch adds the BlockAck frame structure as described in
802.11n specification section 7.2.1.8.

Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
---
I'm not sure if:
 - everyone will be happy about ext. ieee80211_ba_cb structure?
 - this structure should a part of ieee80211_bar?
---
diff --git a/include/linux/ieee80211.h b/include/linux/ieee80211.h
index 49b1abd..cda0b23 100644
--- a/include/linux/ieee80211.h
+++ b/include/linux/ieee80211.h
@@ -747,10 +747,48 @@ struct ieee80211_bar {
 	__le16 start_seq_num;
 } __attribute__((packed));
 
-/* 802.11 BAR control masks */
+/* 802.11 BA(R) control masks */
 #define IEEE80211_BAR_CTRL_ACK_POLICY_NORMAL     0x0000
+#define IEEE80211_BAR_CTRL_MULTI_TID		 0x0002
 #define IEEE80211_BAR_CTRL_CBMTID_COMPRESSED_BA  0x0004
 
+/**
+ * struct ieee80211_ba_cb - Compressed BlockAck variant
+ *
+ * This structure refers to "BA Information field" as
+ * described in 802.11n specification section 7.2.1.8.3
+ */
+struct ieee80211_ba_cb {
+	__le16 start_seq_num;
+	__u8 bitmap[8];
+} __attribute__((packed));
+
+/**
+ * struct ieee80211_ba - BlockAck frame
+ *
+ * This structure refers to "BlockAck frame" as
+ * described in 802.11n specification section 7.2.1.8.1
+ */
+struct ieee80211_ba {
+	__le16 frame_control;
+	__le16 duration;
+	__u8 ra[6];
+	__u8 ta[6];
+	__le16 control;
+	union {
+		struct {
+			__le16 start_seq_num;
+			__u8 bitmap[128];
+		} basic __attribute__((packed));
+
+		struct ieee80211_ba_cb cb;
+
+		struct {
+			__le16 per_tid;
+			struct ieee80211_ba_cb cb;
+		} cbmtid[0] __attribute__((packed));
+	} __attribute__((packed));
+} __attribute__((packed));
 
 #define IEEE80211_HT_MCS_MASK_LEN		10
 

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

end of thread, other threads:[~2009-11-13 23:27 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-11-13 23:23 [RFC] wireless: add BlockAck frame structure Christian Lamparter
2009-11-13 23:27 ` Luis R. Rodriguez

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.