[dpdk-stable] [PATCH v3 07/15] net/bnxt: fix for doorbell register offset for Tx ring

Ajit Khaparde ajit.khaparde at broadcom.com
Wed Jul 17 12:41:31 CEST 2019


For Tx-ring # 104 and higher, the doorbell register was incorrectly
configured due to which FW was not able to receive the notification
of packet to transmit. With this fix, user can run traffic upto 256 rings.

Fixes: 6eb3cc2294fd ("net/bnxt: add initial Tx code")
Cc: stable at dpdk.org

Signed-off-by: Rahul Gupta <rahul.gupta at broadcom.com>
Signed-off-by: Ajit Khaparde <ajit.khaparde at broadcom.com>
--
v1->v3: Fix output of check-git-log.
---
 drivers/net/bnxt/bnxt_ring.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/net/bnxt/bnxt_ring.c b/drivers/net/bnxt/bnxt_ring.c
index 7453d4b56..9b19459b6 100644
--- a/drivers/net/bnxt/bnxt_ring.c
+++ b/drivers/net/bnxt/bnxt_ring.c
@@ -639,12 +639,12 @@ int bnxt_alloc_hwrm_rings(struct bnxt *bp)
 		ring_type = HWRM_RING_ALLOC_INPUT_RING_TYPE_TX;
 		rc = bnxt_hwrm_ring_alloc(bp, ring,
 					  ring_type,
-					  idx, cpr->hw_stats_ctx_id,
+					  i, cpr->hw_stats_ctx_id,
 					  cp_ring->fw_ring_id);
 		if (rc)
 			goto err_out;
 
-		bnxt_set_db(bp, &txr->tx_db, ring_type, idx, ring->fw_ring_id);
+		bnxt_set_db(bp, &txr->tx_db, ring_type, i, ring->fw_ring_id);
 		txq->index = idx;
 		bnxt_hwrm_set_ring_coal(bp, &coal, cp_ring->fw_ring_id);
 	}
-- 
2.20.1 (Apple Git-117)



More information about the stable mailing list