qcacmn: Reserve a TX bank for FW usage
FW has some usecases when it needs to enqueue frames into hardware. In BE WLAN chips, some hardware TX desc fields are moved into Tx banks, hence a TX bank is also needed to queue to HW. Dedicate a bank for FW usage. Change-Id: I1f19f0ef85aff4c7592b0f07de4631259da743a6 CRs-Fixed: 3016828
This commit is contained in:

committed by
Madan Koyyalamudi

parent
fa7d919cbc
commit
af4c03b546
@@ -22,6 +22,10 @@
|
||||
#include "hal_be_hw_headers.h"
|
||||
#include "hal_tx.h"
|
||||
|
||||
/* Number of TX banks reserved i.e, will not be used by host driver. */
|
||||
/* MAX_TCL_BANK reserved for FW use */
|
||||
#define HAL_TX_NUM_RESERVED_BANKS 1
|
||||
|
||||
enum hal_be_tx_ret_buf_manager {
|
||||
HAL_BE_WBM_SW0_BM_ID = 5,
|
||||
HAL_BE_WBM_SW1_BM_ID = 6,
|
||||
@@ -416,11 +420,15 @@ static inline uint8_t
|
||||
hal_tx_get_num_tcl_banks(hal_soc_handle_t hal_soc_hdl)
|
||||
{
|
||||
struct hal_soc *hal_soc = (struct hal_soc *)hal_soc_hdl;
|
||||
int hal_banks = 0;
|
||||
|
||||
if (hal_soc->ops->hal_tx_get_num_tcl_banks)
|
||||
return hal_soc->ops->hal_tx_get_num_tcl_banks();
|
||||
if (hal_soc->ops->hal_tx_get_num_tcl_banks) {
|
||||
hal_banks = hal_soc->ops->hal_tx_get_num_tcl_banks();
|
||||
hal_banks -= HAL_TX_NUM_RESERVED_BANKS;
|
||||
hal_banks = (hal_banks < 0) ? 0 : hal_banks;
|
||||
}
|
||||
|
||||
return 0;
|
||||
return hal_banks;
|
||||
}
|
||||
|
||||
/**
|
||||
|
Reference in New Issue
Block a user