qcacmn: Read EML and MLD Cap from target

Extract EML and MLD Capabilities from Target via
wmi_service_ready_ext2_event. These values can be
used while advertising EML and MLD Capabilities.

Add helper function to get EML related delays in
Micro Secs from values got from EML and MLD advertisments.

Send EML Capabilities received from node to Target
via WMI_PEER_ASSOC.

CRs-Fixed: 3225495
Change-Id: Ibfa2ff8dbf11d4293125331376a7986e611d5f63
This commit is contained in:
Shreedhar Parande
2022-06-21 15:31:42 +05:30
committed by Madan Koyyalamudi
parent 3262a03a31
commit e6b1ed7180
5 changed files with 114 additions and 11 deletions

View File

@@ -1121,11 +1121,15 @@ struct wmi_host_tid_to_link_map_params {
* @mlo_peer_id_valid: indicate if the mlo peer id is valid
* @mlo_force_link_inactive: force the peer inactive
* @emlsr_support: indicate if eMLSR supported
* @emlmr_support: indicate if eMLMR supported
* @mld_mac: MLD mac address
* @logical_link_index: Unique index for links of the mlo. Starts with Zero
* @ml_peer_id: ML peer id if generated by host. Otherwise invalid peer id
* @ieee_link_id: peer link ID
* @emlsr_trans_timeout: Transition timeout value from peer for eMLSR links
* @emlsr_pad_delay_us: eMLSR Padding Delay from peer in us
* @emlsr_trans_delay_us: eMLSR Transition Delay from peer in us
* @emlmr_delay_us: eMLMR Delay from peer in us
* @trans_timeout_us: EML Transition Timeout in us
*/
struct peer_assoc_mlo_params {
uint32_t mlo_enabled:1,
@@ -1135,12 +1139,16 @@ struct peer_assoc_mlo_params {
mlo_peer_id_valid:1,
mlo_force_link_inactive:1,
emlsr_support:1,
emlmr_support:1,
unused:25;
uint8_t mld_mac[QDF_MAC_ADDR_SIZE];
uint32_t logical_link_index;
uint32_t ml_peer_id;
uint32_t ieee_link_id;
uint32_t emlsr_trans_timeout;
uint16_t emlsr_pad_delay_us;
uint16_t emlsr_trans_delay_us;
uint16_t emlmr_delay_us;
uint32_t trans_timeout_us;
};
/**