2012-04-19 23:29:57

by Thomas Pedersen

[permalink] [raw]
Subject: [PATCH] ath6kl: disallow WoW with multiple vifs

The ath6kl fw does not have enough memory to support the WoW filters of
more than one vif. Disallow WoW suspend if this is the case.

Signed-off-by: Thomas Pedersen <[email protected]>
---
drivers/net/wireless/ath/ath6kl/cfg80211.c | 8 ++++++++
1 files changed, 8 insertions(+), 0 deletions(-)

diff --git a/drivers/net/wireless/ath/ath6kl/cfg80211.c b/drivers/net/wireless/ath/ath6kl/cfg80211.c
index a8a7570..7ad03ed 100644
--- a/drivers/net/wireless/ath/ath6kl/cfg80211.c
+++ b/drivers/net/wireless/ath/ath6kl/cfg80211.c
@@ -2059,6 +2059,10 @@ static int ath6kl_wow_suspend(struct ath6kl *ar, struct cfg80211_wowlan *wow)
u8 index = 0;
__be32 ips[MAX_IP_ADDRS];

+ /* The FW currently can't support multi-vif WoW properly. */
+ if (ar->num_vif > 1)
+ return -EIO;
+
vif = ath6kl_vif_first(ar);
if (!vif)
return -EIO;
@@ -3125,6 +3129,10 @@ static int ath6kl_cfg80211_sscan_start(struct wiphy *wiphy,
if (vif->sme_state != SME_DISCONNECTED)
return -EBUSY;

+ /* The FW currently can't support multi-vif WoW properly. */
+ if (ar->num_vif > 1)
+ return -EIO;
+
ath6kl_cfg80211_scan_complete_event(vif, true);

ret = ath6kl_set_probed_ssids(ar, vif, request->ssids,
--
1.7.4.1



2012-04-23 11:31:38

by Kalle Valo

[permalink] [raw]
Subject: Re: [PATCH] ath6kl: disallow WoW with multiple vifs

On 04/20/2012 02:29 AM, Thomas Pedersen wrote:
> The ath6kl fw does not have enough memory to support the WoW filters of
> more than one vif. Disallow WoW suspend if this is the case.
>
> Signed-off-by: Thomas Pedersen <[email protected]>

Thanks, applied.

Kalle