/linux/net/mac80211/ |
H A D | pm.c | 21 int __ieee80211_suspend(struct ieee80211_hw *hw, struct cfg80211_wowlan *wowlan) in __ieee80211_suspend() argument 42 !(wowlan && wowlan->any)) { in __ieee80211_suspend() 52 if (!(wowlan && wowlan->any)) in __ieee80211_suspend() 81 local->wowlan = wowlan; in __ieee80211_suspend() 82 if (local->wowlan) { in __ieee80211_suspend() 116 err = drv_suspend(local, wowlan); in __ieee80211_suspend() 119 local->wowlan = false; in __ieee80211_suspend()
|
/linux/drivers/net/wireless/ath/ath9k/ |
H A D | wow.c | 34 struct cfg80211_wowlan *wowlan) in ath9k_wow_map_triggers() argument 38 if (wowlan->disconnect) in ath9k_wow_map_triggers() 41 if (wowlan->magic_pkt) in ath9k_wow_map_triggers() 44 if (wowlan->n_patterns) in ath9k_wow_map_triggers() 139 struct cfg80211_wowlan *wowlan) in ath9k_wow_add_pattern() argument 142 struct cfg80211_pkt_pattern *patterns = wowlan->patterns; in ath9k_wow_add_pattern() 148 for (i = 0; i < wowlan->n_patterns; i++) { in ath9k_wow_add_pattern() 168 struct cfg80211_wowlan *wowlan) in ath9k_suspend() argument 186 if (WARN_ON(!wowlan)) { in ath9k_suspend() 213 triggers = ath9k_wow_map_triggers(sc, wowlan); in ath9k_suspend() [all …]
|
/linux/drivers/net/wireless/intel/iwlwifi/dvm/ |
H A D | lib.c | 995 struct cfg80211_wowlan *wowlan) in iwlagn_send_patterns() argument 1004 if (!wowlan->n_patterns) in iwlagn_send_patterns() 1007 cmd.len[0] = struct_size(pattern_cmd, patterns, wowlan->n_patterns); in iwlagn_send_patterns() 1013 pattern_cmd->n_patterns = cpu_to_le32(wowlan->n_patterns); in iwlagn_send_patterns() 1015 for (i = 0; i < wowlan->n_patterns; i++) { in iwlagn_send_patterns() 1016 int mask_len = DIV_ROUND_UP(wowlan->patterns[i].pattern_len, 8); in iwlagn_send_patterns() 1019 wowlan->patterns[i].mask, mask_len); in iwlagn_send_patterns() 1021 wowlan->patterns[i].pattern, in iwlagn_send_patterns() 1022 wowlan->patterns[i].pattern_len); in iwlagn_send_patterns() 1025 wowlan->patterns[i].pattern_len; in iwlagn_send_patterns() [all …]
|
H A D | mac80211.c | 163 hw->wiphy->wowlan = &priv->wowlan_support; in iwlagn_mac_setup_register() 354 struct cfg80211_wowlan *wowlan) in iwlagn_mac_suspend() argument 360 if (WARN_ON(!wowlan)) in iwlagn_mac_suspend() 373 ret = iwlagn_suspend(priv, wowlan); in iwlagn_mac_suspend() 386 priv->wowlan = false; in iwlagn_mac_suspend() 548 priv->wowlan = false; in iwlagn_mac_resume()
|
H A D | agn.h | 138 struct cfg80211_wowlan *wowlan); 139 int iwlagn_suspend(struct iwl_priv *priv, struct cfg80211_wowlan *wowlan);
|
/linux/drivers/net/wireless/ath/ath10k/ |
H A D | wow.c | 267 struct cfg80211_wowlan *wowlan) in ath10k_vif_wow_set_wakeups() argument 272 const struct cfg80211_pkt_pattern *patterns = wowlan->patterns; in ath10k_vif_wow_set_wakeups() 290 if (wowlan->disconnect) { in ath10k_vif_wow_set_wakeups() 297 if (wowlan->magic_pkt) in ath10k_vif_wow_set_wakeups() 300 if (wowlan->nd_config) { in ath10k_vif_wow_set_wakeups() 311 wowlan->nd_config, pno); in ath10k_vif_wow_set_wakeups() 324 for (i = 0; i < wowlan->n_patterns; i++) { in ath10k_vif_wow_set_wakeups() 387 struct cfg80211_wowlan *wowlan) in ath10k_wow_set_wakeups() argument 395 ret = ath10k_vif_wow_set_wakeups(arvif, wowlan); in ath10k_wow_set_wakeups() 499 struct cfg80211_wowlan *wowlan) in ath10k_wow_op_suspend() argument [all …]
|
H A D | wow.h | 18 struct cfg80211_wowlan *wowlan);
|
/linux/drivers/net/wireless/realtek/rtw88/ |
H A D | wow.c | 804 struct cfg80211_wowlan *wowlan) in rtw_wow_set_wakeups() argument 811 if (wowlan->disconnect) in rtw_wow_set_wakeups() 813 if (wowlan->magic_pkt) in rtw_wow_set_wakeups() 815 if (wowlan->gtk_rekey_failure) in rtw_wow_set_wakeups() 818 if (wowlan->nd_config) in rtw_wow_set_wakeups() 819 rtw_wow_check_pno(rtwdev, wowlan->nd_config); in rtw_wow_set_wakeups() 826 if (wowlan->n_patterns && wowlan->patterns) { in rtw_wow_set_wakeups() 827 rtw_wow->pattern_cnt = wowlan->n_patterns; in rtw_wow_set_wakeups() 828 for (i = 0; i < wowlan->n_patterns; i++) in rtw_wow_set_wakeups() 830 wowlan->patterns + i, in rtw_wow_set_wakeups() [all …]
|
H A D | wow.h | 55 int rtw_wow_suspend(struct rtw_dev *rtwdev, struct cfg80211_wowlan *wowlan);
|
/linux/drivers/net/wireless/intel/iwlwifi/mvm/ |
H A D | d3.c | 638 struct cfg80211_wowlan *wowlan) in iwl_mvm_send_patterns_v1() argument 647 if (!wowlan->n_patterns) in iwl_mvm_send_patterns_v1() 650 cmd.len[0] = struct_size(pattern_cmd, patterns, wowlan->n_patterns); in iwl_mvm_send_patterns_v1() 656 pattern_cmd->n_patterns = cpu_to_le32(wowlan->n_patterns); in iwl_mvm_send_patterns_v1() 658 for (i = 0; i < wowlan->n_patterns; i++) { in iwl_mvm_send_patterns_v1() 659 int mask_len = DIV_ROUND_UP(wowlan->patterns[i].pattern_len, 8); in iwl_mvm_send_patterns_v1() 662 wowlan->patterns[i].mask, mask_len); in iwl_mvm_send_patterns_v1() 664 wowlan->patterns[i].pattern, in iwl_mvm_send_patterns_v1() 665 wowlan->patterns[i].pattern_len); in iwl_mvm_send_patterns_v1() 668 wowlan->patterns[i].pattern_len; in iwl_mvm_send_patterns_v1() [all …]
|
/linux/drivers/net/wireless/ath/ath12k/ |
H A D | wow.c | 358 struct cfg80211_wowlan *wowlan) in ath12k_wow_vif_set_wakeups() argument 360 const struct cfg80211_pkt_pattern *patterns = wowlan->patterns; in ath12k_wow_vif_set_wakeups() 381 if (wowlan->disconnect) { in ath12k_wow_vif_set_wakeups() 388 if (wowlan->magic_pkt) in ath12k_wow_vif_set_wakeups() 391 if (wowlan->nd_config) { in ath12k_wow_vif_set_wakeups() 402 wowlan->nd_config, pno); in ath12k_wow_vif_set_wakeups() 415 for (i = 0; i < wowlan->n_patterns; i++) { in ath12k_wow_vif_set_wakeups() 474 struct cfg80211_wowlan *wowlan) in ath12k_wow_set_wakeups() argument 484 ret = ath12k_wow_vif_set_wakeups(arvif, wowlan); in ath12k_wow_set_wakeups() 845 struct cfg80211_wowlan *wowlan) in ath12k_wow_op_suspend() argument [all …]
|
H A D | wow.h | 39 struct cfg80211_wowlan *wowlan);
|
/linux/drivers/net/wireless/realtek/rtw89/ |
H A D | wow.c | 982 struct cfg80211_wowlan *wowlan) in rtw89_wow_parse_patterns() argument 989 if (!wowlan->n_patterns || !wowlan->patterns) in rtw89_wow_parse_patterns() 992 for (i = 0; i < wowlan->n_patterns; i++) { in rtw89_wow_parse_patterns() 995 &wowlan->patterns[i], in rtw89_wow_parse_patterns() 1009 rtw_wow->pattern_cnt = wowlan->n_patterns; in rtw89_wow_parse_patterns() 1074 struct cfg80211_wowlan *wowlan) in rtw89_wow_set_wakeups() argument 1080 if (wowlan->disconnect) in rtw89_wow_set_wakeups() 1082 if (wowlan->magic_pkt) in rtw89_wow_set_wakeups() 1084 if (wowlan->n_patterns && wowlan->patterns) in rtw89_wow_set_wakeups() 1087 if (wowlan->nd_config) in rtw89_wow_set_wakeups() [all …]
|
H A D | wow.h | 119 int rtw89_wow_suspend(struct rtw89_dev *rtwdev, struct cfg80211_wowlan *wowlan);
|
/linux/drivers/net/wireless/rsi/ |
H A D | rsi_91x_mac80211.c | 1843 struct cfg80211_wowlan *wowlan) in rsi_wow_map_triggers() argument 1849 if (wowlan->any) in rsi_wow_map_triggers() 1851 if (wowlan->magic_pkt) in rsi_wow_map_triggers() 1853 if (wowlan->disconnect) in rsi_wow_map_triggers() 1855 if (wowlan->gtk_rekey_failure || wowlan->eap_identity_req || in rsi_wow_map_triggers() 1856 wowlan->four_way_handshake) in rsi_wow_map_triggers() 1862 int rsi_config_wowlan(struct rsi_hw *adapter, struct cfg80211_wowlan *wowlan) in rsi_config_wowlan() argument 1874 if (WARN_ON(!wowlan)) { in rsi_config_wowlan() 1880 triggers = rsi_wow_map_triggers(common, wowlan); in rsi_config_wowlan() 1912 struct cfg80211_wowlan *wowlan) in rsi_mac80211_suspend() argument [all …]
|
H A D | rsi_common.h | 87 int rsi_config_wowlan(struct rsi_hw *adapter, struct cfg80211_wowlan *wowlan);
|
/linux/net/wireless/ |
H A D | core.c | 751 if (WARN_ON(wiphy->wowlan && in wiphy_register() 752 (wiphy->wowlan->flags & WIPHY_WOWLAN_GTK_REKEY_FAILURE) && in wiphy_register() 753 !(wiphy->wowlan->flags & WIPHY_WOWLAN_SUPPORTS_GTK_REKEY))) in wiphy_register() 755 if (WARN_ON(wiphy->wowlan && in wiphy_register() 756 !wiphy->wowlan->flags && !wiphy->wowlan->n_patterns && in wiphy_register() 757 !wiphy->wowlan->tcp)) in wiphy_register() 991 if (WARN_ON(rdev->wiphy.wowlan && rdev->wiphy.wowlan->n_patterns && in wiphy_register() 992 (!rdev->wiphy.wowlan->pattern_min_len || in wiphy_register() 993 rdev->wiphy.wowlan->pattern_min_len > in wiphy_register() 994 rdev->wiphy.wowlan->pattern_max_len))) in wiphy_register()
|
H A D | nl80211.c | 1725 const struct wiphy_wowlan_tcp_support *tcp = rdev->wiphy.wowlan->tcp; in nl80211_send_wowlan_tcp_caps() 1769 if (!rdev->wiphy.wowlan) in nl80211_send_wowlan() 1777 if (((rdev->wiphy.wowlan->flags & WIPHY_WOWLAN_ANY) && in nl80211_send_wowlan() 1779 ((rdev->wiphy.wowlan->flags & WIPHY_WOWLAN_DISCONNECT) && in nl80211_send_wowlan() 1781 ((rdev->wiphy.wowlan->flags & WIPHY_WOWLAN_MAGIC_PKT) && in nl80211_send_wowlan() 1783 ((rdev->wiphy.wowlan->flags & WIPHY_WOWLAN_SUPPORTS_GTK_REKEY) && in nl80211_send_wowlan() 1785 ((rdev->wiphy.wowlan->flags & WIPHY_WOWLAN_GTK_REKEY_FAILURE) && in nl80211_send_wowlan() 1787 ((rdev->wiphy.wowlan->flags & WIPHY_WOWLAN_EAP_IDENTITY_REQ) && in nl80211_send_wowlan() 1789 ((rdev->wiphy.wowlan->flags & WIPHY_WOWLAN_4WAY_HANDSHAKE) && in nl80211_send_wowlan() 1791 ((rdev->wiphy.wowlan->flags & WIPHY_WOWLAN_RFKILL_RELEASE) && in nl80211_send_wowlan() [all …]
|
/linux/drivers/net/wireless/st/cw1200/ |
H A D | pm.h | 30 struct cfg80211_wowlan *wowlan);
|
/linux/drivers/net/wireless/ath/ath11k/ |
H A D | wow.h | 32 struct cfg80211_wowlan *wowlan);
|
/linux/drivers/net/wireless/marvell/mwifiex/ |
H A D | cfg80211.c | 3368 struct cfg80211_wowlan *wowlan) in mwifiex_set_wowlan_mef_entry() argument 3379 for (i = 0; i < wowlan->n_patterns; i++) { in mwifiex_set_wowlan_mef_entry() 3381 if (!mwifiex_is_pattern_supported(&wowlan->patterns[i], in mwifiex_set_wowlan_mef_entry() 3389 if (!wowlan->patterns[i].pkt_offset) { in mwifiex_set_wowlan_mef_entry() 3407 wowlan->patterns[i].pkt_offset; in mwifiex_set_wowlan_mef_entry() 3422 if (wowlan->magic_pkt) { in mwifiex_set_wowlan_mef_entry() 3449 struct cfg80211_wowlan *wowlan) in mwifiex_set_mef_filter() argument 3455 if (wowlan->n_patterns || wowlan->magic_pkt) in mwifiex_set_mef_filter() 3470 if (wowlan->n_patterns || wowlan->magic_pkt) { in mwifiex_set_mef_filter() 3472 &mef_entry[1], wowlan); in mwifiex_set_mef_filter() [all …]
|
/linux/drivers/net/wireless/quantenna/qtnfmac/ |
H A D | cfg80211.c | 940 static int qtnf_suspend(struct wiphy *wiphy, struct cfg80211_wowlan *wowlan) in qtnf_suspend() argument 953 if (!wowlan) { in qtnf_suspend() 961 ret = qtnf_cmd_send_wowlan_set(vif, wowlan); in qtnf_suspend() 1196 if (macinfo->wowlan) in qtnf_wiphy_register() 1197 wiphy->wowlan = macinfo->wowlan; in qtnf_wiphy_register()
|
/linux/drivers/net/wireless/mediatek/mt76/ |
H A D | mt76_connac_mcu.c | 2478 bool suspend, struct cfg80211_wowlan *wowlan) in mt76_connac_mcu_set_wow_ctrl() argument 2505 if (wowlan->magic_pkt) in mt76_connac_mcu_set_wow_ctrl() 2507 if (wowlan->disconnect) in mt76_connac_mcu_set_wow_ctrl() 2510 if (wowlan->nd_config) { in mt76_connac_mcu_set_wow_ctrl() 2511 mt76_connac_mcu_sched_scan_req(phy, vif, wowlan->nd_config); in mt76_connac_mcu_set_wow_ctrl() 2515 if (wowlan->n_patterns) in mt76_connac_mcu_set_wow_ctrl() 2572 struct cfg80211_wowlan *wowlan = hw->wiphy->wowlan_config; in mt76_connac_mcu_set_suspend_iter() local 2580 for (i = 0; i < wowlan->n_patterns; i++) in mt76_connac_mcu_set_suspend_iter() 2582 &wowlan->patterns[i]); in mt76_connac_mcu_set_suspend_iter() 2583 mt76_connac_mcu_set_wow_ctrl(phy, vif, suspend, wowlan); in mt76_connac_mcu_set_suspend_iter()
|
/linux/drivers/net/wireless/mediatek/mt76/mt7925/ |
H A D | mcu.c | 167 bool suspend, struct cfg80211_wowlan *wowlan) in mt7925_connac_mcu_set_wow_ctrl() argument 194 if (wowlan->magic_pkt) in mt7925_connac_mcu_set_wow_ctrl() 196 if (wowlan->disconnect) in mt7925_connac_mcu_set_wow_ctrl() 199 if (wowlan->nd_config) { in mt7925_connac_mcu_set_wow_ctrl() 200 mt7925_mcu_sched_scan_req(phy, vif, wowlan->nd_config); in mt7925_connac_mcu_set_wow_ctrl() 204 if (wowlan->n_patterns) in mt7925_connac_mcu_set_wow_ctrl() 260 struct cfg80211_wowlan *wowlan = hw->wiphy->wowlan_config; in mt7925_mcu_set_suspend_iter() local 267 for (i = 0; i < wowlan->n_patterns; i++) in mt7925_mcu_set_suspend_iter() 269 &wowlan->patterns[i]); in mt7925_mcu_set_suspend_iter() 270 mt7925_connac_mcu_set_wow_ctrl(phy, vif, suspend, wowlan); in mt7925_mcu_set_suspend_iter()
|
/linux/drivers/net/wireless/realtek/rtlwifi/ |
H A D | base.c | 417 rtlpriv->wowlan.flags = WIPHY_WOWLAN_MAGIC_PKT; in _rtl_init_mac80211() 419 rtlpriv->wowlan.n_patterns = in _rtl_init_mac80211() 421 rtlpriv->wowlan.pattern_min_len = MIN_WOL_PATTERN_SIZE; in _rtl_init_mac80211() 422 rtlpriv->wowlan.pattern_max_len = MAX_WOL_PATTERN_SIZE; in _rtl_init_mac80211() 424 hw->wiphy->wowlan = &rtlpriv->wowlan; in _rtl_init_mac80211()
|