diff options
Diffstat (limited to 'drivers/net/wireless/bcm43xx/bcm43xx_main.c')
-rw-r--r-- | drivers/net/wireless/bcm43xx/bcm43xx_main.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/drivers/net/wireless/bcm43xx/bcm43xx_main.c b/drivers/net/wireless/bcm43xx/bcm43xx_main.c index be60a6509f20..4b4e60a22c0b 100644 --- a/drivers/net/wireless/bcm43xx/bcm43xx_main.c +++ b/drivers/net/wireless/bcm43xx/bcm43xx_main.c | |||
@@ -4097,7 +4097,6 @@ int fastcall bcm43xx_rx(struct bcm43xx_private *bcm, | |||
4097 | } | 4097 | } |
4098 | 4098 | ||
4099 | frame_ctl = le16_to_cpu(wlhdr->frame_ctl); | 4099 | frame_ctl = le16_to_cpu(wlhdr->frame_ctl); |
4100 | |||
4101 | if ((frame_ctl & IEEE80211_FCTL_PROTECTED) && !bcm->ieee->host_decrypt) { | 4100 | if ((frame_ctl & IEEE80211_FCTL_PROTECTED) && !bcm->ieee->host_decrypt) { |
4102 | frame_ctl &= ~IEEE80211_FCTL_PROTECTED; | 4101 | frame_ctl &= ~IEEE80211_FCTL_PROTECTED; |
4103 | wlhdr->frame_ctl = cpu_to_le16(frame_ctl); | 4102 | wlhdr->frame_ctl = cpu_to_le16(frame_ctl); |
@@ -4113,12 +4112,12 @@ int fastcall bcm43xx_rx(struct bcm43xx_private *bcm, | |||
4113 | skb_trim(skb, skb->len - 4); | 4112 | skb_trim(skb, skb->len - 4); |
4114 | stats.len -= 8; | 4113 | stats.len -= 8; |
4115 | } | 4114 | } |
4116 | /* do _not_ use wlhdr again without reassigning it */ | 4115 | wlhdr = (struct ieee80211_hdr_4addr *)(skb->data); |
4117 | } | 4116 | } |
4118 | 4117 | ||
4119 | switch (WLAN_FC_GET_TYPE(frame_ctl)) { | 4118 | switch (WLAN_FC_GET_TYPE(frame_ctl)) { |
4120 | case IEEE80211_FTYPE_MGMT: | 4119 | case IEEE80211_FTYPE_MGMT: |
4121 | ieee80211_rx_mgt(bcm->ieee, skb->data, &stats); | 4120 | ieee80211_rx_mgt(bcm->ieee, wlhdr, &stats); |
4122 | break; | 4121 | break; |
4123 | case IEEE80211_FTYPE_DATA: | 4122 | case IEEE80211_FTYPE_DATA: |
4124 | if (is_packet_for_us) | 4123 | if (is_packet_for_us) |
@@ -4143,7 +4142,7 @@ static inline int bcm43xx_tx(struct bcm43xx_private *bcm, | |||
4143 | if (bcm->pio_mode) | 4142 | if (bcm->pio_mode) |
4144 | err = bcm43xx_pio_transfer_txb(bcm, txb); | 4143 | err = bcm43xx_pio_transfer_txb(bcm, txb); |
4145 | else | 4144 | else |
4146 | err = bcm43xx_dma_transfer_txb(bcm, txb); | 4145 | err = bcm43xx_dma_tx(bcm, txb); |
4147 | 4146 | ||
4148 | return err; | 4147 | return err; |
4149 | } | 4148 | } |