/net/wireless/ |
D | chan.c | 23 void cfg80211_chandef_create(struct cfg80211_chan_def *chandef, in cfg80211_chandef_create() argument 30 chandef->chan = chan; in cfg80211_chandef_create() 31 chandef->freq1_offset = chan->freq_offset; in cfg80211_chandef_create() 32 chandef->center_freq2 = 0; in cfg80211_chandef_create() 33 chandef->edmg.bw_config = 0; in cfg80211_chandef_create() 34 chandef->edmg.channels = 0; in cfg80211_chandef_create() 38 chandef->width = NL80211_CHAN_WIDTH_20_NOHT; in cfg80211_chandef_create() 39 chandef->center_freq1 = chan->center_freq; in cfg80211_chandef_create() 42 chandef->width = NL80211_CHAN_WIDTH_20; in cfg80211_chandef_create() 43 chandef->center_freq1 = chan->center_freq; in cfg80211_chandef_create() [all …]
|
D | mesh.c | 130 if (!setup->chandef.chan) { in __cfg80211_join_mesh() 132 setup->chandef = wdev->u.mesh.preset_chandef; in __cfg80211_join_mesh() 135 if (!setup->chandef.chan) { in __cfg80211_join_mesh() 154 setup->chandef.chan = chan; in __cfg80211_join_mesh() 158 if (setup->chandef.chan) in __cfg80211_join_mesh() 163 if (!setup->chandef.chan) in __cfg80211_join_mesh() 166 setup->chandef.width = NL80211_CHAN_WIDTH_20_NOHT; in __cfg80211_join_mesh() 167 setup->chandef.center_freq1 = setup->chandef.chan->center_freq; in __cfg80211_join_mesh() 177 rdev->wiphy.bands[setup->chandef.chan->band]; in __cfg80211_join_mesh() 179 if (setup->chandef.chan->band == NL80211_BAND_2GHZ) { in __cfg80211_join_mesh() [all …]
|
D | mlme.c | 866 struct cfg80211_chan_def chandef; in cfg80211_dfs_channels_update_work() local 915 cfg80211_chandef_create(&chandef, c, in cfg80211_dfs_channels_update_work() 918 nl80211_radar_notify(rdev, &chandef, in cfg80211_dfs_channels_update_work() 922 regulatory_propagate_dfs_state(wiphy, &chandef, in cfg80211_dfs_channels_update_work() 945 struct cfg80211_chan_def *chandef, in __cfg80211_radar_event() argument 950 trace_cfg80211_radar_event(wiphy, chandef, offchan); in __cfg80211_radar_event() 956 cfg80211_set_dfs_state(wiphy, chandef, NL80211_DFS_UNAVAILABLE); in __cfg80211_radar_event() 963 nl80211_radar_notify(rdev, chandef, NL80211_RADAR_DETECTED, NULL, gfp); in __cfg80211_radar_event() 965 memcpy(&rdev->radar_chandef, chandef, sizeof(struct cfg80211_chan_def)); in __cfg80211_radar_event() 971 const struct cfg80211_chan_def *chandef, in cfg80211_cac_event() argument [all …]
|
D | ocb.c | 33 if (WARN_ON(!setup->chandef.chan)) in __cfg80211_join_ocb() 38 wdev->u.ocb.chandef = setup->chandef; in __cfg80211_join_ocb() 73 memset(&wdev->u.ocb.chandef, 0, sizeof(wdev->u.ocb.chandef)); in __cfg80211_leave_ocb()
|
D | ibss.c | 113 band = params->chandef.chan->band; in __cfg80211_join_ibss() 134 wdev->u.ibss.chandef = params->chandef; in __cfg80211_join_ibss() 141 wdev->wext.ibss.chandef = params->chandef; in __cfg80211_join_ibss() 183 memset(&wdev->u.ibss.chandef, 0, sizeof(wdev->u.ibss.chandef)); in __cfg80211_clear_ibss() 249 if (!wdev->wext.ibss.chandef.chan) { in cfg80211_ibss_wext_join() 277 cfg80211_chandef_create(&wdev->wext.ibss.chandef, new_chan, in cfg80211_ibss_wext_join() 337 if (wdev->wext.ibss.chandef.chan == chan) in cfg80211_ibss_wext_siwfreq() 350 cfg80211_chandef_create(&wdev->wext.ibss.chandef, chan, in cfg80211_ibss_wext_siwfreq() 379 else if (wdev->wext.ibss.chandef.chan) in cfg80211_ibss_wext_giwfreq() 380 chan = wdev->wext.ibss.chandef.chan; in cfg80211_ibss_wext_giwfreq()
|
D | core.h | 343 struct cfg80211_chan_def *chandef); 476 const struct cfg80211_chan_def *chandef); 479 const struct cfg80211_chan_def *chandef, 486 const struct cfg80211_chan_def *chandef); 493 struct cfg80211_chan_def *chandef); 506 bool cfg80211_is_sub_chan(struct cfg80211_chan_def *chandef, 524 struct cfg80211_chan_def *chandef);
|
D | trace.h | 139 #define CHAN_DEF_ASSIGN(chandef) \ argument 141 if ((chandef) && (chandef)->chan) { \ 142 __entry->band = (chandef)->chan->band; \ 144 (chandef)->chan->center_freq; \ 146 (chandef)->chan->freq_offset; \ 147 __entry->width = (chandef)->width; \ 148 __entry->center_freq1 = (chandef)->center_freq1;\ 149 __entry->freq1_offset = (chandef)->freq1_offset;\ 150 __entry->center_freq2 = (chandef)->center_freq2;\ 593 CHAN_DEF_ASSIGN(&settings->chandef); [all …]
|
D | rdev-ops.h | 436 struct cfg80211_chan_def *chandef) in rdev_set_monitor_channel() argument 439 trace_rdev_set_monitor_channel(&rdev->wiphy, chandef); in rdev_set_monitor_channel() 440 ret = rdev->ops->set_monitor_channel(&rdev->wiphy, chandef); in rdev_set_monitor_channel() 953 struct cfg80211_chan_def *chandef) in rdev_get_channel() argument 958 ret = rdev->ops->get_channel(&rdev->wiphy, wdev, link_id, chandef); in rdev_get_channel() 959 trace_rdev_return_chandef(&rdev->wiphy, ret, chandef); in rdev_get_channel() 1118 struct cfg80211_chan_def *chandef) in rdev_set_ap_chanwidth() argument 1122 trace_rdev_set_ap_chanwidth(&rdev->wiphy, dev, link_id, chandef); in rdev_set_ap_chanwidth() 1123 ret = rdev->ops->set_ap_chanwidth(&rdev->wiphy, dev, link_id, chandef); in rdev_set_ap_chanwidth() 1163 u8 oper_class, struct cfg80211_chan_def *chandef) in rdev_tdls_channel_switch() argument [all …]
|
D | util.c | 1809 bool ieee80211_chandef_to_operating_class(struct cfg80211_chan_def *chandef, in ieee80211_chandef_to_operating_class() argument 1813 u32 freq = chandef->center_freq1; in ieee80211_chandef_to_operating_class() 1816 if (chandef->width > NL80211_CHAN_WIDTH_40) in ieee80211_chandef_to_operating_class() 1820 if (chandef->width == NL80211_CHAN_WIDTH_40) { in ieee80211_chandef_to_operating_class() 1821 if (freq > chandef->chan->center_freq) in ieee80211_chandef_to_operating_class() 1834 if (chandef->width != NL80211_CHAN_WIDTH_20_NOHT) in ieee80211_chandef_to_operating_class() 1841 switch (chandef->width) { in ieee80211_chandef_to_operating_class() 1863 } else if (chandef->width == NL80211_CHAN_WIDTH_40) { in ieee80211_chandef_to_operating_class() 1864 if (freq > chandef->chan->center_freq) in ieee80211_chandef_to_operating_class() 1879 } else if (chandef->width == NL80211_CHAN_WIDTH_40) { in ieee80211_chandef_to_operating_class() [all …]
|
D | nl80211.c | 3197 const struct cfg80211_chan_def *chandef, in nl80211_parse_punct_bitmap() argument 3204 if (!cfg80211_valid_disable_subchannel_bitmap(punct_bitmap, chandef)) in nl80211_parse_punct_bitmap() 3212 struct cfg80211_chan_def *chandef) in nl80211_parse_chandef() argument 3227 memset(chandef, 0, sizeof(*chandef)); in nl80211_parse_chandef() 3228 chandef->chan = ieee80211_get_channel_khz(&rdev->wiphy, control_freq); in nl80211_parse_chandef() 3229 chandef->width = NL80211_CHAN_WIDTH_20_NOHT; in nl80211_parse_chandef() 3230 chandef->center_freq1 = KHZ_TO_MHZ(control_freq); in nl80211_parse_chandef() 3231 chandef->freq1_offset = control_freq % 1000; in nl80211_parse_chandef() 3232 chandef->center_freq2 = 0; in nl80211_parse_chandef() 3235 if (!chandef->chan || chandef->chan->flags & IEEE80211_CHAN_DISABLED) { in nl80211_parse_chandef() [all …]
|
D | ap.c | 37 memset(&wdev->links[link_id].ap.chandef, 0, in ___cfg80211_stop_ap() 38 sizeof(wdev->links[link_id].ap.chandef)); in ___cfg80211_stop_ap()
|
D | wext-compat.c | 811 struct cfg80211_chan_def chandef = { in cfg80211_wext_siwfreq() local 835 chandef.center_freq1 = freq; in cfg80211_wext_siwfreq() 836 chandef.chan = ieee80211_get_channel(&rdev->wiphy, freq); in cfg80211_wext_siwfreq() 837 if (!chandef.chan) { in cfg80211_wext_siwfreq() 841 ret = cfg80211_set_monitor_channel(rdev, &chandef); in cfg80211_wext_siwfreq() 853 chandef.center_freq1 = freq; in cfg80211_wext_siwfreq() 854 chandef.chan = ieee80211_get_channel(&rdev->wiphy, freq); in cfg80211_wext_siwfreq() 855 if (!chandef.chan) { in cfg80211_wext_siwfreq() 859 ret = cfg80211_set_mesh_channel(rdev, wdev, &chandef); in cfg80211_wext_siwfreq() 877 struct cfg80211_chan_def chandef = {}; in cfg80211_wext_giwfreq() local [all …]
|
D | reg.c | 2375 struct cfg80211_chan_def chandef = {}; in reg_wdev_chan_valid() local 2400 chandef = wdev->links[link].ap.chandef; in reg_wdev_chan_valid() 2405 chandef = wdev->u.mesh.chandef; in reg_wdev_chan_valid() 2410 chandef = wdev->u.ibss.chandef; in reg_wdev_chan_valid() 2423 rdev_get_channel(rdev, wdev, link, &chandef)) in reg_wdev_chan_valid() 2424 cfg80211_chandef_create(&chandef, chan, in reg_wdev_chan_valid() 2445 ret = cfg80211_reg_can_beacon_relax(wiphy, &chandef, in reg_wdev_chan_valid() 2453 ret = cfg80211_chandef_usable(wiphy, &chandef, in reg_wdev_chan_valid() 4248 struct cfg80211_chan_def *chandef; in cfg80211_check_and_end_cac() local 4254 chandef = wdev_chandef(wdev, 0); in cfg80211_check_and_end_cac() [all …]
|
D | nl80211.h | 27 struct cfg80211_chan_def *chandef); 113 const struct cfg80211_chan_def *chandef,
|
/net/mac80211/ |
D | ibss.c | 41 struct cfg80211_chan_def *chandef, in ieee80211_ibss_build_presp() argument 93 sband = local->hw.wiphy->bands[chandef->chan->band]; in ieee80211_ibss_build_presp() 94 rate_flags = ieee80211_chandef_rate_flags(chandef); in ieee80211_ibss_build_presp() 95 shift = ieee80211_chandef_get_shift(chandef); in ieee80211_ibss_build_presp() 133 chandef->chan->center_freq); in ieee80211_ibss_build_presp() 147 csa_settings->chandef.chan->center_freq); in ieee80211_ibss_build_presp() 176 if (chandef->width != NL80211_CHAN_WIDTH_20_NOHT && in ieee80211_ibss_build_presp() 177 chandef->width != NL80211_CHAN_WIDTH_5 && in ieee80211_ibss_build_presp() 178 chandef->width != NL80211_CHAN_WIDTH_10 && in ieee80211_ibss_build_presp() 192 chandef, 0, false); in ieee80211_ibss_build_presp() [all …]
|
D | chan.c | 121 compat = &sdata->vif.bss_conf.chandef; in ieee80211_chanctx_non_reserved_chandef() 124 &sdata->vif.bss_conf.chandef, compat); in ieee80211_chanctx_non_reserved_chandef() 169 const struct cfg80211_chan_def *chandef, in ieee80211_find_reservation_chanctx() argument 187 chandef)) in ieee80211_find_reservation_chanctx() 275 width = max(vif->bss_conf.chandef.width, in ieee80211_get_chanctx_max_required_bw() 284 width = vif->bss_conf.chandef.width; in ieee80211_get_chanctx_max_required_bw() 416 const struct cfg80211_chan_def *chandef) in ieee80211_change_chanctx() argument 421 switch (chandef->width) { in ieee80211_change_chanctx() 439 if (cfg80211_chandef_identical(&ctx->conf.def, chandef)) { in ieee80211_change_chanctx() 444 WARN_ON(!cfg80211_chandef_compatible(&ctx->conf.def, chandef)); in ieee80211_change_chanctx() [all …]
|
D | mesh.c | 97 cfg80211_chandef_create(&sta_chan_def, sdata->vif.bss_conf.chandef.chan, in mesh_matches_local() 109 if (!cfg80211_chandef_compatible(&sdata->vif.bss_conf.chandef, in mesh_matches_local() 432 sdata->vif.bss_conf.chandef.width == NL80211_CHAN_WIDTH_20_NOHT || in mesh_add_ht_cap_ie() 433 sdata->vif.bss_conf.chandef.width == NL80211_CHAN_WIDTH_5 || in mesh_add_ht_cap_ie() 434 sdata->vif.bss_conf.chandef.width == NL80211_CHAN_WIDTH_10) in mesh_add_ht_cap_ie() 473 sdata->vif.bss_conf.chandef.width == NL80211_CHAN_WIDTH_20_NOHT || in mesh_add_ht_oper_ie() 474 sdata->vif.bss_conf.chandef.width == NL80211_CHAN_WIDTH_5 || in mesh_add_ht_oper_ie() 475 sdata->vif.bss_conf.chandef.width == NL80211_CHAN_WIDTH_10) in mesh_add_ht_oper_ie() 482 ieee80211_ie_build_ht_oper(pos, ht_cap, &sdata->vif.bss_conf.chandef, in mesh_add_ht_oper_ie() 504 sdata->vif.bss_conf.chandef.width == NL80211_CHAN_WIDTH_20_NOHT || in mesh_add_vht_cap_ie() [all …]
|
D | util.c | 1784 struct cfg80211_chan_def *chandef, in ieee80211_build_preq_ies_band() argument 1806 rate_flags = ieee80211_chandef_rate_flags(chandef); in ieee80211_build_preq_ies_band() 1807 shift = ieee80211_chandef_get_shift(chandef); in ieee80211_build_preq_ies_band() 1858 if (chandef->chan && sband->band == NL80211_BAND_2GHZ) { in ieee80211_build_preq_ies_band() 1864 chandef->chan->center_freq); in ieee80211_build_preq_ies_band() 2005 struct cfg80211_chan_def *chandef, in ieee80211_build_preq_ies() argument 2020 chandef, in ieee80211_build_preq_ies() 2053 struct cfg80211_chan_def chandef; in ieee80211_build_probe_req() local 2065 chandef.width = sdata->vif.bss_conf.chandef.width; in ieee80211_build_probe_req() 2067 chandef.chan = NULL; in ieee80211_build_probe_req() [all …]
|
D | spectmgmt.c | 108 cfg80211_chandef_create(&csa_ie->chandef, new_chan, in ieee80211_parse_ch_switch_ie() 112 cfg80211_chandef_create(&csa_ie->chandef, new_chan, in ieee80211_parse_ch_switch_ie() 116 cfg80211_chandef_create(&csa_ie->chandef, new_chan, in ieee80211_parse_ch_switch_ie() 120 cfg80211_chandef_create(&csa_ie->chandef, new_chan, in ieee80211_parse_ch_switch_ie() 123 switch (sdata->vif.bss_conf.chandef.width) { in ieee80211_parse_ch_switch_ie() 126 csa_ie->chandef.width = in ieee80211_parse_ch_switch_ie() 127 sdata->vif.bss_conf.chandef.width; in ieee80211_parse_ch_switch_ie() 154 new_vht_chandef = csa_ie->chandef; in ieee80211_parse_ch_switch_ie() 174 &csa_ie->chandef)) { in ieee80211_parse_ch_switch_ie() 180 csa_ie->chandef = new_vht_chandef; in ieee80211_parse_ch_switch_ie()
|
D | tdls.c | 77 struct cfg80211_chan_def chandef; in ieee80211_tdls_add_subband() local 88 cfg80211_chandef_create(&chandef, ch, in ieee80211_tdls_add_subband() 90 if (cfg80211_reg_can_beacon_relax(wiphy, &chandef, in ieee80211_tdls_add_subband() 161 if (!ieee80211_chandef_to_operating_class(&sdata->vif.bss_conf.chandef, in ieee80211_tdls_add_oper_classes() 438 sta->tdls_chandef = sdata->vif.bss_conf.chandef; in ieee80211_tdls_add_setup_start_ies() 567 sta->tdls_chandef = sdata->vif.bss_conf.chandef; in ieee80211_tdls_add_setup_cfm_ies() 613 &sdata->vif.bss_conf.chandef, prot, in ieee80211_tdls_add_setup_cfm_ies() 648 struct cfg80211_chan_def *chandef) in ieee80211_tdls_add_chan_switch_req_ies() argument 653 if (WARN_ON_ONCE(!chandef)) in ieee80211_tdls_add_chan_switch_req_ies() 658 ieee80211_frequency_to_channel(chandef->chan->center_freq); in ieee80211_tdls_add_chan_switch_req_ies() [all …]
|
D | main.c | 97 struct cfg80211_chan_def chandef = {}; in ieee80211_hw_conf_chan() local 105 chandef = local->scan_chandef; in ieee80211_hw_conf_chan() 107 chandef.chan = local->tmp_channel; in ieee80211_hw_conf_chan() 108 chandef.width = NL80211_CHAN_WIDTH_20_NOHT; in ieee80211_hw_conf_chan() 109 chandef.center_freq1 = chandef.chan->center_freq; in ieee80211_hw_conf_chan() 110 chandef.freq1_offset = chandef.chan->freq_offset; in ieee80211_hw_conf_chan() 112 chandef = local->_oper_chandef; in ieee80211_hw_conf_chan() 114 WARN(!cfg80211_chandef_valid(&chandef), in ieee80211_hw_conf_chan() 116 chandef.chan->center_freq, chandef.chan->freq_offset, in ieee80211_hw_conf_chan() 117 chandef.width, chandef.center_freq1, chandef.freq1_offset, in ieee80211_hw_conf_chan() [all …]
|
D | mlme.c | 154 struct cfg80211_chan_def *chandef, bool tracking) in ieee80211_determine_chantype() argument 161 memset(chandef, 0, sizeof(struct cfg80211_chan_def)); in ieee80211_determine_chantype() 162 chandef->chan = channel; in ieee80211_determine_chantype() 163 chandef->width = NL80211_CHAN_WIDTH_20_NOHT; in ieee80211_determine_chantype() 164 chandef->center_freq1 = channel->center_freq; in ieee80211_determine_chantype() 165 chandef->freq1_offset = channel->freq_offset; in ieee80211_determine_chantype() 168 if (!ieee80211_chandef_he_6ghz_oper(sdata, he_oper, chandef)) in ieee80211_determine_chantype() 174 vht_chandef = *chandef; in ieee80211_determine_chantype() 177 if (!ieee80211_chandef_s1g_oper(s1g_oper, chandef)) { in ieee80211_determine_chantype() 180 chandef->width = ieee80211_s1g_channel_width(channel); in ieee80211_determine_chantype() [all …]
|
D | cfg.c | 804 struct cfg80211_chan_def *chandef) in ieee80211_set_monitor_channel() argument 810 if (cfg80211_chandef_identical(&local->monitor_chandef, chandef)) in ieee80211_set_monitor_channel() 819 ret = ieee80211_vif_use_channel(sdata, chandef, in ieee80211_set_monitor_channel() 823 local->_oper_chandef = *chandef; in ieee80211_set_monitor_channel() 828 local->monitor_chandef = *chandef; in ieee80211_set_monitor_channel() 1112 err = ieee80211_vif_use_channel(sdata, ¶ms->chandef, in ieee80211_start_ap() 1157 sdata->vif.bss_conf.s1g = params->chandef.chan->band == in ieee80211_start_ap() 1274 struct cfg80211_chan_def chandef; in ieee80211_stop_ap() local 1333 chandef = sdata->vif.bss_conf.chandef; in ieee80211_stop_ap() 1335 cfg80211_cac_event(sdata->dev, &chandef, in ieee80211_stop_ap() [all …]
|
D | scan.c | 332 ieee80211_prepare_scan_chandef(struct cfg80211_chan_def *chandef, in ieee80211_prepare_scan_chandef() argument 335 memset(chandef, 0, sizeof(*chandef)); in ieee80211_prepare_scan_chandef() 338 chandef->width = NL80211_CHAN_WIDTH_5; in ieee80211_prepare_scan_chandef() 341 chandef->width = NL80211_CHAN_WIDTH_10; in ieee80211_prepare_scan_chandef() 344 chandef->width = NL80211_CHAN_WIDTH_20_NOHT; in ieee80211_prepare_scan_chandef() 354 struct cfg80211_chan_def chandef; in ieee80211_prep_hw_scan() local 394 ieee80211_prepare_scan_chandef(&chandef, req->scan_width); in ieee80211_prep_hw_scan() 404 bands_used, req->rates, &chandef, in ieee80211_prep_hw_scan() 657 enum nl80211_band band = local->hw.conf.chandef.chan->band; in ieee80211_scan_state_send_probe() 680 tx_flags, local->hw.conf.chandef.chan); in ieee80211_scan_state_send_probe() [all …]
|
D | ieee80211_i.h | 588 struct cfg80211_chan_def chandef; member 1054 ieee80211_chandef_get_shift(struct cfg80211_chan_def *chandef) in ieee80211_chandef_get_shift() argument 1056 switch (chandef->width) { in ieee80211_chandef_get_shift() 1522 struct cfg80211_chan_def chandef; member 2363 struct cfg80211_chan_def *chandef, 2384 const struct cfg80211_chan_def *chandef, 2387 const struct cfg80211_chan_def *chandef); 2391 const struct cfg80211_chan_def *chandef); 2398 u8 *ieee80211_ie_build_he_oper(u8 *pos, struct cfg80211_chan_def *chandef); 2399 int ieee80211_parse_bitrates(struct cfg80211_chan_def *chandef, [all …]
|