summaryrefslogtreecommitdiff
path: root/drivers/net/wireless/ti/wl12xx
diff options
context:
space:
mode:
authorArik Nemtsov <arik@wizery.com>2012-05-18 07:46:40 +0300
committerLuciano Coelho <coelho@ti.com>2012-06-06 19:28:05 +0300
commita1c597f2b22cdc228de3c58784b00e80b9b53e03 (patch)
treeeac1d01f867fd3f8df77fae3b050dba94c95e5b9 /drivers/net/wireless/ti/wl12xx
parent2c38849f4a247673c8203a569444042e32d82410 (diff)
wlcore/wl12xx/wl18xx: implement op_set_key per HW arch
The 12xx set_key just calls the common wlcore_set_key function, in order to program the keys into the FW. The 18xx variant changes the spare block count when a GEM or TKIP key is set. Also modify the get_spare_blocks HW op for 18xx to return the correct numbers of spare blocks, according to what is currently set in FW. Signed-off-by: Arik Nemtsov <arik@wizery.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
Diffstat (limited to 'drivers/net/wireless/ti/wl12xx')
-rw-r--r--drivers/net/wireless/ti/wl12xx/main.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/drivers/net/wireless/ti/wl12xx/main.c b/drivers/net/wireless/ti/wl12xx/main.c
index 03ff1ce56bb4..2f6a39bfcf18 100644
--- a/drivers/net/wireless/ti/wl12xx/main.c
+++ b/drivers/net/wireless/ti/wl12xx/main.c
@@ -1369,6 +1369,14 @@ static int wl12xx_get_spare_blocks(struct wl1271 *wl, bool is_gem)
return WL12XX_TX_HW_BLOCK_SPARE_DEFAULT;
}
+static int wl12xx_set_key(struct wl1271 *wl, enum set_key_cmd cmd,
+ struct ieee80211_vif *vif,
+ struct ieee80211_sta *sta,
+ struct ieee80211_key_conf *key_conf)
+{
+ return wlcore_set_key(wl, cmd, vif, sta, key_conf);
+}
+
static struct wlcore_ops wl12xx_ops = {
.identify_chip = wl12xx_identify_chip,
.identify_fw = wl12xx_identify_fw,
@@ -1393,6 +1401,7 @@ static struct wlcore_ops wl12xx_ops = {
.ap_get_mimo_wide_rate_mask = NULL,
.debugfs_init = wl12xx_debugfs_add_files,
.get_spare_blocks = wl12xx_get_spare_blocks,
+ .set_key = wl12xx_set_key,
};
static struct ieee80211_sta_ht_cap wl12xx_ht_cap = {