Lines Matching full:wiphy
74 qtnf_validate_iface_combinations(struct wiphy *wiphy, in qtnf_validate_iface_combinations() argument
86 mac = wiphy_priv(wiphy); in qtnf_validate_iface_combinations()
103 ret = cfg80211_check_combinations(wiphy, ¶ms); in qtnf_validate_iface_combinations()
124 qtnf_change_virtual_intf(struct wiphy *wiphy, in qtnf_change_virtual_intf() argument
134 ret = qtnf_validate_iface_combinations(wiphy, vif, type); in qtnf_change_virtual_intf()
159 int qtnf_del_virtual_intf(struct wiphy *wiphy, struct wireless_dev *wdev) in qtnf_del_virtual_intf() argument
196 static struct wireless_dev *qtnf_add_virtual_intf(struct wiphy *wiphy, in qtnf_add_virtual_intf() argument
208 mac = wiphy_priv(wiphy); in qtnf_add_virtual_intf()
213 ret = qtnf_validate_iface_combinations(wiphy, NULL, type); in qtnf_add_virtual_intf()
233 vif->wdev.wiphy = wiphy; in qtnf_add_virtual_intf()
333 static int qtnf_change_beacon(struct wiphy *wiphy, struct net_device *dev, in qtnf_change_beacon() argument
341 static int qtnf_start_ap(struct wiphy *wiphy, struct net_device *dev, in qtnf_start_ap() argument
355 static int qtnf_stop_ap(struct wiphy *wiphy, struct net_device *dev, in qtnf_stop_ap() argument
373 static int qtnf_set_wiphy_params(struct wiphy *wiphy, int radio_idx, in qtnf_set_wiphy_params() argument
376 struct qtnf_wmac *mac = wiphy_priv(wiphy); in qtnf_set_wiphy_params()
394 qtnf_update_mgmt_frame_registrations(struct wiphy *wiphy, in qtnf_update_mgmt_frame_registrations() argument
448 qtnf_mgmt_tx(struct wiphy *wiphy, struct wireless_dev *wdev, in qtnf_mgmt_tx() argument
486 qtnf_get_station(struct wiphy *wiphy, struct net_device *dev, in qtnf_get_station() argument
496 qtnf_dump_station(struct wiphy *wiphy, struct net_device *dev, in qtnf_dump_station() argument
535 static int qtnf_add_key(struct wiphy *wiphy, struct net_device *dev, in qtnf_add_key() argument
551 static int qtnf_del_key(struct wiphy *wiphy, struct net_device *dev, in qtnf_del_key() argument
573 static int qtnf_set_default_key(struct wiphy *wiphy, struct net_device *dev, in qtnf_set_default_key() argument
590 qtnf_set_default_mgmt_key(struct wiphy *wiphy, struct net_device *dev, in qtnf_set_default_mgmt_key() argument
605 qtnf_change_station(struct wiphy *wiphy, struct net_device *dev, in qtnf_change_station() argument
620 qtnf_del_station(struct wiphy *wiphy, struct net_device *dev, in qtnf_del_station() argument
641 qtnf_scan(struct wiphy *wiphy, struct cfg80211_scan_request *request) in qtnf_scan() argument
643 struct qtnf_wmac *mac = wiphy_priv(wiphy); in qtnf_scan()
666 qtnf_connect(struct wiphy *wiphy, struct net_device *dev, in qtnf_connect() argument
695 qtnf_external_auth(struct wiphy *wiphy, struct net_device *dev, in qtnf_external_auth() argument
714 qtnf_disconnect(struct wiphy *wiphy, struct net_device *dev, in qtnf_disconnect() argument
717 struct qtnf_wmac *mac = wiphy_priv(wiphy); in qtnf_disconnect()
745 qtnf_dump_survey(struct wiphy *wiphy, struct net_device *dev, in qtnf_dump_survey() argument
748 struct qtnf_wmac *mac = wiphy_priv(wiphy); in qtnf_dump_survey()
755 sband = wiphy->bands[NL80211_BAND_2GHZ]; in qtnf_dump_survey()
762 sband = wiphy->bands[NL80211_BAND_5GHZ]; in qtnf_dump_survey()
783 qtnf_get_channel(struct wiphy *wiphy, struct wireless_dev *wdev, in qtnf_get_channel() argument
815 static int qtnf_channel_switch(struct wiphy *wiphy, struct net_device *dev, in qtnf_channel_switch() argument
838 static int qtnf_start_radar_detection(struct wiphy *wiphy, in qtnf_start_radar_detection() argument
846 if (wiphy_ext_feature_isset(wiphy, NL80211_EXT_FEATURE_DFS_OFFLOAD)) in qtnf_start_radar_detection()
856 static int qtnf_set_mac_acl(struct wiphy *wiphy, in qtnf_set_mac_acl() argument
870 static int qtnf_set_power_mgmt(struct wiphy *wiphy, struct net_device *dev, in qtnf_set_power_mgmt() argument
884 static int qtnf_get_tx_power(struct wiphy *wiphy, struct wireless_dev *wdev, in qtnf_get_tx_power() argument
897 static int qtnf_set_tx_power(struct wiphy *wiphy, struct wireless_dev *wdev, in qtnf_set_tx_power() argument
907 struct qtnf_wmac *mac = wiphy_priv(wiphy); in qtnf_set_tx_power()
924 static int qtnf_update_owe_info(struct wiphy *wiphy, struct net_device *dev, in qtnf_update_owe_info() argument
942 static int qtnf_suspend(struct wiphy *wiphy, struct cfg80211_wowlan *wowlan) in qtnf_suspend() argument
944 struct qtnf_wmac *mac = wiphy_priv(wiphy); in qtnf_suspend()
974 static int qtnf_resume(struct wiphy *wiphy) in qtnf_resume() argument
976 struct qtnf_wmac *mac = wiphy_priv(wiphy); in qtnf_resume()
994 static void qtnf_set_wakeup(struct wiphy *wiphy, bool enabled) in qtnf_set_wakeup() argument
996 struct qtnf_wmac *mac = wiphy_priv(wiphy); in qtnf_set_wakeup()
1042 static void qtnf_cfg80211_reg_notifier(struct wiphy *wiphy, in qtnf_cfg80211_reg_notifier() argument
1045 struct qtnf_wmac *mac = wiphy_priv(wiphy); in qtnf_cfg80211_reg_notifier()
1061 if (!wiphy->bands[band]) in qtnf_cfg80211_reg_notifier()
1064 ret = qtnf_cmd_band_info_get(mac, wiphy->bands[band]); in qtnf_cfg80211_reg_notifier()
1071 struct wiphy *qtnf_wiphy_allocate(struct qtnf_bus *bus, in qtnf_wiphy_allocate()
1074 struct wiphy *wiphy; in qtnf_wiphy_allocate() local
1083 wiphy = wiphy_new(&qtn_cfg80211_ops, sizeof(struct qtnf_wmac)); in qtnf_wiphy_allocate()
1084 if (!wiphy) in qtnf_wiphy_allocate()
1088 set_wiphy_dev(wiphy, &pdev->dev); in qtnf_wiphy_allocate()
1090 set_wiphy_dev(wiphy, bus->dev); in qtnf_wiphy_allocate()
1092 return wiphy; in qtnf_wiphy_allocate()
1096 qtnf_wiphy_setup_if_comb(struct wiphy *wiphy, struct qtnf_mac_info *mac_info) in qtnf_wiphy_setup_if_comb() argument
1116 wiphy->iface_combinations = if_comb; in qtnf_wiphy_setup_if_comb()
1117 wiphy->n_iface_combinations = n_if_comb; in qtnf_wiphy_setup_if_comb()
1118 wiphy->interface_modes = interface_modes; in qtnf_wiphy_setup_if_comb()
1125 struct wiphy *wiphy = priv_to_wiphy(mac); in qtnf_wiphy_register() local
1130 if (!wiphy) { in qtnf_wiphy_register()
1131 pr_err("invalid wiphy pointer\n"); in qtnf_wiphy_register()
1135 wiphy->frag_threshold = macinfo->frag_thr; in qtnf_wiphy_register()
1136 wiphy->rts_threshold = macinfo->rts_thr; in qtnf_wiphy_register()
1137 wiphy->retry_short = macinfo->sretry_limit; in qtnf_wiphy_register()
1138 wiphy->retry_long = macinfo->lretry_limit; in qtnf_wiphy_register()
1139 wiphy->coverage_class = macinfo->coverage_class; in qtnf_wiphy_register()
1141 wiphy->max_scan_ssids = in qtnf_wiphy_register()
1143 wiphy->max_scan_ie_len = QTNF_MAX_VSIE_LEN; in qtnf_wiphy_register()
1144 wiphy->mgmt_stypes = qtnf_mgmt_stypes; in qtnf_wiphy_register()
1145 wiphy->max_remain_on_channel_duration = 5000; in qtnf_wiphy_register()
1146 wiphy->max_acl_mac_addrs = macinfo->max_acl_mac_addrs; in qtnf_wiphy_register()
1147 wiphy->max_num_csa_counters = 2; in qtnf_wiphy_register()
1149 ret = qtnf_wiphy_setup_if_comb(wiphy, macinfo); in qtnf_wiphy_register()
1154 wiphy->cipher_suites = qtnf_cipher_suites; in qtnf_wiphy_register()
1155 wiphy->n_cipher_suites = ARRAY_SIZE(qtnf_cipher_suites); in qtnf_wiphy_register()
1156 wiphy->signal_type = CFG80211_SIGNAL_TYPE_MBM; in qtnf_wiphy_register()
1157 wiphy->flags |= WIPHY_FLAG_HAVE_AP_SME | in qtnf_wiphy_register()
1163 wiphy->flags &= ~WIPHY_FLAG_PS_ON_BY_DEFAULT; in qtnf_wiphy_register()
1167 wiphy_ext_feature_set(wiphy, NL80211_EXT_FEATURE_DFS_OFFLOAD); in qtnf_wiphy_register()
1170 wiphy_ext_feature_set(wiphy, in qtnf_wiphy_register()
1173 wiphy->probe_resp_offload = NL80211_PROBE_RESP_OFFLOAD_SUPPORT_WPS | in qtnf_wiphy_register()
1176 wiphy->available_antennas_tx = macinfo->num_tx_chain; in qtnf_wiphy_register()
1177 wiphy->available_antennas_rx = macinfo->num_rx_chain; in qtnf_wiphy_register()
1179 wiphy->max_ap_assoc_sta = macinfo->max_ap_assoc_sta; in qtnf_wiphy_register()
1180 wiphy->ht_capa_mod_mask = &macinfo->ht_cap_mod_mask; in qtnf_wiphy_register()
1181 wiphy->vht_capa_mod_mask = &macinfo->vht_cap_mod_mask; in qtnf_wiphy_register()
1183 ether_addr_copy(wiphy->perm_addr, mac->macaddr); in qtnf_wiphy_register()
1186 wiphy->features |= NL80211_FEATURE_INACTIVITY_TIMER; in qtnf_wiphy_register()
1189 wiphy->features |= NL80211_FEATURE_SCAN_RANDOM_MAC_ADDR; in qtnf_wiphy_register()
1192 wiphy->features |= NL80211_FEATURE_NEED_OBSS_SCAN; in qtnf_wiphy_register()
1195 wiphy->features |= NL80211_FEATURE_SAE; in qtnf_wiphy_register()
1199 wiphy->wowlan = macinfo->wowlan; in qtnf_wiphy_register()
1206 wiphy->reg_notifier = qtnf_cfg80211_reg_notifier; in qtnf_wiphy_register()
1209 wiphy->regulatory_flags |= REGULATORY_CUSTOM_REG | in qtnf_wiphy_register()
1211 wiphy_apply_custom_regulatory(wiphy, mac->rd); in qtnf_wiphy_register()
1213 wiphy->regulatory_flags |= REGULATORY_STRICT_REG; in qtnf_wiphy_register()
1216 wiphy->regulatory_flags |= REGULATORY_WIPHY_SELF_MANAGED; in qtnf_wiphy_register()
1220 wiphy->extended_capabilities = in qtnf_wiphy_register()
1222 wiphy->extended_capabilities_mask = in qtnf_wiphy_register()
1224 wiphy->extended_capabilities_len = in qtnf_wiphy_register()
1228 strscpy(wiphy->fw_version, hw_info->fw_version, in qtnf_wiphy_register()
1229 sizeof(wiphy->fw_version)); in qtnf_wiphy_register()
1230 wiphy->hw_version = hw_info->hw_version; in qtnf_wiphy_register()
1232 ret = wiphy_register(wiphy); in qtnf_wiphy_register()
1236 if (wiphy->regulatory_flags & REGULATORY_WIPHY_SELF_MANAGED) in qtnf_wiphy_register()
1237 ret = regulatory_set_wiphy_regd(wiphy, mac->rd); in qtnf_wiphy_register()
1239 ret = regulatory_hint(wiphy, mac->rd->alpha2); in qtnf_wiphy_register()
1257 struct qtnf_wmac *mac = wiphy_priv(vif->wdev.wiphy); in qtnf_virtual_intf_cleanup()
1260 qtnf_disconnect(vif->wdev.wiphy, ndev, in qtnf_virtual_intf_cleanup()
1272 cfg80211_shutdown_all_interfaces(vif->wdev.wiphy); in qtnf_cfg80211_vif_reset()