/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() 176 rdev->wiphy.bands[setup->chandef.chan->band]; in __cfg80211_join_mesh() 178 if (setup->chandef.chan->band == NL80211_BAND_2GHZ) { in __cfg80211_join_mesh() [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() 71 if (!wdev->u.ocb.chandef.chan) in __cfg80211_leave_ocb() 76 memset(&wdev->u.ocb.chandef, 0, sizeof(wdev->u.ocb.chandef)); in __cfg80211_leave_ocb()
|
D | mlme.c | 900 struct cfg80211_chan_def chandef; in cfg80211_dfs_channels_update_work() local 949 cfg80211_chandef_create(&chandef, c, in cfg80211_dfs_channels_update_work() 952 nl80211_radar_notify(rdev, &chandef, in cfg80211_dfs_channels_update_work() 956 regulatory_propagate_dfs_state(wiphy, &chandef, in cfg80211_dfs_channels_update_work() 979 struct cfg80211_chan_def *chandef, in __cfg80211_radar_event() argument 984 trace_cfg80211_radar_event(wiphy, chandef, offchan); in __cfg80211_radar_event() 990 cfg80211_set_dfs_state(wiphy, chandef, NL80211_DFS_UNAVAILABLE); in __cfg80211_radar_event() 997 nl80211_radar_notify(rdev, chandef, NL80211_RADAR_DETECTED, NULL, gfp); in __cfg80211_radar_event() 999 memcpy(&rdev->radar_chandef, chandef, sizeof(struct cfg80211_chan_def)); in __cfg80211_radar_event() 1005 const struct cfg80211_chan_def *chandef, in cfg80211_cac_event() argument [all …]
|
D | ibss.c | 112 band = params->chandef.chan->band; in __cfg80211_join_ibss() 133 wdev->u.ibss.chandef = params->chandef; in __cfg80211_join_ibss() 140 wdev->wext.ibss.chandef = params->chandef; in __cfg80211_join_ibss() 182 memset(&wdev->u.ibss.chandef, 0, sizeof(wdev->u.ibss.chandef)); in __cfg80211_clear_ibss() 248 if (!wdev->wext.ibss.chandef.chan) { in cfg80211_ibss_wext_join() 276 cfg80211_chandef_create(&wdev->wext.ibss.chandef, new_chan, in cfg80211_ibss_wext_join() 336 if (wdev->wext.ibss.chandef.chan == chan) in cfg80211_ibss_wext_siwfreq() 349 cfg80211_chandef_create(&wdev->wext.ibss.chandef, chan, in cfg80211_ibss_wext_siwfreq() 378 else if (wdev->wext.ibss.chandef.chan) in cfg80211_ibss_wext_giwfreq() 379 chan = wdev->wext.ibss.chandef.chan; in cfg80211_ibss_wext_giwfreq()
|
D | core.h | 361 struct cfg80211_chan_def *chandef); 496 const struct cfg80211_chan_def *chandef); 502 const struct cfg80211_chan_def *chandef, 509 const struct cfg80211_chan_def *chandef); 516 struct cfg80211_chan_def *chandef); 529 bool cfg80211_is_sub_chan(struct cfg80211_chan_def *chandef, 547 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 | 448 struct cfg80211_chan_def *chandef) in rdev_set_monitor_channel() argument 451 trace_rdev_set_monitor_channel(&rdev->wiphy, chandef); in rdev_set_monitor_channel() 452 ret = rdev->ops->set_monitor_channel(&rdev->wiphy, chandef); in rdev_set_monitor_channel() 970 struct cfg80211_chan_def *chandef) in rdev_get_channel() argument 975 ret = rdev->ops->get_channel(&rdev->wiphy, wdev, link_id, chandef); in rdev_get_channel() 976 trace_rdev_return_chandef(&rdev->wiphy, ret, chandef); in rdev_get_channel() 1135 struct cfg80211_chan_def *chandef) in rdev_set_ap_chanwidth() argument 1139 trace_rdev_set_ap_chanwidth(&rdev->wiphy, dev, link_id, chandef); in rdev_set_ap_chanwidth() 1140 ret = rdev->ops->set_ap_chanwidth(&rdev->wiphy, dev, link_id, chandef); in rdev_set_ap_chanwidth() 1180 u8 oper_class, struct cfg80211_chan_def *chandef) in rdev_tdls_channel_switch() argument [all …]
|
D | nl80211.c | 3233 const struct cfg80211_chan_def *chandef, in nl80211_parse_punct_bitmap() argument 3240 if (!cfg80211_valid_disable_subchannel_bitmap(punct_bitmap, chandef)) in nl80211_parse_punct_bitmap() 3248 struct cfg80211_chan_def *chandef) in nl80211_parse_chandef() argument 3266 memset(chandef, 0, sizeof(*chandef)); in nl80211_parse_chandef() 3267 chandef->chan = ieee80211_get_channel_khz(&rdev->wiphy, control_freq); in nl80211_parse_chandef() 3268 chandef->width = NL80211_CHAN_WIDTH_20_NOHT; in nl80211_parse_chandef() 3269 chandef->center_freq1 = KHZ_TO_MHZ(control_freq); in nl80211_parse_chandef() 3270 chandef->freq1_offset = control_freq % 1000; in nl80211_parse_chandef() 3271 chandef->center_freq2 = 0; in nl80211_parse_chandef() 3274 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 | util.c | 2004 bool ieee80211_chandef_to_operating_class(struct cfg80211_chan_def *chandef, in ieee80211_chandef_to_operating_class() argument 2008 u32 freq = chandef->center_freq1; in ieee80211_chandef_to_operating_class() 2011 if (chandef->width > NL80211_CHAN_WIDTH_40) in ieee80211_chandef_to_operating_class() 2015 if (chandef->width == NL80211_CHAN_WIDTH_40) { in ieee80211_chandef_to_operating_class() 2016 if (freq > chandef->chan->center_freq) in ieee80211_chandef_to_operating_class() 2029 if (chandef->width != NL80211_CHAN_WIDTH_20_NOHT) in ieee80211_chandef_to_operating_class() 2036 switch (chandef->width) { in ieee80211_chandef_to_operating_class() 2058 } else if (chandef->width == NL80211_CHAN_WIDTH_40) { in ieee80211_chandef_to_operating_class() 2059 if (freq > chandef->chan->center_freq) in ieee80211_chandef_to_operating_class() 2074 } else if (chandef->width == NL80211_CHAN_WIDTH_40) { in ieee80211_chandef_to_operating_class() [all …]
|
D | reg.c | 2363 struct cfg80211_chan_def chandef = {}; in reg_wdev_chan_valid() local 2388 chandef = wdev->links[link].ap.chandef; in reg_wdev_chan_valid() 2393 chandef = wdev->u.mesh.chandef; in reg_wdev_chan_valid() 2398 chandef = wdev->u.ibss.chandef; in reg_wdev_chan_valid() 2411 rdev_get_channel(rdev, wdev, link, &chandef)) in reg_wdev_chan_valid() 2412 cfg80211_chandef_create(&chandef, chan, in reg_wdev_chan_valid() 2421 if (!wdev->u.ocb.chandef.chan) in reg_wdev_chan_valid() 2423 chandef = wdev->u.ocb.chandef; in reg_wdev_chan_valid() 2441 ret = cfg80211_reg_can_beacon_relax(wiphy, &chandef, in reg_wdev_chan_valid() 2448 ret = cfg80211_chandef_usable(wiphy, &chandef, in reg_wdev_chan_valid() [all …]
|
D | wext-compat.c | 824 struct cfg80211_chan_def chandef = { in cfg80211_wext_siwfreq() local 848 chandef.center_freq1 = freq; in cfg80211_wext_siwfreq() 849 chandef.chan = ieee80211_get_channel(&rdev->wiphy, freq); in cfg80211_wext_siwfreq() 850 if (!chandef.chan) { in cfg80211_wext_siwfreq() 854 ret = cfg80211_set_monitor_channel(rdev, &chandef); in cfg80211_wext_siwfreq() 866 chandef.center_freq1 = freq; in cfg80211_wext_siwfreq() 867 chandef.chan = ieee80211_get_channel(&rdev->wiphy, freq); in cfg80211_wext_siwfreq() 868 if (!chandef.chan) { in cfg80211_wext_siwfreq() 872 ret = cfg80211_set_mesh_channel(rdev, wdev, &chandef); in cfg80211_wext_siwfreq() 891 struct cfg80211_chan_def chandef = {}; in cfg80211_wext_giwfreq() local [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 | 123 compat = &link_conf->chandef; in ieee80211_chanctx_non_reserved_chandef() 126 &link_conf->chandef, compat); in ieee80211_chanctx_non_reserved_chandef() 171 const struct cfg80211_chan_def *chandef, in ieee80211_find_reservation_chanctx() argument 189 chandef)) in ieee80211_find_reservation_chanctx() 292 width = max(link->conf->chandef.width, in ieee80211_get_chanctx_vif_max_required_bw() 301 width = link->conf->chandef.width; in ieee80211_get_chanctx_vif_max_required_bw() 477 const struct cfg80211_chan_def *chandef, in _ieee80211_change_chanctx() argument 483 switch (chandef->width) { in _ieee80211_change_chanctx() 502 if (cfg80211_chandef_identical(&ctx->conf.def, chandef)) { in _ieee80211_change_chanctx() 507 WARN_ON(!cfg80211_chandef_compatible(&ctx->conf.def, chandef)); in _ieee80211_change_chanctx() [all …]
|
D | mesh.c | 98 cfg80211_chandef_create(&sta_chan_def, sdata->vif.bss_conf.chandef.chan, in mesh_matches_local() 111 if (!cfg80211_chandef_compatible(&sdata->vif.bss_conf.chandef, in mesh_matches_local() 434 sdata->vif.bss_conf.chandef.width == NL80211_CHAN_WIDTH_20_NOHT || in mesh_add_ht_cap_ie() 435 sdata->vif.bss_conf.chandef.width == NL80211_CHAN_WIDTH_5 || in mesh_add_ht_cap_ie() 436 sdata->vif.bss_conf.chandef.width == NL80211_CHAN_WIDTH_10) in mesh_add_ht_cap_ie() 475 sdata->vif.bss_conf.chandef.width == NL80211_CHAN_WIDTH_20_NOHT || in mesh_add_ht_oper_ie() 476 sdata->vif.bss_conf.chandef.width == NL80211_CHAN_WIDTH_5 || in mesh_add_ht_oper_ie() 477 sdata->vif.bss_conf.chandef.width == NL80211_CHAN_WIDTH_10) in mesh_add_ht_oper_ie() 484 ieee80211_ie_build_ht_oper(pos, ht_cap, &sdata->vif.bss_conf.chandef, in mesh_add_ht_oper_ie() 506 sdata->vif.bss_conf.chandef.width == NL80211_CHAN_WIDTH_20_NOHT || in mesh_add_vht_cap_ie() [all …]
|
D | util.c | 1932 struct cfg80211_chan_def *chandef, in ieee80211_build_preq_ies_band() argument 1955 rate_flags = ieee80211_chandef_rate_flags(chandef); in ieee80211_build_preq_ies_band() 1956 shift = ieee80211_chandef_get_shift(chandef); in ieee80211_build_preq_ies_band() 2015 if (chandef->chan && sband->band == NL80211_BAND_2GHZ) { in ieee80211_build_preq_ies_band() 2021 chandef->chan->center_freq); in ieee80211_build_preq_ies_band() 2172 struct cfg80211_chan_def *chandef, in ieee80211_build_preq_ies() argument 2187 chandef, in ieee80211_build_preq_ies() 2220 struct cfg80211_chan_def chandef; in ieee80211_build_probe_req() local 2232 chandef.width = sdata->vif.bss_conf.chandef.width; in ieee80211_build_probe_req() 2234 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 | 78 struct cfg80211_chan_def chandef; in ieee80211_tdls_add_subband() local 89 cfg80211_chandef_create(&chandef, ch, in ieee80211_tdls_add_subband() 91 if (cfg80211_reg_can_beacon_relax(wiphy, &chandef, in ieee80211_tdls_add_subband() 162 if (!ieee80211_chandef_to_operating_class(&link->conf->chandef, in ieee80211_tdls_add_oper_classes() 441 sta->tdls_chandef = link->conf->chandef; in ieee80211_tdls_add_setup_start_ies() 641 sta->tdls_chandef = link->conf->chandef; in ieee80211_tdls_add_setup_cfm_ies() 687 &link->conf->chandef, prot, in ieee80211_tdls_add_setup_cfm_ies() 720 struct cfg80211_chan_def *chandef) in ieee80211_tdls_add_chan_switch_req_ies() argument 725 if (WARN_ON_ONCE(!chandef)) in ieee80211_tdls_add_chan_switch_req_ies() 730 ieee80211_frequency_to_channel(chandef->chan->center_freq); in ieee80211_tdls_add_chan_switch_req_ies() [all …]
|
D | main.c | 98 struct cfg80211_chan_def chandef = {}; in ieee80211_hw_conf_chan() local 106 chandef = local->scan_chandef; in ieee80211_hw_conf_chan() 108 chandef.chan = local->tmp_channel; in ieee80211_hw_conf_chan() 109 chandef.width = NL80211_CHAN_WIDTH_20_NOHT; in ieee80211_hw_conf_chan() 110 chandef.center_freq1 = chandef.chan->center_freq; in ieee80211_hw_conf_chan() 111 chandef.freq1_offset = chandef.chan->freq_offset; in ieee80211_hw_conf_chan() 113 chandef = local->_oper_chandef; in ieee80211_hw_conf_chan() 115 WARN(!cfg80211_chandef_valid(&chandef), in ieee80211_hw_conf_chan() 117 chandef.chan->center_freq, chandef.chan->freq_offset, in ieee80211_hw_conf_chan() 118 chandef.width, chandef.center_freq1, chandef.freq1_offset, in ieee80211_hw_conf_chan() [all …]
|
D | mlme.c | 98 struct cfg80211_chan_def *chandef, u16 bitmap) in ieee80211_extract_dis_subch_bmap() argument 101 struct cfg80211_chan_def ap_chandef = *chandef; in ieee80211_extract_dis_subch_bmap() 118 local_center_freq = chandef->center_freq1; in ieee80211_extract_dis_subch_bmap() 119 local_bw = 20 * BIT(ieee80211_chan_width_to_rx_bw(chandef->width)); in ieee80211_extract_dis_subch_bmap() 136 struct cfg80211_chan_def *chandef = &link->conf->chandef; in ieee80211_handle_puncturing_bitmap() local 143 while (chandef->width > NL80211_CHAN_WIDTH_40) { in ieee80211_handle_puncturing_bitmap() 145 ieee80211_extract_dis_subch_bmap(eht_oper, chandef, in ieee80211_handle_puncturing_bitmap() 149 chandef)) in ieee80211_handle_puncturing_bitmap() 152 ieee80211_chandef_downgrade(chandef); in ieee80211_handle_puncturing_bitmap() 156 if (chandef->width <= NL80211_CHAN_WIDTH_40) in ieee80211_handle_puncturing_bitmap() [all …]
|
D | ieee80211_i.h | 578 struct cfg80211_chan_def chandef; member 1169 ieee80211_chandef_get_shift(struct cfg80211_chan_def *chandef) in ieee80211_chandef_get_shift() argument 1171 return ieee80211_chanwidth_get_shift(chandef->width); in ieee80211_chandef_get_shift() 1662 struct cfg80211_chan_def chandef; member 2461 struct cfg80211_chan_def *chandef, 2485 const struct cfg80211_chan_def *chandef, 2488 const struct cfg80211_chan_def *chandef); 2492 const struct cfg80211_chan_def *chandef); 2500 u8 *ieee80211_ie_build_he_oper(u8 *pos, struct cfg80211_chan_def *chandef); 2501 u8 *ieee80211_ie_build_eht_oper(u8 *pos, struct cfg80211_chan_def *chandef, [all …]
|
D | scan.c | 318 static void ieee80211_prepare_scan_chandef(struct cfg80211_chan_def *chandef) in ieee80211_prepare_scan_chandef() argument 320 memset(chandef, 0, sizeof(*chandef)); in ieee80211_prepare_scan_chandef() 322 chandef->width = NL80211_CHAN_WIDTH_20_NOHT; in ieee80211_prepare_scan_chandef() 330 struct cfg80211_chan_def chandef; in ieee80211_prep_hw_scan() local 370 ieee80211_prepare_scan_chandef(&chandef); in ieee80211_prep_hw_scan() 380 bands_used, req->rates, &chandef, in ieee80211_prep_hw_scan() 633 enum nl80211_band band = local->hw.conf.chandef.chan->band; in ieee80211_scan_state_send_probe() 656 tx_flags, local->hw.conf.chandef.chan); in ieee80211_scan_state_send_probe() 1268 struct cfg80211_chan_def chandef; in __ieee80211_request_sched_scan_start() local 1299 ieee80211_prepare_scan_chandef(&chandef); in __ieee80211_request_sched_scan_start() [all …]
|
D | cfg.c | 910 struct cfg80211_chan_def *chandef) in ieee80211_set_monitor_channel() argument 916 if (cfg80211_chandef_identical(&local->monitor_chandef, chandef)) in ieee80211_set_monitor_channel() 927 chandef, in ieee80211_set_monitor_channel() 935 local->_oper_chandef = *chandef; in ieee80211_set_monitor_channel() 942 local->monitor_chandef = *chandef; in ieee80211_set_monitor_channel() 1391 err = ieee80211_link_use_channel(link, ¶ms->chandef, in ieee80211_start_ap() 1429 sdata->vif.cfg.s1g = params->chandef.chan->band == in ieee80211_start_ap() 1577 struct cfg80211_chan_def chandef; in ieee80211_stop_ap() local 1648 chandef = link_conf->chandef; in ieee80211_stop_ap() 1650 cfg80211_cac_event(sdata->dev, &chandef, in ieee80211_stop_ap() [all …]
|