wl12xx: AP-mode - configure STA HT rates on join

When a new STA joins the BSS, configure the HT rates it supports to the
FW.

Signed-off-by: Arik Nemtsov <arik@wizery.com>
Signed-off-by: Eliad Peller <eliad@wizery.com>
Signed-off-by: Luciano Coelho <coelho@ti.com>
This commit is contained in:
Arik Nemtsov 2011-08-14 13:17:28 +03:00 committed by Luciano Coelho
parent 0b932ab9f1
commit 99d5ad7b9c

View File

@ -1415,10 +1415,12 @@ out_free:
out: out:
return ret; return ret;
} }
int wl12xx_cmd_add_peer(struct wl1271 *wl, struct ieee80211_sta *sta, u8 hlid) int wl12xx_cmd_add_peer(struct wl1271 *wl, struct ieee80211_sta *sta, u8 hlid)
{ {
struct wl12xx_cmd_add_peer *cmd; struct wl12xx_cmd_add_peer *cmd;
int ret; int ret;
u32 sta_rates;
wl1271_debug(DEBUG_CMD, "cmd add peer %d", (int)hlid); wl1271_debug(DEBUG_CMD, "cmd add peer %d", (int)hlid);
@ -1437,8 +1439,12 @@ int wl12xx_cmd_add_peer(struct wl1271 *wl, struct ieee80211_sta *sta, u8 hlid)
cmd->hlid = hlid; cmd->hlid = hlid;
cmd->wmm = sta->wme ? 1 : 0; cmd->wmm = sta->wme ? 1 : 0;
cmd->supported_rates = cpu_to_le32(wl1271_tx_enabled_rates_get(wl, sta_rates = sta->supp_rates[wl->band];
sta->supp_rates[wl->band])); if (sta->ht_cap.ht_supported)
sta_rates |= sta->ht_cap.mcs.rx_mask[0] << HW_HT_RATES_OFFSET;
cmd->supported_rates =
cpu_to_le32(wl1271_tx_enabled_rates_get(wl, sta_rates));
wl1271_debug(DEBUG_CMD, "new peer rates: 0x%x", cmd->supported_rates); wl1271_debug(DEBUG_CMD, "new peer rates: 0x%x", cmd->supported_rates);