diff --git a/dp/wifi3.0/dp_main.c b/dp/wifi3.0/dp_main.c index 0543f25619..dcc5471e60 100644 --- a/dp/wifi3.0/dp_main.c +++ b/dp/wifi3.0/dp_main.c @@ -4975,18 +4975,20 @@ static QDF_STATUS dp_rxdma_ring_config(struct dp_soc *soc) hal_srng, RXDMA_BUF); #ifndef DISABLE_MON_CONFIG - htt_srng_setup(soc->htt_handle, mac_for_pdev, - soc->rxdma_mon_buf_ring[lmac_id].hal_srng, - RXDMA_MONITOR_BUF); - htt_srng_setup(soc->htt_handle, mac_for_pdev, - soc->rxdma_mon_dst_ring[lmac_id].hal_srng, - RXDMA_MONITOR_DST); + if (soc->wlan_cfg_ctx->rxdma1_enable) { + htt_srng_setup(soc->htt_handle, mac_for_pdev, + soc->rxdma_mon_buf_ring[lmac_id].hal_srng, + RXDMA_MONITOR_BUF); + htt_srng_setup(soc->htt_handle, mac_for_pdev, + soc->rxdma_mon_dst_ring[lmac_id].hal_srng, + RXDMA_MONITOR_DST); + htt_srng_setup(soc->htt_handle, mac_for_pdev, + soc->rxdma_mon_desc_ring[lmac_id].hal_srng, + RXDMA_MONITOR_DESC); + } htt_srng_setup(soc->htt_handle, mac_for_pdev, soc->rxdma_mon_status_ring[lmac_id].hal_srng, RXDMA_MONITOR_STATUS); - htt_srng_setup(soc->htt_handle, mac_for_pdev, - soc->rxdma_mon_desc_ring[lmac_id].hal_srng, - RXDMA_MONITOR_DESC); #endif htt_srng_setup(soc->htt_handle, mac_for_pdev, soc->rxdma_err_dst_ring[lmac_id].hal_srng, @@ -13508,11 +13510,13 @@ static void dp_soc_cfg_attach(struct dp_soc *soc) 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; default: qdf_print("%s: Unknown tgt type %d\n", __func__, target_type); diff --git a/wlan_cfg/wlan_cfg.c b/wlan_cfg/wlan_cfg.c index d4abba16b5..719d6bc051 100644 --- a/wlan_cfg/wlan_cfg.c +++ b/wlan_cfg/wlan_cfg.c @@ -1490,3 +1490,15 @@ int wlan_cfg_send_icmp_req_to_fw(struct wlan_cfg_dp_soc_ctxt *cfg) return cfg->send_icmp_req_to_fw; } #endif /* WLAN_DP_FEATURE_SEND_ICMP_TO_FW */ + +#ifdef QCA_LOWMEM_CONFIG +void wlan_cfg_set_rxdma1_enable(struct wlan_cfg_dp_soc_ctxt *cfg) +{ + cfg->rxdma1_enable = false; +} +#else +void wlan_cfg_set_rxdma1_enable(struct wlan_cfg_dp_soc_ctxt *cfg) +{ + cfg->rxdma1_enable = true; +} +#endif diff --git a/wlan_cfg/wlan_cfg.h b/wlan_cfg/wlan_cfg.h index 5db355f868..e64703072c 100644 --- a/wlan_cfg/wlan_cfg.h +++ b/wlan_cfg/wlan_cfg.h @@ -1515,3 +1515,11 @@ uint8_t wlan_cfg_radio1_default_reo_get(struct wlan_cfg_dp_soc_ctxt *cfg); * Return: . */ uint8_t wlan_cfg_radio2_default_reo_get(struct wlan_cfg_dp_soc_ctxt *cfg); + +/** + * wlan_cfg_set_rxdma1_enable() - Enable rxdma1 + * @cfg: soc configuration context + * + * Return: . + */ +void wlan_cfg_set_rxdma1_enable(struct wlan_cfg_dp_soc_ctxt *wlan_cfg_ctx);