Skip to content

Commit

Permalink
ath6kl: disallow WoW with multiple vifs
Browse files Browse the repository at this point in the history
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 <c_tpeder@qca.qualcomm.com>
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
  • Loading branch information
Thomas Pedersen authored and Kalle Valo committed Apr 23, 2012
1 parent 37a2f95 commit 77ed4e4
Showing 1 changed file with 8 additions and 0 deletions.
8 changes: 8 additions & 0 deletions drivers/net/wireless/ath/ath6kl/cfg80211.c
Original file line number Diff line number Diff line change
Expand Up @@ -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;
Expand Down Expand Up @@ -3137,6 +3141,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,
Expand Down

0 comments on commit 77ed4e4

Please sign in to comment.