b43: fix the wrong assignment of status.freq in b43_rx()
authorZHAO Gang <gamerh2o@gmail.com>
Fri, 17 Jan 2014 16:17:38 +0000 (00:17 +0800)
committerJohn W. Linville <linville@tuxdriver.com>
Thu, 23 Jan 2014 19:02:45 +0000 (14:02 -0500)
Use the right function to update frequency value.

If rx skb is probe response or beacon, the wrong frequency value can
cause problem that bss info can't be updated when it should be.

Cc: <stable@vger.kernel.org>
Fixes: 8318d78a44d4 ("cfg80211 API for channels/bitrates, mac80211
and driver conversion")
Signed-off-by: ZHAO Gang <gamerh2o@gmail.com>
Acked-by: Larry Finger <Larry.Finger@lwfinger.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
drivers/net/wireless/b43/xmit.c

index 4ae63f4ddfb20394d1a38c4847b5c5732887f277..50e5ddb12fb3f6bf97217819a862c5d508ec0bd4 100644 (file)
@@ -821,10 +821,10 @@ void b43_rx(struct b43_wldev *dev, struct sk_buff *skb, const void *_rxhdr)
                 * channel number in b43. */
                if (chanstat & B43_RX_CHAN_5GHZ) {
                        status.band = IEEE80211_BAND_5GHZ;
-                       status.freq = b43_freq_to_channel_5ghz(chanid);
+                       status.freq = b43_channel_to_freq_5ghz(chanid);
                } else {
                        status.band = IEEE80211_BAND_2GHZ;
-                       status.freq = b43_freq_to_channel_2ghz(chanid);
+                       status.freq = b43_channel_to_freq_2ghz(chanid);
                }
                break;
        default: