aboutsummaryrefslogtreecommitdiff
path: root/drivers/net/wireless/b43/xmit.h
diff options
context:
space:
mode:
authorRafał Miłecki <zajec5@gmail.com>2011-08-11 15:07:16 +0200
committerJohn W. Linville <linville@tuxdriver.com>2011-08-22 14:45:58 -0400
commit5d852905561a979dfb4d8a68f7313dcb8f055bec (patch)
treef0d88c585de7e886aba645f63c0a1dad08d38690 /drivers/net/wireless/b43/xmit.h
parentefe0249b0fd1e9a32a7e6a5dc9c751d4d97b0adf (diff)
b43: support new TX header, noticed to be used by 598.314+ fw
Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/b43/xmit.h')
-rw-r--r--drivers/net/wireless/b43/xmit.h19
1 files changed, 19 insertions, 0 deletions
diff --git a/drivers/net/wireless/b43/xmit.h b/drivers/net/wireless/b43/xmit.h
index a3ff727d27f..dccf7c1b20a 100644
--- a/drivers/net/wireless/b43/xmit.h
+++ b/drivers/net/wireless/b43/xmit.h
@@ -46,6 +46,23 @@ struct b43_txhdr {
__le32 timeout; /* Timeout */
union {
+ /* Tested with 598.314, 644.1001 and 666.2 */
+ struct {
+ __le16 mimo_antenna; /* MIMO antenna select */
+ __le16 preload_size; /* Preload size */
+ PAD_BYTES(2);
+ __le16 cookie; /* TX frame cookie */
+ __le16 tx_status; /* TX status */
+ __le16 max_n_mpdus;
+ __le16 max_a_bytes_mrt;
+ __le16 max_a_bytes_fbr;
+ __le16 min_m_bytes;
+ struct b43_plcp_hdr6 rts_plcp; /* RTS PLCP header */
+ __u8 rts_frame[16]; /* The RTS frame (if used) */
+ PAD_BYTES(2);
+ struct b43_plcp_hdr6 plcp; /* Main PLCP header */
+ } format_598 __packed;
+
/* Tested with 410.2160, 478.104 and 508.* */
struct {
__le16 mimo_antenna; /* MIMO antenna select */
@@ -170,6 +187,8 @@ static inline
size_t b43_txhdr_size(struct b43_wldev *dev)
{
switch (dev->fw.hdr_format) {
+ case B43_FW_HDR_598:
+ return 112 + sizeof(struct b43_plcp_hdr6);
case B43_FW_HDR_410:
return 104 + sizeof(struct b43_plcp_hdr6);
case B43_FW_HDR_351: