summaryrefslogtreecommitdiff
path: root/drivers/net/wireless/wl12xx/rx.h
diff options
context:
space:
mode:
authorShahar Levi <shahar_levi@ti.com>2011-07-14 12:50:27 +0400
committerLuciano Coelho <coelho@ti.com>2011-08-12 10:22:49 +0400
commit0a1d3abcc43231e341b6890b873dc27cba848218 (patch)
tree2b124bbeaf8f32d9ea13489ab917aa38cef16248 /drivers/net/wireless/wl12xx/rx.h
parentf612cedfe152b536197c0120f2e7779bc90219d0 (diff)
downloadlinux-0a1d3abcc43231e341b6890b873dc27cba848218.tar.xz
wl12xx: Add support to RX packets payload alignment
In case of QoS packets the packet payload isn't aligned to 4 bytes. In that case the mac80211 layer take care of that via memmove() in ieee80211_deliver_skb(). Add support of copy packets from aggregation buffer to the skbs with packet payload aligned care. In case of QoS packets copy the packets in offset of 2 bytes guarantee payload aligned to 4 bytes. Signed-off-by: Shahar Levi <shahar_levi@ti.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
Diffstat (limited to 'drivers/net/wireless/wl12xx/rx.h')
-rw-r--r--drivers/net/wireless/wl12xx/rx.h8
1 files changed, 5 insertions, 3 deletions
diff --git a/drivers/net/wireless/wl12xx/rx.h b/drivers/net/wireless/wl12xx/rx.h
index c88e3fa1d603..0325b9de612e 100644
--- a/drivers/net/wireless/wl12xx/rx.h
+++ b/drivers/net/wireless/wl12xx/rx.h
@@ -93,9 +93,11 @@
#define WL1271_RX_DESC_MIC_FAIL 0x02
#define WL1271_RX_DESC_DRIVER_RX_Q_FAIL 0x03
-#define RX_MEM_BLOCK_MASK 0xFF
-#define RX_BUF_SIZE_MASK 0xFFF00
-#define RX_BUF_SIZE_SHIFT_DIV 6
+#define RX_MEM_BLOCK_MASK 0xFF
+#define RX_BUF_SIZE_MASK 0xFFF00
+#define RX_BUF_SIZE_SHIFT_DIV 6
+/* If set, the start of IP payload is not 4 bytes aligned */
+#define RX_BUF_UNALIGNED_PAYLOAD BIT(20)
enum {
WL12XX_RX_CLASS_UNKNOWN,