qcacmn: Populate DFS_CFREQ2 and BW-NSS mapping
Make the following TLV WMI layer changes related to 160/80+80 MHz functionality: - While forming the VDEV start/restart command, if the request from the upper layer indicates the dfs_set_cfreq2 flag, then enable the WMI_CHAN_FLAG_DFS_CFREQ2 channel flag. This is needed in order to enable radar event reporting for the secondary 80 MHz segment. Make this change only in the WIN specific implementation of copy_channel_info(). If required for MCL, to be handled separately. - Move the 'peer_bw_rxnss_override' member in 'struct peer_assoc_params' to outside the '#ifndef CONFIG_MCL' section so that it is available both on MCL and WIN. Since in MCL code peer_assoc_params is initialized to all zeros and peer_bw_rxnss_override is not set anywhere later, this should have no side effects. - While forming the PEER assoc completion command, populate the peer_bw_rxnss_override field as per the corresponding parameter sent by the upper layer. This is required for providing override values of Rx NSS for bandwidths higher than 80 MHz. Testing: - Tested on QCA8074 that the WMI_CHAN_FLAG_DFS_CFREQ2 channel flag is being set in the VDEV start command if the secondary 80 MHz lies on DFS channels (tried VHT160 and VHT80_80) - Tested on QCA8074 AP and STA that the peer_bw_rxnss_override value is being set in the PEER assoc completion command to indicate Rx NSS value 2, when NSS value 4 is used for <=80 MHz (tried VHT160 and VHT80_80). Also tested ping. Change-Id: Ic45d80567eeed3707f76e513f772ce4da71d6ee0 CRs-Fixed: 2022037
This commit is contained in:

committed by
Sandeep Puligilla

parent
a0f4e9333c
commit
938daa86b6
@@ -1080,9 +1080,9 @@ struct peer_assoc_params {
|
||||
uint32_t tx_max_rate;
|
||||
uint32_t tx_mcs_set;
|
||||
uint8_t vht_capable;
|
||||
uint32_t peer_bw_rxnss_override;
|
||||
#ifndef CONFIG_MCL
|
||||
uint32_t tx_max_mcs_nss;
|
||||
uint32_t peer_bw_rxnss_override;
|
||||
bool is_pmf_enabled;
|
||||
bool is_wme_set;
|
||||
bool qos_flag;
|
||||
|
Reference in New Issue
Block a user