diff options
Diffstat (limited to 'drivers/net/wireless/wl12xx/wl1271_rx.c')
-rw-r--r-- | drivers/net/wireless/wl12xx/wl1271_rx.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/drivers/net/wireless/wl12xx/wl1271_rx.c b/drivers/net/wireless/wl12xx/wl1271_rx.c index 6730f5b96e76..b824c6cc2cc5 100644 --- a/drivers/net/wireless/wl12xx/wl1271_rx.c +++ b/drivers/net/wireless/wl12xx/wl1271_rx.c | |||
@@ -25,7 +25,6 @@ | |||
25 | #include "wl1271_acx.h" | 25 | #include "wl1271_acx.h" |
26 | #include "wl1271_reg.h" | 26 | #include "wl1271_reg.h" |
27 | #include "wl1271_rx.h" | 27 | #include "wl1271_rx.h" |
28 | #include "wl1271_spi.h" | ||
29 | #include "wl1271_io.h" | 28 | #include "wl1271_io.h" |
30 | 29 | ||
31 | static u8 wl1271_rx_get_mem_block(struct wl1271_fw_status *status, | 30 | static u8 wl1271_rx_get_mem_block(struct wl1271_fw_status *status, |
@@ -160,6 +159,13 @@ static void wl1271_rx_handle_data(struct wl1271 *wl, u32 length) | |||
160 | u8 *buf; | 159 | u8 *buf; |
161 | u8 beacon = 0; | 160 | u8 beacon = 0; |
162 | 161 | ||
162 | /* | ||
163 | * In PLT mode we seem to get frames and mac80211 warns about them, | ||
164 | * workaround this by not retrieving them at all. | ||
165 | */ | ||
166 | if (unlikely(wl->state == WL1271_STATE_PLT)) | ||
167 | return; | ||
168 | |||
163 | skb = __dev_alloc_skb(length, GFP_KERNEL); | 169 | skb = __dev_alloc_skb(length, GFP_KERNEL); |
164 | if (!skb) { | 170 | if (!skb) { |
165 | wl1271_error("Couldn't allocate RX frame"); | 171 | wl1271_error("Couldn't allocate RX frame"); |
@@ -218,6 +224,7 @@ void wl1271_rx(struct wl1271 *wl, struct wl1271_fw_status *status) | |||
218 | 224 | ||
219 | wl->rx_counter++; | 225 | wl->rx_counter++; |
220 | drv_rx_counter = wl->rx_counter & NUM_RX_PKT_DESC_MOD_MASK; | 226 | drv_rx_counter = wl->rx_counter & NUM_RX_PKT_DESC_MOD_MASK; |
221 | wl1271_write32(wl, RX_DRIVER_COUNTER_ADDRESS, wl->rx_counter); | ||
222 | } | 227 | } |
228 | |||
229 | wl1271_write32(wl, RX_DRIVER_COUNTER_ADDRESS, wl->rx_counter); | ||
223 | } | 230 | } |