aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/ath/ath9k/beacon.c
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@openwrt.org>2009-11-23 16:21:01 -0500
committerJohn W. Linville <linville@tuxdriver.com>2009-11-28 15:04:24 -0500
commit545750d36fa78203e28acefb4bab61ebb7c4d197 (patch)
treec9810428acf0bd673c6cd9ed74e6eb273c923842 /drivers/net/wireless/ath/ath9k/beacon.c
parent04658fba2314d6d70d5fa05c0b5995e6428aacc3 (diff)
ath9k: properly use the mac80211 rate control api
This patch changes ath9k to pass proper MCS indexes and flags between the RC and the rest of the driver code. sc->cur_rate_table remains, as it's used by the RC code internally, but the rest of the driver code no longer uses it, so a potential new RC for ath9k would not have to update it. Signed-off-by: Felix Fietkau <nbd@openwrt.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/ath/ath9k/beacon.c')
-rw-r--r--drivers/net/wireless/ath/ath9k/beacon.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/drivers/net/wireless/ath/ath9k/beacon.c b/drivers/net/wireless/ath/ath9k/beacon.c
index b10c884f2933..cb774cc828a3 100644
--- a/drivers/net/wireless/ath/ath9k/beacon.c
+++ b/drivers/net/wireless/ath/ath9k/beacon.c
@@ -65,9 +65,9 @@ static void ath_beacon_setup(struct ath_softc *sc, struct ath_vif *avp,
65 struct ath_common *common = ath9k_hw_common(ah); 65 struct ath_common *common = ath9k_hw_common(ah);
66 struct ath_desc *ds; 66 struct ath_desc *ds;
67 struct ath9k_11n_rate_series series[4]; 67 struct ath9k_11n_rate_series series[4];
68 const struct ath_rate_table *rt;
69 int flags, antenna, ctsrate = 0, ctsduration = 0; 68 int flags, antenna, ctsrate = 0, ctsduration = 0;
70 u8 rate; 69 struct ieee80211_supported_band *sband;
70 u8 rate = 0;
71 71
72 ds = bf->bf_desc; 72 ds = bf->bf_desc;
73 flags = ATH9K_TXDESC_NOACK; 73 flags = ATH9K_TXDESC_NOACK;
@@ -91,10 +91,10 @@ static void ath_beacon_setup(struct ath_softc *sc, struct ath_vif *avp,
91 91
92 ds->ds_data = bf->bf_buf_addr; 92 ds->ds_data = bf->bf_buf_addr;
93 93
94 rt = sc->cur_rate_table; 94 sband = &sc->sbands[common->hw->conf.channel->band];
95 rate = rt->info[0].ratecode; 95 rate = sband->bitrates[0].hw_value;
96 if (sc->sc_flags & SC_OP_PREAMBLE_SHORT) 96 if (sc->sc_flags & SC_OP_PREAMBLE_SHORT)
97 rate |= rt->info[0].short_preamble; 97 rate |= sband->bitrates[0].hw_value_short;
98 98
99 ath9k_hw_set11n_txdesc(ah, ds, skb->len + FCS_LEN, 99 ath9k_hw_set11n_txdesc(ah, ds, skb->len + FCS_LEN,
100 ATH9K_PKT_TYPE_BEACON, 100 ATH9K_PKT_TYPE_BEACON,