1 // SPDX-License-Identifier: GPL-2.0-only 2 /* 3 * UHR handling 4 * 5 * Copyright(c) 2025-2026 Intel Corporation 6 */ 7 8 #include "ieee80211_i.h" 9 10 void 11 ieee80211_uhr_cap_ie_to_sta_uhr_cap(struct ieee80211_sub_if_data *sdata, 12 struct ieee80211_supported_band *sband, 13 const struct ieee80211_uhr_cap *uhr_cap, 14 u8 uhr_cap_len, 15 struct link_sta_info *link_sta) 16 { 17 struct ieee80211_sta_uhr_cap *sta_uhr_cap = &link_sta->pub->uhr_cap; 18 bool from_ap; 19 20 memset(sta_uhr_cap, 0, sizeof(*sta_uhr_cap)); 21 22 if (!ieee80211_get_uhr_iftype_cap_vif(sband, &sdata->vif)) 23 return; 24 25 sta_uhr_cap->has_uhr = true; 26 27 sta_uhr_cap->mac = uhr_cap->mac; 28 from_ap = sdata->vif.type == NL80211_IFTYPE_STATION; 29 sta_uhr_cap->phy = *ieee80211_uhr_phy_cap(uhr_cap, from_ap); 30 } 31