diff --git a/dp/wifi3.0/dp_main.c b/dp/wifi3.0/dp_main.c index 43f138dd17..4da975cbd7 100644 --- a/dp/wifi3.0/dp_main.c +++ b/dp/wifi3.0/dp_main.c @@ -3610,13 +3610,6 @@ static void dp_ipa_hal_tx_init_alt_data_ring(struct dp_soc *soc) #else #define REO_DST_RING_SIZE_QCA6290 1024 -#ifndef CONFIG_WIFI_EMULATION_WIFI_3_0 -#define REO_DST_RING_SIZE_QCA8074 2048 -#define REO_DST_RING_SIZE_QCN9000 2048 -#else -#define REO_DST_RING_SIZE_QCA8074 8 -#define REO_DST_RING_SIZE_QCN9000 8 -#endif /* CONFIG_WIFI_EMULATION_WIFI_3_0 */ static int dp_ipa_init_alt_tx_ring(struct dp_soc *soc) { @@ -13036,8 +13029,6 @@ static void dp_soc_cfg_init(struct dp_soc *soc) soc->wlan_cfg_ctx->rxdma1_enable = 0; break; case TARGET_TYPE_QCA8074: - wlan_cfg_set_reo_dst_ring_size(soc->wlan_cfg_ctx, - REO_DST_RING_SIZE_QCA8074); wlan_cfg_set_raw_mode_war(soc->wlan_cfg_ctx, true); soc->da_war_enabled = true; soc->is_rx_fse_full_cache_invalidate_war_enabled = true; @@ -13045,8 +13036,6 @@ static void dp_soc_cfg_init(struct dp_soc *soc) case TARGET_TYPE_QCA8074V2: case TARGET_TYPE_QCA6018: case TARGET_TYPE_QCA9574: - wlan_cfg_set_reo_dst_ring_size(soc->wlan_cfg_ctx, - REO_DST_RING_SIZE_QCA8074); wlan_cfg_set_raw_mode_war(soc->wlan_cfg_ctx, false); soc->ast_override_support = 1; soc->per_tid_basize_max_tid = 8; @@ -13055,8 +13044,6 @@ static void dp_soc_cfg_init(struct dp_soc *soc) soc->is_rx_fse_full_cache_invalidate_war_enabled = true; break; case TARGET_TYPE_QCN9000: - wlan_cfg_set_reo_dst_ring_size(soc->wlan_cfg_ctx, - REO_DST_RING_SIZE_QCN9000); soc->ast_override_support = 1; soc->da_war_enabled = false; wlan_cfg_set_raw_mode_war(soc->wlan_cfg_ctx, false); @@ -13067,8 +13054,6 @@ static void dp_soc_cfg_init(struct dp_soc *soc) break; case TARGET_TYPE_QCA5018: case TARGET_TYPE_QCN6122: - wlan_cfg_set_reo_dst_ring_size(soc->wlan_cfg_ctx, - REO_DST_RING_SIZE_QCA8074); soc->ast_override_support = 1; soc->da_war_enabled = false; wlan_cfg_set_raw_mode_war(soc->wlan_cfg_ctx, false); @@ -13079,8 +13064,6 @@ static void dp_soc_cfg_init(struct dp_soc *soc) soc->wbm_release_desc_rx_sg_support = 1; break; case TARGET_TYPE_QCN9224: - wlan_cfg_set_reo_dst_ring_size(soc->wlan_cfg_ctx, - REO_DST_RING_SIZE_QCA8074); soc->ast_override_support = 1; soc->da_war_enabled = false; wlan_cfg_set_raw_mode_war(soc->wlan_cfg_ctx, false); @@ -13127,8 +13110,6 @@ static void dp_soc_cfg_attach(struct dp_soc *soc) break; case TARGET_TYPE_QCA8074: wlan_cfg_set_tso_desc_attach_defer(soc->wlan_cfg_ctx, 1); - wlan_cfg_set_reo_dst_ring_size(soc->wlan_cfg_ctx, - REO_DST_RING_SIZE_QCA8074); break; case TARGET_TYPE_QCA8074V2: case TARGET_TYPE_QCA6018: @@ -13136,20 +13117,14 @@ static void dp_soc_cfg_attach(struct dp_soc *soc) case TARGET_TYPE_QCN6122: case TARGET_TYPE_QCA5018: wlan_cfg_set_tso_desc_attach_defer(soc->wlan_cfg_ctx, 1); - wlan_cfg_set_reo_dst_ring_size(soc->wlan_cfg_ctx, - REO_DST_RING_SIZE_QCA8074); wlan_cfg_set_rxdma1_enable(soc->wlan_cfg_ctx); break; case TARGET_TYPE_QCN9000: wlan_cfg_set_tso_desc_attach_defer(soc->wlan_cfg_ctx, 1); - wlan_cfg_set_reo_dst_ring_size(soc->wlan_cfg_ctx, - REO_DST_RING_SIZE_QCN9000); wlan_cfg_set_rxdma1_enable(soc->wlan_cfg_ctx); break; case TARGET_TYPE_QCN9224: wlan_cfg_set_tso_desc_attach_defer(soc->wlan_cfg_ctx, 1); - wlan_cfg_set_reo_dst_ring_size(soc->wlan_cfg_ctx, - REO_DST_RING_SIZE_QCA8074); wlan_cfg_set_rxdma1_enable(soc->wlan_cfg_ctx); break; default: diff --git a/hal/wifi3.0/hal_tx.h b/hal/wifi3.0/hal_tx.h index 374cc5ec6a..bbe171c90d 100644 --- a/hal/wifi3.0/hal_tx.h +++ b/hal/wifi3.0/hal_tx.h @@ -553,7 +553,7 @@ static inline uint32_t hal_tx_comp_get_buffer_type(void *hal_desc) HAL_TX_COMP_BUFFER_OR_DESC_TYPE_LSB; } -#if defined(QCA_WIFI_WCN7850) || defined(CONFIG_WIFI_EMULATION_WIFI_3_0) +#ifdef QCA_WIFI_WCN7850 /** * hal_tx_comp_get_buffer_source() - Get buffer release source value * @hal_desc: completion ring descriptor pointer diff --git a/wlan_cfg/cfg_dp.h b/wlan_cfg/cfg_dp.h index 7819547c25..0947d739c0 100644 --- a/wlan_cfg/cfg_dp.h +++ b/wlan_cfg/cfg_dp.h @@ -272,8 +272,8 @@ #define WLAN_CFG_REO_DST_RING_SIZE 2048 #endif -#define WLAN_CFG_REO_DST_RING_SIZE_MIN 1024 -#define WLAN_CFG_REO_DST_RING_SIZE_MAX 2048 +#define WLAN_CFG_REO_DST_RING_SIZE_MIN 8 +#define WLAN_CFG_REO_DST_RING_SIZE_MAX 8192 #define WLAN_CFG_REO_REINJECT_RING_SIZE 128 #define WLAN_CFG_REO_REINJECT_RING_SIZE_MIN 32 @@ -804,6 +804,13 @@ WLAN_CFG_RX_RELEASE_RING_SIZE, \ CFG_VALUE_OR_DEFAULT, "DP Rx release ring") +#define CFG_DP_RX_DESTINATION_RING \ + CFG_INI_UINT("dp_reo_dst_ring", \ + WLAN_CFG_REO_DST_RING_SIZE_MIN, \ + WLAN_CFG_REO_DST_RING_SIZE_MAX, \ + WLAN_CFG_REO_DST_RING_SIZE, \ + CFG_VALUE_OR_DEFAULT, "DP REO destination ring") + #define CFG_DP_REO_EXCEPTION_RING \ CFG_INI_UINT("dp_reo_exception_ring", \ WLAN_CFG_REO_EXCEPTION_RING_SIZE_MIN, \ @@ -1369,6 +1376,7 @@ CFG(CFG_DP_REO_REINJECT_RING) \ CFG(CFG_DP_RX_RELEASE_RING) \ CFG(CFG_DP_REO_EXCEPTION_RING) \ + CFG(CFG_DP_RX_DESTINATION_RING) \ CFG(CFG_DP_REO_CMD_RING) \ CFG(CFG_DP_REO_STATUS_RING) \ CFG(CFG_DP_RXDMA_BUF_RING) \ diff --git a/wlan_cfg/wlan_cfg.c b/wlan_cfg/wlan_cfg.c index 20e1edd903..e5e8573638 100644 --- a/wlan_cfg/wlan_cfg.c +++ b/wlan_cfg/wlan_cfg.c @@ -1177,6 +1177,8 @@ wlan_cfg_soc_attach(struct cdp_ctrl_objmgr_psoc *psoc) CFG_DP_TCL_CMD_CREDIT_RING); wlan_cfg_ctx->tcl_status_ring = cfg_get(psoc, CFG_DP_TCL_STATUS_RING); + wlan_cfg_ctx->reo_dst_ring_size = cfg_get(psoc, + CFG_DP_RX_DESTINATION_RING); wlan_cfg_ctx->reo_reinject_ring = cfg_get(psoc, CFG_DP_REO_REINJECT_RING); wlan_cfg_ctx->rx_release_ring = cfg_get(psoc,