* [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.