Lines Matching refs:elems
41 static bool is_uapsd_supported(struct ieee802_11_elems *elems)
45 if (elems->wmm_info && elems->wmm_info_len == 7
46 && elems->wmm_info[5] == 1)
47 qos_info = elems->wmm_info[6];
48 else if (elems->wmm_param && elems->wmm_param_len == 24
49 && elems->wmm_param[5] == 1)
50 qos_info = elems->wmm_param[6];
72 struct ieee802_11_elems *elems;
79 elems = ieee802_11_parse_elems(ies->data, ies->len, false, NULL);
80 if (!elems)
90 if (elems->parse_error) {
103 if (elems->erp_info && (!elems->parse_error ||
105 bss->erp_value = elems->erp_info[0];
107 if (!elems->parse_error)
112 if (!elems->parse_error ||
115 if (elems->supp_rates) {
117 if (clen > elems->supp_rates_len)
118 clen = elems->supp_rates_len;
119 memcpy(bss->supp_rates, elems->supp_rates, clen);
122 if (elems->ext_supp_rates) {
124 if (clen > elems->ext_supp_rates_len)
125 clen = elems->ext_supp_rates_len;
126 memcpy(bss->supp_rates + srlen, elems->ext_supp_rates,
132 if (!elems->parse_error)
137 if (!elems->parse_error ||
139 bss->wmm_used = elems->wmm_param || elems->wmm_info;
140 bss->uapsd_supported = is_uapsd_supported(elems);
141 if (!elems->parse_error)
154 if (elems->vht_cap_elem)
156 le32_to_cpu(elems->vht_cap_elem->vht_cap_info);
160 kfree(elems);