|
@@ -713,6 +713,24 @@ void ath9k_set_hw_capab(struct ath_softc *sc, struct ieee80211_hw *hw)
|
|
|
hw->wiphy->flags |= WIPHY_FLAG_SUPPORTS_TDLS;
|
|
|
hw->wiphy->flags |= WIPHY_FLAG_HAS_REMAIN_ON_CHANNEL;
|
|
|
|
|
|
+#ifdef CONFIG_PM_SLEEP
|
|
|
+
|
|
|
+ if ((ah->caps.hw_caps & ATH9K_HW_WOW_DEVICE_CAPABLE) &&
|
|
|
+ device_can_wakeup(sc->dev)) {
|
|
|
+
|
|
|
+ hw->wiphy->wowlan.flags = WIPHY_WOWLAN_MAGIC_PKT |
|
|
|
+ WIPHY_WOWLAN_DISCONNECT;
|
|
|
+ hw->wiphy->wowlan.n_patterns = MAX_NUM_USER_PATTERN;
|
|
|
+ hw->wiphy->wowlan.pattern_min_len = 1;
|
|
|
+ hw->wiphy->wowlan.pattern_max_len = MAX_PATTERN_SIZE;
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ atomic_set(&sc->wow_sleep_proc_intr, -1);
|
|
|
+ atomic_set(&sc->wow_got_bmiss_intr, -1);
|
|
|
+
|
|
|
+#endif
|
|
|
+
|
|
|
hw->queues = 4;
|
|
|
hw->max_rates = 4;
|
|
|
hw->channel_change_time = 5000;
|