qcacmn: Use correct wbm_ring_num for SW5 and SW6

With KIWI_V2, wbm_ring_num for WBM2SW5 and WBM2SW6 have been changed
to 5 and 6. Hence properly update them in g_tcl_wbm_map_array. At the
same time, tx_ring_mask_msi and tx_ring_near_full_irq_mask are also
updated.

With IPA_OFFLOAD enabled soc->tcl_data_ring[0|1|2] is used by HOST
and the other two rings are allocated to IPA usage.

Change-Id: I4c13d0787e46be667c3a5a0ae624df8c2b2b354e
CRs-Fixed: 3229375
This commit is contained in:
Jia Ding
2022-06-27 11:36:40 +08:00
committed by Madan Koyyalamudi
parent 8bddc409a3
commit 720b38fbc6
3 changed files with 29 additions and 10 deletions

View File

@@ -38,8 +38,13 @@ static struct wlan_cfg_tcl_wbm_ring_num_map g_tcl_wbm_map_array[MAX_TCL_DATA_RIN
{.tcl_ring_num = 0, .wbm_ring_num = 0, .wbm_rbm_id = HAL_BE_WBM_SW0_BM_ID, .for_ipa = 0}, {.tcl_ring_num = 0, .wbm_ring_num = 0, .wbm_rbm_id = HAL_BE_WBM_SW0_BM_ID, .for_ipa = 0},
{1, 4, HAL_BE_WBM_SW4_BM_ID, 0}, {1, 4, HAL_BE_WBM_SW4_BM_ID, 0},
{2, 2, HAL_BE_WBM_SW2_BM_ID, 0}, {2, 2, HAL_BE_WBM_SW2_BM_ID, 0},
#ifdef QCA_WIFI_KIWI_V2
{3, 5, HAL_BE_WBM_SW5_BM_ID, 0},
{4, 6, HAL_BE_WBM_SW6_BM_ID, 0}
#else
{3, 6, HAL_BE_WBM_SW5_BM_ID, 0}, {3, 6, HAL_BE_WBM_SW5_BM_ID, 0},
{4, 7, HAL_BE_WBM_SW6_BM_ID, 0} {4, 7, HAL_BE_WBM_SW6_BM_ID, 0}
#endif
}; };
#else #else
#define DP_TX_VDEV_ID_CHECK_ENABLE 1 #define DP_TX_VDEV_ID_CHECK_ENABLE 1

View File

@@ -130,13 +130,20 @@ struct dp_int_mask_assignment {
* the below TX mask. * the below TX mask.
*/ */
static const uint8_t tx_ring_mask_msi[WLAN_CFG_INT_NUM_CONTEXTS] = { static const uint8_t tx_ring_mask_msi[WLAN_CFG_INT_NUM_CONTEXTS] = {
[0] = WLAN_CFG_TX_RING_MASK_0, [1] = WLAN_CFG_TX_RING_MASK_6, [0] = WLAN_CFG_TX_RING_MASK_0, [1] = WLAN_CFG_TX_RING_MASK_4,
[2] = WLAN_CFG_TX_RING_MASK_7}; [2] = WLAN_CFG_TX_RING_MASK_2};
#else #else /* !IPA_OFFLOAD */
#ifdef QCA_WIFI_KIWI_V2
static const uint8_t tx_ring_mask_msi[WLAN_CFG_INT_NUM_CONTEXTS] = {
[0] = WLAN_CFG_TX_RING_MASK_0, [1] = WLAN_CFG_TX_RING_MASK_4,
[2] = WLAN_CFG_TX_RING_MASK_2, [3] = WLAN_CFG_TX_RING_MASK_5,
[4] = WLAN_CFG_TX_RING_MASK_6};
#else /* !QCA_WIFI_KIWI_V2 */
static const uint8_t tx_ring_mask_msi[WLAN_CFG_INT_NUM_CONTEXTS] = { static const uint8_t tx_ring_mask_msi[WLAN_CFG_INT_NUM_CONTEXTS] = {
[0] = WLAN_CFG_TX_RING_MASK_0, [1] = WLAN_CFG_TX_RING_MASK_4, [0] = WLAN_CFG_TX_RING_MASK_0, [1] = WLAN_CFG_TX_RING_MASK_4,
[2] = WLAN_CFG_TX_RING_MASK_2, [3] = WLAN_CFG_TX_RING_MASK_6, [2] = WLAN_CFG_TX_RING_MASK_2, [3] = WLAN_CFG_TX_RING_MASK_6,
[4] = WLAN_CFG_TX_RING_MASK_7}; [4] = WLAN_CFG_TX_RING_MASK_7};
#endif /* QCA_WIFI_KIWI_V2 */
#endif /* IPA_OFFLOAD */ #endif /* IPA_OFFLOAD */
static inline const static inline const

View File

@@ -64,8 +64,8 @@
WLAN_CFG_RX_RING_MASK_6) WLAN_CFG_RX_RING_MASK_6)
#define WLAN_CFG_TX_RING_NEAR_FULL_IRQ_MASK (WLAN_CFG_TX_RING_MASK_0 | \ #define WLAN_CFG_TX_RING_NEAR_FULL_IRQ_MASK (WLAN_CFG_TX_RING_MASK_0 | \
WLAN_CFG_TX_RING_MASK_6 | \ WLAN_CFG_TX_RING_MASK_4 | \
WLAN_CFG_TX_RING_MASK_7) WLAN_CFG_TX_RING_MASK_2)
#else #else
#define WLAN_CFG_RX_NEAR_FULL_IRQ_MASK_1 (WLAN_CFG_RX_RING_MASK_0 | \ #define WLAN_CFG_RX_NEAR_FULL_IRQ_MASK_1 (WLAN_CFG_RX_RING_MASK_0 | \
@@ -78,12 +78,19 @@
WLAN_CFG_RX_RING_MASK_6 | \ WLAN_CFG_RX_RING_MASK_6 | \
WLAN_CFG_RX_RING_MASK_7) WLAN_CFG_RX_RING_MASK_7)
#ifdef QCA_WIFI_KIWI_V2
#define WLAN_CFG_TX_RING_NEAR_FULL_IRQ_MASK (WLAN_CFG_TX_RING_MASK_0 | \
WLAN_CFG_TX_RING_MASK_4 | \
WLAN_CFG_TX_RING_MASK_2 | \
WLAN_CFG_TX_RING_MASK_5 | \
WLAN_CFG_TX_RING_MASK_6)
#else /* !QCA_WIFI_KIWI_V2 */
#define WLAN_CFG_TX_RING_NEAR_FULL_IRQ_MASK (WLAN_CFG_TX_RING_MASK_0 | \ #define WLAN_CFG_TX_RING_NEAR_FULL_IRQ_MASK (WLAN_CFG_TX_RING_MASK_0 | \
WLAN_CFG_TX_RING_MASK_4 | \ WLAN_CFG_TX_RING_MASK_4 | \
WLAN_CFG_TX_RING_MASK_2 | \ WLAN_CFG_TX_RING_MASK_2 | \
WLAN_CFG_TX_RING_MASK_6 | \ WLAN_CFG_TX_RING_MASK_6 | \
WLAN_CFG_TX_RING_MASK_7) WLAN_CFG_TX_RING_MASK_7)
#endif /* QCA_WIFI_KIWI_V2 */
#endif #endif
#endif #endif