summaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/b43/pio.c
diff options
context:
space:
mode:
authorRafał Miłecki <zajec5@gmail.com>2011-08-11 17:16:27 +0200
committerJohn W. Linville <linville@tuxdriver.com>2011-08-22 14:45:59 -0400
commit17030f48e31adde5b043741c91ba143f5f7db0fd (patch)
tree2a3ad5748e949da0dcbdfe9139db82030f809969 /drivers/net/wireless/b43/pio.c
parent5d852905561a979dfb4d8a68f7313dcb8f055bec (diff)
downloadlinux-17030f48e31adde5b043741c91ba143f5f7db0fd.tar.bz2
b43: support new RX header, noticed to be used in 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/pio.c')
-rw-r--r--drivers/net/wireless/b43/pio.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/drivers/net/wireless/b43/pio.c b/drivers/net/wireless/b43/pio.c
index 6e4228c3ed1b..ce8a4bdc7e1d 100644
--- a/drivers/net/wireless/b43/pio.c
+++ b/drivers/net/wireless/b43/pio.c
@@ -676,7 +676,15 @@ data_ready:
goto rx_error;
}
- macstat = le32_to_cpu(rxhdr->mac_status);
+ switch (dev->fw.hdr_format) {
+ case B43_FW_HDR_598:
+ macstat = le32_to_cpu(rxhdr->format_598.mac_status);
+ break;
+ case B43_FW_HDR_410:
+ case B43_FW_HDR_351:
+ macstat = le32_to_cpu(rxhdr->format_351.mac_status);
+ break;
+ }
if (macstat & B43_RX_MAC_FCSERR) {
if (!(q->dev->wl->filter_flags & FIF_FCSFAIL)) {
/* Drop frames with failed FCS. */