diff options
author | Eliad Peller <eliad@wizery.com> | 2011-08-14 06:17:06 -0400 |
---|---|---|
committer | Luciano Coelho <coelho@ti.com> | 2011-08-22 05:35:24 -0400 |
commit | 7f097988f1bff42177b99cb4c8ec62e818d0b1a6 (patch) | |
tree | f91aee4e7928ed9dec97822ab62d0eb409e461c8 /drivers/net/wireless/wl12xx/main.c | |
parent | 4d56ad9cae9e8553176427adc2335f8a7f4556b2 (diff) |
wl12xx: update acx commands
Update the acx commands according to the new fw api
(fw >= 6/7.3.0.0.75).
The main change in most of the ACXs is the addition
of a new role_id/link_id field, which is required
for multi-role operation.
Currently, we don't really support multi-role, as
most of our data (inside wl) is global.
As the current fw doesn't support concurrent roles
yet, keep it this way and add wl->role_id and
wl->sta_hlid to save the active role/link.
Signed-off-by: Eliad Peller <eliad@wizery.com>
Signed-off-by: Luciano Coelho <coelho@ti.com>
Diffstat (limited to 'drivers/net/wireless/wl12xx/main.c')
-rw-r--r-- | drivers/net/wireless/wl12xx/main.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/net/wireless/wl12xx/main.c b/drivers/net/wireless/wl12xx/main.c index 96f76b104e75..07d50b761610 100644 --- a/drivers/net/wireless/wl12xx/main.c +++ b/drivers/net/wireless/wl12xx/main.c | |||
@@ -718,7 +718,7 @@ static int wl1271_plt_init(struct wl1271 *wl) | |||
718 | if (ret < 0) | 718 | if (ret < 0) |
719 | goto out_free_memmap; | 719 | goto out_free_memmap; |
720 | 720 | ||
721 | ret = wl1271_acx_sta_mem_cfg(wl); | 721 | ret = wl12xx_acx_mem_cfg(wl); |
722 | if (ret < 0) | 722 | if (ret < 0) |
723 | goto out_free_memmap; | 723 | goto out_free_memmap; |
724 | 724 | ||
@@ -1981,6 +1981,7 @@ static void __wl1271_op_remove_interface(struct wl1271 *wl, | |||
1981 | wl->ap_fw_ps_map = 0; | 1981 | wl->ap_fw_ps_map = 0; |
1982 | wl->ap_ps_map = 0; | 1982 | wl->ap_ps_map = 0; |
1983 | wl->sched_scanning = false; | 1983 | wl->sched_scanning = false; |
1984 | wl->role_id = WL12XX_INVALID_ROLE_ID; | ||
1984 | 1985 | ||
1985 | /* | 1986 | /* |
1986 | * this is performed after the cancel_work calls and the associated | 1987 | * this is performed after the cancel_work calls and the associated |
@@ -4317,6 +4318,8 @@ struct ieee80211_hw *wl1271_alloc_hw(void) | |||
4317 | wl->sched_scanning = false; | 4318 | wl->sched_scanning = false; |
4318 | wl->tx_security_seq = 0; | 4319 | wl->tx_security_seq = 0; |
4319 | wl->tx_security_last_seq_lsb = 0; | 4320 | wl->tx_security_last_seq_lsb = 0; |
4321 | wl->role_id = WL12XX_INVALID_ROLE_ID; | ||
4322 | wl->sta_hlid = WL12XX_INVALID_LINK_ID; | ||
4320 | 4323 | ||
4321 | setup_timer(&wl->rx_streaming_timer, wl1271_rx_streaming_timer, | 4324 | setup_timer(&wl->rx_streaming_timer, wl1271_rx_streaming_timer, |
4322 | (unsigned long) wl); | 4325 | (unsigned long) wl); |