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
1 file changed