Lines Matching defs:out
12 struct cfg80211_pmsr_request_peer *out,
20 if (!(rdev->wiphy.pmsr_capa->ftm.bandwidths & BIT(out->chandef.width))) {
33 out->ftm.requested = true;
35 switch (out->chandef.chan->band) {
54 out->ftm.preamble = preamble;
56 out->ftm.burst_period = 0;
58 out->ftm.burst_period =
61 out->ftm.asap = !!tb[NL80211_PMSR_FTM_REQ_ATTR_ASAP];
62 if (out->ftm.asap && !capa->ftm.asap) {
69 if (!out->ftm.asap && !capa->ftm.non_asap) {
75 out->ftm.num_bursts_exp = 0;
77 out->ftm.num_bursts_exp =
81 out->ftm.num_bursts_exp > capa->ftm.max_bursts_exponent) {
88 out->ftm.burst_duration = 15;
90 out->ftm.burst_duration =
93 out->ftm.ftms_per_burst = 0;
95 out->ftm.ftms_per_burst =
99 (out->ftm.ftms_per_burst > capa->ftm.max_ftms_per_burst ||
100 out->ftm.ftms_per_burst == 0)) {
107 out->ftm.ftmr_retries = 3;
109 out->ftm.ftmr_retries =
112 out->ftm.request_lci = !!tb[NL80211_PMSR_FTM_REQ_ATTR_REQUEST_LCI];
113 if (out->ftm.request_lci && !capa->ftm.request_lci) {
119 out->ftm.request_civicloc =
121 if (out->ftm.request_civicloc && !capa->ftm.request_civicloc) {
127 out->ftm.trigger_based =
129 if (out->ftm.trigger_based && !capa->ftm.trigger_based) {
136 out->ftm.non_trigger_based =
138 if (out->ftm.non_trigger_based && !capa->ftm.non_trigger_based) {
145 if (out->ftm.trigger_based && out->ftm.non_trigger_based) {
151 if ((out->ftm.trigger_based || out->ftm.non_trigger_based) &&
152 out->ftm.preamble != NL80211_PREAMBLE_HE) {
159 out->ftm.lmr_feedback =
161 if (!out->ftm.trigger_based && !out->ftm.non_trigger_based &&
162 out->ftm.lmr_feedback) {
170 if (!out->ftm.non_trigger_based && !out->ftm.trigger_based) {
177 out->ftm.bss_color =
186 struct cfg80211_pmsr_request_peer *out,
206 memcpy(out->addr, nla_data(tb[NL80211_PMSR_PEER_ATTR_ADDR]), ETH_ALEN);
216 err = nl80211_parse_chandef(rdev, info, &out->chandef);
233 out->report_ap_tsf = true;
235 if (out->report_ap_tsf && !rdev->wiphy.pmsr_capa->report_ap_tsf) {
245 err = pmsr_parse_ftm(rdev, treq, out, info);