1 /* SPDX-License-Identifier: BSD-3-Clause-Clear */
3 * Copyright (c) 2020 The Linux Foundation. All rights reserved.
4 * Copyright (c) 2022, 2024 Qualcomm Innovation Center, Inc. All rights reserved.
10 #define ATH12K_WOW_RETRY_NUM 10
11 #define ATH12K_WOW_RETRY_WAIT_MS 200
12 #define ATH12K_WOW_PATTERNS 22
16 struct completion wakeup_completed
;
17 struct wiphy_wowlan_support wowlan_support
;
20 struct ath12k_pkt_pattern
{
21 u8 pattern
[WOW_MAX_PATTERN_SIZE
];
22 u8 bytemask
[WOW_MAX_PATTERN_SIZE
];
37 int ath12k_wow_init(struct ath12k
*ar
);
38 int ath12k_wow_op_suspend(struct ieee80211_hw
*hw
,
39 struct cfg80211_wowlan
*wowlan
);
40 int ath12k_wow_op_resume(struct ieee80211_hw
*hw
);
41 void ath12k_wow_op_set_wakeup(struct ieee80211_hw
*hw
, bool enabled
);
42 int ath12k_wow_enable(struct ath12k
*ar
);
43 int ath12k_wow_wakeup(struct ath12k
*ar
);
47 static inline int ath12k_wow_init(struct ath12k
*ar
)
52 static inline int ath12k_wow_enable(struct ath12k
*ar
)
57 static inline int ath12k_wow_wakeup(struct ath12k
*ar
)
61 #endif /* CONFIG_PM */
62 #endif /* ATH12K_WOW_H */