diff options
author | Shahar Levi <shahar_levi@ti.com> | 2011-07-14 12:50:27 +0400 |
---|---|---|
committer | Luciano Coelho <coelho@ti.com> | 2011-08-12 10:22:49 +0400 |
commit | 0a1d3abcc43231e341b6890b873dc27cba848218 (patch) | |
tree | 2b124bbeaf8f32d9ea13489ab917aa38cef16248 /drivers/net/wireless/wl12xx/rx.h | |
parent | f612cedfe152b536197c0120f2e7779bc90219d0 (diff) | |
download | linux-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.h | 8 |
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, |