qcacmn: Set retry_limit_ext for MGMT frame send WMI command

Some p2p action frame needs big retry count than the default
max 15 retry count to get high tx successful ratio.
FW allocates 3 extra bits for retry count setup.
To use this field needs FW change in CR 3082533.
Set the extra 3 bits "retry_limit_ext" to "tx_param_dword0"
field for WMI MGMT send command. Existing 4 bits
"retry_limit" combines with this new 3 bits
"retry_limit_ext" to create a 7 bits retry count:
bit 0 - 3: retry_limit
bit 4 - 6: retry_limit_ext.
So Maximum 127 retries can be specified to a certain mgmt
frame.
To use this field needs FW change in CR 3082533.

Change-Id: I889933ea1750c03701ba8a60340f27e6c2594c1b
CRs-Fixed: 3082534
This commit is contained in:
Liangwei Dong 2021-11-23 11:29:38 +08:00
commit 87b2d3e4ea
2 changed files with 8 additions and 1 deletions

View file

@ -1300,6 +1300,10 @@ struct seg_hdr_info {
* 0:disable 1:enable
* @en_beamforming: flag to enable tx beamforming
* 0:disable 1:enable
* @retry_limit_ext: 3 bits of extended retry limit.
* Combined with 4 bits "retry_limit"
* to create 7 bits hw retry count.
* Maximum 127 retries for specific frames.
*/
struct tx_send_params {
uint32_t pwr:8,
@ -1312,7 +1316,8 @@ struct tx_send_params {
frame_type:1,
cfr_enable:1,
en_beamforming:1,
reserved:9;
retry_limit_ext:3,
reserved:6;
};
/**

View file

@ -3395,6 +3395,8 @@ static inline QDF_STATUS populate_tx_send_params(uint8_t *bufp,
param.cfr_enable);
WMI_TX_SEND_PARAM_BEAMFORM_SET(tx_param->tx_param_dword1,
param.en_beamforming);
WMI_TX_SEND_PARAM_RETRY_LIMIT_EXT_SET(tx_param->tx_param_dword1,
param.retry_limit_ext);
return status;
}