drm/rockchip: Don't change hdmi reference clock rate
[drm/drm-misc.git] / drivers / net / wireless / ath / ath11k / wow.h
blobc85811e3f42b2d4664b8bda40398e5808bddb985
1 /* SPDX-License-Identifier: BSD-3-Clause-Clear */
2 /*
3 * Copyright (c) 2020 The Linux Foundation. All rights reserved.
4 * Copyright (c) 2022 Qualcomm Innovation Center, Inc. All rights reserved.
5 */
7 #ifndef _WOW_H_
8 #define _WOW_H_
10 struct ath11k_wow {
11 u32 max_num_patterns;
12 struct completion wakeup_completed;
13 struct wiphy_wowlan_support wowlan_support;
16 struct rfc1042_hdr {
17 u8 llc_dsap;
18 u8 llc_ssap;
19 u8 llc_ctrl;
20 u8 snap_oui[3];
21 __be16 snap_type;
22 } __packed;
24 #define ATH11K_WOW_RETRY_NUM 3
25 #define ATH11K_WOW_RETRY_WAIT_MS 200
26 #define ATH11K_WOW_PATTERNS 22
28 #ifdef CONFIG_PM
30 int ath11k_wow_init(struct ath11k *ar);
31 int ath11k_wow_op_suspend(struct ieee80211_hw *hw,
32 struct cfg80211_wowlan *wowlan);
33 int ath11k_wow_op_resume(struct ieee80211_hw *hw);
34 void ath11k_wow_op_set_wakeup(struct ieee80211_hw *hw, bool enabled);
35 int ath11k_wow_enable(struct ath11k_base *ab);
36 int ath11k_wow_wakeup(struct ath11k_base *ab);
38 #else
40 static inline int ath11k_wow_init(struct ath11k *ar)
42 return 0;
45 static inline int ath11k_wow_enable(struct ath11k_base *ab)
47 return 0;
50 static inline int ath11k_wow_wakeup(struct ath11k_base *ab)
52 return 0;
55 #endif /* CONFIG_PM */
56 #endif /* _WOW_H_ */