|
@@ -277,6 +277,18 @@ exit:
|
|
|
return ret ? 1 : 0;
|
|
|
}
|
|
|
|
|
|
+void ath10k_wow_op_set_wakeup(struct ieee80211_hw *hw, bool enabled)
|
|
|
+{
|
|
|
+ struct ath10k *ar = hw->priv;
|
|
|
+
|
|
|
+ mutex_lock(&ar->conf_mutex);
|
|
|
+ if (test_bit(ATH10K_FW_FEATURE_WOWLAN_SUPPORT,
|
|
|
+ ar->running_fw->fw_file.fw_features)) {
|
|
|
+ device_set_wakeup_enable(ar->dev, enabled);
|
|
|
+ }
|
|
|
+ mutex_unlock(&ar->conf_mutex);
|
|
|
+}
|
|
|
+
|
|
|
int ath10k_wow_op_resume(struct ieee80211_hw *hw)
|
|
|
{
|
|
|
struct ath10k *ar = hw->priv;
|
|
@@ -336,5 +348,7 @@ int ath10k_wow_init(struct ath10k *ar)
|
|
|
ar->wow.wowlan_support.n_patterns = ar->wow.max_num_patterns;
|
|
|
ar->hw->wiphy->wowlan = &ar->wow.wowlan_support;
|
|
|
|
|
|
+ device_set_wakeup_capable(ar->dev, true);
|
|
|
+
|
|
|
return 0;
|
|
|
}
|