Lines Matching refs:hapd

89 u8 * hostapd_eid_he_capab(struct hostapd_data *hapd, u8 *eid,  in hostapd_eid_he_capab()  argument
93 struct hostapd_hw_modes *mode = hapd->iface->current_mode; in hostapd_eid_he_capab()
105 switch (hapd->iface->conf->he_oper_chwidth) { in hostapd_eid_he_capab()
142 if (hapd->iface->conf->he_phy_capab.he_su_beamformer) in hostapd_eid_he_capab()
149 if (hapd->iface->conf->he_phy_capab.he_su_beamformee) in hostapd_eid_he_capab()
156 if (hapd->iface->conf->he_phy_capab.he_mu_beamformer) in hostapd_eid_he_capab()
172 u8 * hostapd_eid_he_operation(struct hostapd_data *hapd, u8 *eid) in hostapd_eid_he_operation() argument
179 if (!hapd->iface->current_mode) in hostapd_eid_he_operation()
182 if (is_6ghz_op_class(hapd->iconf->op_class)) in hostapd_eid_he_operation()
192 if (hapd->iface->conf->he_op.he_default_pe_duration) in hostapd_eid_he_operation()
193 params |= (hapd->iface->conf->he_op.he_default_pe_duration << in hostapd_eid_he_operation()
196 if (hapd->iface->conf->he_op.he_twt_required) in hostapd_eid_he_operation()
199 if (hapd->iface->conf->he_op.he_rts_threshold) in hostapd_eid_he_operation()
200 params |= (hapd->iface->conf->he_op.he_rts_threshold << in hostapd_eid_he_operation()
203 if (hapd->iface->conf->he_op.he_er_su_disable) in hostapd_eid_he_operation()
206 if (hapd->iface->conf->he_op.he_bss_color_disabled || in hostapd_eid_he_operation()
207 hapd->cca_in_progress) in hostapd_eid_he_operation()
209 if (hapd->iface->conf->he_op.he_bss_color_partial) in hostapd_eid_he_operation()
211 params |= hapd->iface->conf->he_op.he_bss_color << in hostapd_eid_he_operation()
216 host_to_le16(hapd->iface->conf->he_op.he_basic_mcs_nss_set); in hostapd_eid_he_operation()
222 if (is_6ghz_op_class(hapd->iconf->op_class)) { in hostapd_eid_he_operation()
224 hostapd_get_oper_chwidth(hapd->iconf); in hostapd_eid_he_operation()
225 u8 seg0 = hapd->iconf->he_oper_centr_freq_seg0_idx; in hostapd_eid_he_operation()
226 u8 seg1 = hostapd_get_oper_centr_freq_seg1_idx(hapd->iconf); in hostapd_eid_he_operation()
229 u16 punct_bitmap = hostapd_get_punct_bitmap(hapd); in hostapd_eid_he_operation()
233 hapd->iconf->channel, in hostapd_eid_he_operation()
239 seg0 = hapd->iconf->channel; in hostapd_eid_he_operation()
247 *pos++ = hapd->iconf->channel; /* Primary Channel */ in hostapd_eid_he_operation()
260 control |= hapd->iconf->he_6ghz_reg_pwr_type << in hostapd_eid_he_operation()
273 if (hapd->iconf->channel < seg0) in hostapd_eid_he_operation()
291 u8 * hostapd_eid_he_mu_edca_parameter_set(struct hostapd_data *hapd, u8 *eid) in hostapd_eid_he_mu_edca_parameter_set() argument
297 pos = (u8 *) &hapd->iface->conf->he_mu_edca; in hostapd_eid_he_mu_edca_parameter_set()
311 os_memcpy(edca, &hapd->iface->conf->he_mu_edca, sizeof(*edca)); in hostapd_eid_he_mu_edca_parameter_set()
322 u8 * hostapd_eid_spatial_reuse(struct hostapd_data *hapd, u8 *eid) in hostapd_eid_spatial_reuse() argument
328 if (!hapd->iface->conf->spr.sr_control) in hostapd_eid_spatial_reuse()
331 if (hapd->iface->conf->spr.sr_control & in hostapd_eid_spatial_reuse()
335 if (hapd->iface->conf->spr.sr_control & in hostapd_eid_spatial_reuse()
346 spr->sr_ctrl = hapd->iface->conf->spr.sr_control; in hostapd_eid_spatial_reuse()
351 hapd->iface->conf->spr.non_srg_obss_pd_max_offset; in hostapd_eid_spatial_reuse()
355 *spr_param++ = hapd->iface->conf->spr.srg_obss_pd_min_offset; in hostapd_eid_spatial_reuse()
356 *spr_param++ = hapd->iface->conf->spr.srg_obss_pd_max_offset; in hostapd_eid_spatial_reuse()
358 hapd->iface->conf->spr.srg_bss_color_bitmap, 8); in hostapd_eid_spatial_reuse()
361 hapd->iface->conf->spr.srg_partial_bssid_bitmap, 8); in hostapd_eid_spatial_reuse()
369 u8 * hostapd_eid_he_6ghz_band_cap(struct hostapd_data *hapd, u8 *eid) in hostapd_eid_he_6ghz_band_cap() argument
371 struct hostapd_config *conf = hapd->iface->conf; in hostapd_eid_he_6ghz_band_cap()
372 struct hostapd_hw_modes *mode = hapd->iface->current_mode; in hostapd_eid_he_6ghz_band_cap()
378 if (!mode || !is_6ghz_op_class(hapd->iconf->op_class) || in hostapd_eid_he_6ghz_band_cap()
379 !is_6ghz_freq(hapd->iface->freq)) in hostapd_eid_he_6ghz_band_cap()
409 void hostapd_get_he_capab(struct hostapd_data *hapd, in hostapd_get_he_capab() argument
425 static int check_valid_he_mcs(struct hostapd_data *hapd, const u8 *sta_he_capab, in check_valid_he_mcs() argument
433 if (!hapd->iface->current_mode) in check_valid_he_mcs()
435 ap_mcs_set = (u16 *) hapd->iface->current_mode->he_capab[opmode].mcs; in check_valid_he_mcs()
445 switch (hapd->iface->conf->he_oper_chwidth) { in check_valid_he_mcs()
483 u16 copy_sta_he_capab(struct hostapd_data *hapd, struct sta_info *sta, in copy_sta_he_capab() argument
488 !hapd->iconf->ieee80211ax || hapd->conf->disable_11ax || in copy_sta_he_capab()
489 !check_valid_he_mcs(hapd, he_capab, opmode) || in copy_sta_he_capab()
514 u16 copy_sta_he_6ghz_capab(struct hostapd_data *hapd, struct sta_info *sta, in copy_sta_he_6ghz_capab() argument
517 if (!he_6ghz_capab || !hapd->iconf->ieee80211ax || in copy_sta_he_6ghz_capab()
518 hapd->conf->disable_11ax || in copy_sta_he_6ghz_capab()
519 !is_6ghz_op_class(hapd->iconf->op_class)) { in copy_sta_he_6ghz_capab()
541 int hostapd_get_he_twt_responder(struct hostapd_data *hapd, in hostapd_get_he_twt_responder() argument
546 if (!hapd->iface->current_mode || in hostapd_get_he_twt_responder()
547 !hapd->iface->current_mode->he_capab[mode].he_supported || in hostapd_get_he_twt_responder()
548 !hapd->iconf->ieee80211ax || hapd->conf->disable_11ax) in hostapd_get_he_twt_responder()
551 mac_cap = hapd->iface->current_mode->he_capab[mode].mac_cap; in hostapd_get_he_twt_responder()
554 hapd->iface->conf->he_op.he_twt_responder; in hostapd_get_he_twt_responder()
558 u8 * hostapd_eid_cca(struct hostapd_data *hapd, u8 *eid) in hostapd_eid_cca() argument
560 if (!hapd->cca_in_progress) in hostapd_eid_cca()
567 *eid++ = hapd->cca_count; /* Color Switch Countdown */ in hostapd_eid_cca()
568 *eid++ = hapd->cca_color; /* New BSS Color Information */ in hostapd_eid_cca()