| /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/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 | agn.h | 138 struct cfg80211_wowlan *wowlan); 139 int iwlagn_suspend(struct iwl_priv *priv, 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 | 628 struct cfg80211_wowlan *wowlan) in iwl_mvm_send_patterns_v1() argument 637 if (!wowlan->n_patterns) in iwl_mvm_send_patterns_v1() 640 cmd.len[0] = struct_size(pattern_cmd, patterns, wowlan->n_patterns); in iwl_mvm_send_patterns_v1() 646 pattern_cmd->n_patterns = cpu_to_le32(wowlan->n_patterns); in iwl_mvm_send_patterns_v1() 648 for (i = 0; i < wowlan->n_patterns; i++) { in iwl_mvm_send_patterns_v1() 649 int mask_len = DIV_ROUND_UP(wowlan->patterns[i].pattern_len, 8); in iwl_mvm_send_patterns_v1() 652 wowlan->patterns[i].mask, mask_len); in iwl_mvm_send_patterns_v1() 654 wowlan->patterns[i].pattern, in iwl_mvm_send_patterns_v1() 655 wowlan->patterns[i].pattern_len); in iwl_mvm_send_patterns_v1() 658 wowlan->patterns[i].pattern_len; in iwl_mvm_send_patterns_v1() [all …]
|
| /linux/drivers/net/wireless/intel/iwlwifi/mld/ |
| H A D | d3.c | 250 const struct cfg80211_wowlan *wowlan) in iwl_mld_netdetect_config() argument 254 wowlan->nd_config; in iwl_mld_netdetect_config() 1891 struct cfg80211_wowlan *wowlan, in iwl_mld_set_wowlan_config_cmd() argument 1907 if (wowlan->disconnect) in iwl_mld_set_wowlan_config_cmd() 1911 if (wowlan->magic_pkt) in iwl_mld_set_wowlan_config_cmd() 1914 if (wowlan->gtk_rekey_failure) in iwl_mld_set_wowlan_config_cmd() 1917 if (wowlan->eap_identity_req) in iwl_mld_set_wowlan_config_cmd() 1920 if (wowlan->four_way_handshake) in iwl_mld_set_wowlan_config_cmd() 1923 if (wowlan->n_patterns) in iwl_mld_set_wowlan_config_cmd() 1927 if (wowlan->rfkill_release) in iwl_mld_set_wowlan_config_cmd() [all …]
|
| H A D | mac80211.c | 200 mld->wowlan.flags |= WIPHY_WOWLAN_MAGIC_PKT | in iwl_mld_hw_set_pm() 209 mld->wowlan.n_patterns = IWL_WOWLAN_MAX_PATTERNS; in iwl_mld_hw_set_pm() 210 mld->wowlan.pattern_min_len = IWL_WOWLAN_MIN_PATTERN_LEN; in iwl_mld_hw_set_pm() 211 mld->wowlan.pattern_max_len = IWL_WOWLAN_MAX_PATTERN_LEN; in iwl_mld_hw_set_pm() 212 mld->wowlan.max_nd_match_sets = IWL_SCAN_MAX_PROFILES_V2; in iwl_mld_hw_set_pm() 214 wiphy->wowlan = &mld->wowlan; in iwl_mld_hw_set_pm() 2137 iwl_mld_suspend(struct ieee80211_hw *hw, struct cfg80211_wowlan *wowlan) in iwl_mld_suspend() argument 2144 ret = iwl_mld_wowlan_suspend(mld, wowlan); in iwl_mld_suspend()
|
| H A D | mld.h | 274 struct wiphy_wowlan_support wowlan; member
|
| /linux/drivers/net/wireless/ath/ath12k/ |
| H A D | wow.c | 361 struct cfg80211_wowlan *wowlan) in ath12k_wow_vif_set_wakeups() argument 363 const struct cfg80211_pkt_pattern *patterns = wowlan->patterns; in ath12k_wow_vif_set_wakeups() 384 if (wowlan->disconnect) { in ath12k_wow_vif_set_wakeups() 391 if (wowlan->magic_pkt) in ath12k_wow_vif_set_wakeups() 394 if (wowlan->nd_config) { in ath12k_wow_vif_set_wakeups() 405 wowlan->nd_config, pno); in ath12k_wow_vif_set_wakeups() 418 for (i = 0; i < wowlan->n_patterns; i++) { in ath12k_wow_vif_set_wakeups() 477 struct cfg80211_wowlan *wowlan) in ath12k_wow_set_wakeups() argument 491 ret = ath12k_wow_vif_set_wakeups(arvif, wowlan); in ath12k_wow_set_wakeups() 862 struct cfg80211_wowlan *wowlan) in ath12k_wow_op_suspend() argument [all …]
|
| /linux/drivers/net/wireless/realtek/rtw89/ |
| H A D | wow.c | 1036 struct cfg80211_wowlan *wowlan) in rtw89_wow_parse_patterns() argument 1043 if (!wowlan->n_patterns || !wowlan->patterns) in rtw89_wow_parse_patterns() 1046 for (i = 0; i < wowlan->n_patterns; i++) { in rtw89_wow_parse_patterns() 1049 &wowlan->patterns[i], in rtw89_wow_parse_patterns() 1063 rtw_wow->pattern_cnt = wowlan->n_patterns; in rtw89_wow_parse_patterns() 1128 struct cfg80211_wowlan *wowlan) in rtw89_wow_set_wakeups() argument 1134 if (wowlan->disconnect) in rtw89_wow_set_wakeups() 1136 if (wowlan->magic_pkt) in rtw89_wow_set_wakeups() 1138 if (wowlan->n_patterns && wowlan->patterns) in rtw89_wow_set_wakeups() 1141 if (wowlan->nd_config) in rtw89_wow_set_wakeups() [all …]
|
| /linux/drivers/net/wireless/rsi/ |
| H A D | rsi_91x_mac80211.c | 1865 struct cfg80211_wowlan *wowlan) in rsi_wow_map_triggers() argument 1871 if (wowlan->any) in rsi_wow_map_triggers() 1873 if (wowlan->magic_pkt) in rsi_wow_map_triggers() 1875 if (wowlan->disconnect) in rsi_wow_map_triggers() 1877 if (wowlan->gtk_rekey_failure || wowlan->eap_identity_req || in rsi_wow_map_triggers() 1878 wowlan->four_way_handshake) in rsi_wow_map_triggers() 1884 int rsi_config_wowlan(struct rsi_hw *adapter, struct cfg80211_wowlan *wowlan) in rsi_config_wowlan() argument 1896 if (WARN_ON(!wowlan)) { in rsi_config_wowlan() 1902 triggers = rsi_wow_map_triggers(common, wowlan); in rsi_config_wowlan() 1934 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/drivers/net/wireless/ath/ath10k/ |
| H A D | wow.h | 18 struct cfg80211_wowlan *wowlan);
|
| /linux/drivers/net/wireless/st/cw1200/ |
| H A D | pm.h | 30 struct cfg80211_wowlan *wowlan);
|
| H A D | pm.c | 157 int cw1200_wow_suspend(struct ieee80211_hw *hw, struct cfg80211_wowlan *wowlan) in cw1200_wow_suspend() argument
|
| /linux/net/wireless/ |
| H A D | core.c | 863 if (WARN_ON(wiphy->wowlan && in wiphy_register() 864 (wiphy->wowlan->flags & WIPHY_WOWLAN_GTK_REKEY_FAILURE) && in wiphy_register() 865 !(wiphy->wowlan->flags & WIPHY_WOWLAN_SUPPORTS_GTK_REKEY))) in wiphy_register() 867 if (WARN_ON(wiphy->wowlan && in wiphy_register() 868 !wiphy->wowlan->flags && !wiphy->wowlan->n_patterns && in wiphy_register() 869 !wiphy->wowlan->tcp)) in wiphy_register() 1112 if (WARN_ON(rdev->wiphy.wowlan && rdev->wiphy.wowlan->n_patterns && in wiphy_register() 1113 (!rdev->wiphy.wowlan->pattern_min_len || in wiphy_register() 1114 rdev->wiphy.wowlan->pattern_min_len > in wiphy_register() 1115 rdev->wiphy.wowlan->pattern_max_len))) in wiphy_register()
|
| H A D | nl80211.c | 2030 const struct wiphy_wowlan_tcp_support *tcp = rdev->wiphy.wowlan->tcp; in nl80211_send_wowlan_tcp_caps() 2074 if (!rdev->wiphy.wowlan) in nl80211_send_wowlan() 2082 if (((rdev->wiphy.wowlan->flags & WIPHY_WOWLAN_ANY) && in nl80211_send_wowlan() 2084 ((rdev->wiphy.wowlan->flags & WIPHY_WOWLAN_DISCONNECT) && in nl80211_send_wowlan() 2086 ((rdev->wiphy.wowlan->flags & WIPHY_WOWLAN_MAGIC_PKT) && in nl80211_send_wowlan() 2088 ((rdev->wiphy.wowlan->flags & WIPHY_WOWLAN_SUPPORTS_GTK_REKEY) && in nl80211_send_wowlan() 2090 ((rdev->wiphy.wowlan->flags & WIPHY_WOWLAN_GTK_REKEY_FAILURE) && in nl80211_send_wowlan() 2092 ((rdev->wiphy.wowlan->flags & WIPHY_WOWLAN_EAP_IDENTITY_REQ) && in nl80211_send_wowlan() 2094 ((rdev->wiphy.wowlan->flags & WIPHY_WOWLAN_4WAY_HANDSHAKE) && in nl80211_send_wowlan() 2096 ((rdev->wiphy.wowlan->flags & WIPHY_WOWLAN_RFKILL_RELEASE) && in nl80211_send_wowlan() [all …]
|
| /linux/drivers/net/wireless/nxp/nxpwifi/ |
| H A D | cfg80211.c | 2674 struct cfg80211_wowlan *wowlan) in nxpwifi_set_wowlan_mef_entry() argument 2683 for (i = 0; i < wowlan->n_patterns; i++) { in nxpwifi_set_wowlan_mef_entry() 2686 (&wowlan->patterns[i], byte_seq, in nxpwifi_set_wowlan_mef_entry() 2693 if (!wowlan->patterns[i].pkt_offset) { in nxpwifi_set_wowlan_mef_entry() 2711 wowlan->patterns[i].pkt_offset; in nxpwifi_set_wowlan_mef_entry() 2726 if (wowlan->magic_pkt) { in nxpwifi_set_wowlan_mef_entry() 2753 struct cfg80211_wowlan *wowlan) in nxpwifi_set_mef_filter() argument 2759 if (wowlan->n_patterns || wowlan->magic_pkt) in nxpwifi_set_mef_filter() 2774 if (wowlan->n_patterns || wowlan->magic_pkt) { in nxpwifi_set_mef_filter() 2776 &mef_entry[1], wowlan); in nxpwifi_set_mef_filter() [all …]
|
| /linux/drivers/net/wireless/marvell/mwifiex/ |
| H A D | cfg80211.c | 3365 struct cfg80211_wowlan *wowlan) in mwifiex_set_wowlan_mef_entry() argument 3376 for (i = 0; i < wowlan->n_patterns; i++) { in mwifiex_set_wowlan_mef_entry() 3378 if (!mwifiex_is_pattern_supported(&wowlan->patterns[i], in mwifiex_set_wowlan_mef_entry() 3386 if (!wowlan->patterns[i].pkt_offset) { in mwifiex_set_wowlan_mef_entry() 3404 wowlan->patterns[i].pkt_offset; in mwifiex_set_wowlan_mef_entry() 3419 if (wowlan->magic_pkt) { in mwifiex_set_wowlan_mef_entry() 3446 struct cfg80211_wowlan *wowlan) in mwifiex_set_mef_filter() argument 3452 if (wowlan->n_patterns || wowlan->magic_pkt) in mwifiex_set_mef_filter() 3467 if (wowlan->n_patterns || wowlan->magic_pkt) { in mwifiex_set_mef_filter() 3469 &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/silabs/wfx/ |
| H A D | sta.h | 59 int wfx_suspend(struct ieee80211_hw *hw, struct cfg80211_wowlan *wowlan);
|
| H A D | sta.c | 808 int wfx_suspend(struct ieee80211_hw *hw, struct cfg80211_wowlan *wowlan) in wfx_suspend() argument 811 if (!wowlan->any || !wowlan->disconnect) in wfx_suspend()
|
| /linux/drivers/net/wireless/mediatek/mt76/ |
| H A D | mt76_connac_mcu.c | 2626 bool suspend, struct cfg80211_wowlan *wowlan) in mt76_connac_mcu_set_wow_ctrl() argument 2653 if (wowlan->magic_pkt) in mt76_connac_mcu_set_wow_ctrl() 2655 if (wowlan->disconnect) in mt76_connac_mcu_set_wow_ctrl() 2658 if (wowlan->nd_config) { in mt76_connac_mcu_set_wow_ctrl() 2659 mt76_connac_mcu_sched_scan_req(phy, vif, wowlan->nd_config); in mt76_connac_mcu_set_wow_ctrl() 2663 if (wowlan->n_patterns) in mt76_connac_mcu_set_wow_ctrl() 2720 struct cfg80211_wowlan *wowlan = hw->wiphy->wowlan_config; in mt76_connac_mcu_set_suspend_iter() local 2728 for (i = 0; i < wowlan->n_patterns; i++) in mt76_connac_mcu_set_suspend_iter() 2730 &wowlan->patterns[i]); in mt76_connac_mcu_set_suspend_iter() 2731 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 | 181 bool suspend, struct cfg80211_wowlan *wowlan) in mt7925_connac_mcu_set_wow_ctrl() argument 209 if (wowlan->magic_pkt) in mt7925_connac_mcu_set_wow_ctrl() 211 if (wowlan->disconnect) in mt7925_connac_mcu_set_wow_ctrl() 214 if (wowlan->nd_config) { in mt7925_connac_mcu_set_wow_ctrl() 215 mt7925_mcu_sched_scan_req(phy, vif, wowlan->nd_config, &ies); in mt7925_connac_mcu_set_wow_ctrl() 219 if (wowlan->n_patterns) in mt7925_connac_mcu_set_wow_ctrl() 298 struct cfg80211_wowlan *wowlan = hw->wiphy->wowlan_config; in mt7925_mcu_set_suspend_iter() local 305 for (i = 0; i < wowlan->n_patterns; i++) in mt7925_mcu_set_suspend_iter() 307 &wowlan->patterns[i]); in mt7925_mcu_set_suspend_iter() 308 mt7925_connac_mcu_set_wow_ctrl(phy, vif, suspend, wowlan); in mt7925_mcu_set_suspend_iter()
|