From 61cb97c58e58cbf95a31dab0cf6d206c83fc4ac8 Mon Sep 17 00:00:00 2001 From: Tallapragada Kalyan Date: Wed, 20 Sep 2017 12:42:10 +0530 Subject: [PATCH] qcacmn: choose proper REO destination ring for invalid hash for cases where hash is invalid (non TCP/UDP) let us remap the traffic to a configured REO DESTINATION ring instead of using default ring 0. Change-Id: I3d08f684f1914b60a2457bdcc5c184fc8a0068e7 --- dp/wifi3.0/dp_main.c | 9 +++++---- hal/wifi3.0/hal_rx.c | 22 ---------------------- 2 files changed, 5 insertions(+), 26 deletions(-) diff --git a/dp/wifi3.0/dp_main.c b/dp/wifi3.0/dp_main.c index 39e4cbf613fc..4485b3e0b578 100644 --- a/dp/wifi3.0/dp_main.c +++ b/dp/wifi3.0/dp_main.c @@ -3111,10 +3111,11 @@ static void dp_peer_setup_wifi3(struct cdp_vdev *vdev_hdl, void *peer_hdl) FL("hash based steering for pdev: %d is %d\n"), pdev->pdev_id, hash_based); - if (!hash_based) - reo_dest = pdev->reo_dest; - else - reo_dest = 1; + /* + * Below line of code will ensure the proper reo_dest ring is choosen + * for cases where toeplitz hash cannot be generated (ex: non TCP/UDP) + */ + reo_dest = pdev->reo_dest; if (soc->cdp_soc.ol_ops->peer_set_default_routing) { /* TODO: Check the destination ring number to be passed to FW */ diff --git a/hal/wifi3.0/hal_rx.c b/hal/wifi3.0/hal_rx.c index a3da231215ab..d1fef97357b0 100644 --- a/hal/wifi3.0/hal_rx.c +++ b/hal/wifi3.0/hal_rx.c @@ -276,28 +276,6 @@ void hal_reo_setup(void *hal_soc, * 7: NOT_USED. */ if (reo_params->rx_hash_enabled) { - HAL_REG_WRITE(soc, - HWIO_REO_R0_DESTINATION_RING_CTRL_IX_0_ADDR( - SEQ_WCSS_UMAC_REO_REG_OFFSET), - reo_params->remap1); - - QDF_TRACE(QDF_MODULE_ID_DP, QDF_TRACE_LEVEL_ERROR, - FL("HWIO_REO_R0_DESTINATION_RING_CTRL_IX_0_ADDR 0x%x\n"), - HAL_REG_READ(soc, - HWIO_REO_R0_DESTINATION_RING_CTRL_IX_0_ADDR( - SEQ_WCSS_UMAC_REO_REG_OFFSET))); - - HAL_REG_WRITE(soc, - HWIO_REO_R0_DESTINATION_RING_CTRL_IX_1_ADDR( - SEQ_WCSS_UMAC_REO_REG_OFFSET), - reo_params->remap2); - - QDF_TRACE(QDF_MODULE_ID_DP, QDF_TRACE_LEVEL_ERROR, - FL("HWIO_REO_R0_DESTINATION_RING_CTRL_IX_1_ADDR 0x%x\n"), - HAL_REG_READ(soc, - HWIO_REO_R0_DESTINATION_RING_CTRL_IX_1_ADDR( - SEQ_WCSS_UMAC_REO_REG_OFFSET))); - HAL_REG_WRITE(soc, HWIO_REO_R0_DESTINATION_RING_CTRL_IX_2_ADDR( SEQ_WCSS_UMAC_REO_REG_OFFSET),