diff --git a/umac/cmn_services/cmn_defs/inc/wlan_cmn_ieee80211.h b/umac/cmn_services/cmn_defs/inc/wlan_cmn_ieee80211.h index af34f38c8d4a..1c84de19a14f 100644 --- a/umac/cmn_services/cmn_defs/inc/wlan_cmn_ieee80211.h +++ b/umac/cmn_services/cmn_defs/inc/wlan_cmn_ieee80211.h @@ -348,13 +348,15 @@ enum element_ie { /** * enum extn_element_ie :- extended management information element - * @WLAN_EXTN_ELEMID_HECAP: HE capabilities IE - * @WLAN_EXTN_ELEMID_HEOP: HE Operation IE - * @WLAN_EXTN_ELEMID_SRP: spatial reuse parameter IE + * @WLAN_EXTN_ELEMID_HECAP: HE capabilities IE + * @WLAN_EXTN_ELEMID_HEOP: HE Operation IE + * @WLAN_EXTN_ELEMID_MUEDCA: MU-EDCA IE + * @WLAN_EXTN_ELEMID_SRP: spatial reuse parameter IE */ enum extn_element_ie { WLAN_EXTN_ELEMID_HECAP = 35, WLAN_EXTN_ELEMID_HEOP = 36, + WLAN_EXTN_ELEMID_MUEDCA = 38, WLAN_EXTN_ELEMID_SRP = 39, WLAN_EXTN_ELEMID_ESP = 11, }; diff --git a/umac/scan/dispatcher/inc/wlan_scan_public_structs.h b/umac/scan/dispatcher/inc/wlan_scan_public_structs.h index 5a9b97e1410f..88a9116b1592 100644 --- a/umac/scan/dispatcher/inc/wlan_scan_public_structs.h +++ b/umac/scan/dispatcher/inc/wlan_scan_public_structs.h @@ -196,6 +196,7 @@ struct ie_list { uint8_t *fils_indication; uint8_t *esp; uint8_t *mbo_oce; + uint8_t *muedca; }; enum scan_entry_connection_state { diff --git a/umac/scan/dispatcher/inc/wlan_scan_utils_api.h b/umac/scan/dispatcher/inc/wlan_scan_utils_api.h index 7e7fef118125..47ae06b779be 100644 --- a/umac/scan/dispatcher/inc/wlan_scan_utils_api.h +++ b/umac/scan/dispatcher/inc/wlan_scan_utils_api.h @@ -1332,6 +1332,20 @@ util_scan_entry_heop(struct scan_cache_entry *scan_entry) return scan_entry->ie_list.heop; } +/** + * util_scan_entry_muedca() - function to read MU-EDCA IE + * @scan_entry: scan entry + * + * API, function to read MU-EDCA IE + * + * Return, MUEDCA IE or NULL if IE is not present + */ +static inline uint8_t* +util_scan_entry_muedca(struct scan_cache_entry *scan_entry) +{ + return scan_entry->ie_list.muedca; +} + /** * util_scan_entry_spatial_reuse_parameter() - function to read spatial reuse * parameter ie diff --git a/umac/scan/dispatcher/src/wlan_scan_utils_api.c b/umac/scan/dispatcher/src/wlan_scan_utils_api.c index 88141223f036..79834820b009 100644 --- a/umac/scan/dispatcher/src/wlan_scan_utils_api.c +++ b/umac/scan/dispatcher/src/wlan_scan_utils_api.c @@ -369,6 +369,9 @@ util_scan_parse_extn_ie(struct scan_cache_entry *scan_params, case WLAN_EXTN_ELEMID_ESP: scan_params->ie_list.esp = (uint8_t *)ie; break; + case WLAN_EXTN_ELEMID_MUEDCA: + scan_params->ie_list.muedca = (uint8_t *)ie; + break; default: break; }