summaryrefslogtreecommitdiff
path: root/drivers/net/wireless/ti/wl18xx/main.c
diff options
context:
space:
mode:
authorEliad Peller <eliad@wizery.com>2012-11-28 11:42:31 +0200
committerLuciano Coelho <coelho@ti.com>2012-12-11 09:35:34 +0200
commit530abe195df6918d43c9381fd9a70b7e16d55036 (patch)
treeac8b080cfd5732de975c76e54d7244ec83a0a93b /drivers/net/wireless/ti/wl18xx/main.c
parent4d703847617fa053689b119e43122088c81ef86d (diff)
wlcore: add ACX_PEER_CAP command
ACX_PEER_CAP command is just ACX_PEER_HT_CAP, but allows configuring the peer's support rates as well. this is needed because we start the station role when the remote rates are not known yet. the two commands should be unified in future fw versions, but for now add a new set_peer_cap per-hw op, that will use ACX_PEER_CAP for 18xx, and ACX_PEER_HT_CAP for 12xx. Signed-off-by: Eliad Peller <eliad@wizery.com> Signed-off-by: Arik Nemtsov <arik@wizery.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
Diffstat (limited to 'drivers/net/wireless/ti/wl18xx/main.c')
-rw-r--r--drivers/net/wireless/ti/wl18xx/main.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/drivers/net/wireless/ti/wl18xx/main.c b/drivers/net/wireless/ti/wl18xx/main.c
index a5119d3d5e70..55fd46b9628d 100644
--- a/drivers/net/wireless/ti/wl18xx/main.c
+++ b/drivers/net/wireless/ti/wl18xx/main.c
@@ -1386,6 +1386,14 @@ out:
mutex_unlock(&wl->mutex);
}
+static int wl18xx_set_peer_cap(struct wl1271 *wl,
+ struct ieee80211_sta_ht_cap *ht_cap,
+ bool allow_ht_operation,
+ u32 rate_set, u8 hlid)
+{
+ return wl18xx_acx_set_peer_cap(wl, ht_cap, allow_ht_operation,
+ rate_set, hlid);
+}
static int wl18xx_setup(struct wl1271 *wl);
@@ -1423,6 +1431,7 @@ static struct wlcore_ops wl18xx_ops = {
.channel_switch = wl18xx_cmd_channel_switch,
.pre_pkt_send = wl18xx_pre_pkt_send,
.sta_rc_update = wl18xx_sta_rc_update,
+ .set_peer_cap = wl18xx_set_peer_cap,
};
/* HT cap appropriate for wide channels in 2Ghz */