[dpdk-dev] [PATCH 29/40] bnxt: work around HWRM error when creating rings

Stephen Hurd stephen.hurd at broadcom.com
Fri May 6 21:26:09 CEST 2016


Some HWRM versions will stop responding if we request poll mode interrupt.
As a workaround, request an MSI interrupt even though we never enable it.

Signed-off-by: Stephen Hurd <stephen.hurd at broadcom.com>
Reviewed-by: Ajit Kumar Khaparde <ajit.khaparde at broadcom.com>
---
 drivers/net/bnxt/bnxt_hwrm.c | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/drivers/net/bnxt/bnxt_hwrm.c b/drivers/net/bnxt/bnxt_hwrm.c
index b5bc473..897e766 100644
--- a/drivers/net/bnxt/bnxt_hwrm.c
+++ b/drivers/net/bnxt/bnxt_hwrm.c
@@ -581,7 +581,11 @@ int bnxt_hwrm_ring_alloc(struct bnxt *bp,
 		break;
 	case HWRM_RING_ALLOC_INPUT_RING_TYPE_CMPL:
 		req.ring_type = ring_type;
-		req.int_mode = HWRM_RING_ALLOC_INPUT_INT_MODE_POLL;
+		/*
+		 * TODO: Some HWRM versions crash with
+		 * HWRM_RING_ALLOC_INPUT_INT_MODE_POLL
+		 */
+		req.int_mode = HWRM_RING_ALLOC_INPUT_INT_MODE_MSIX;
 		req.length = rte_cpu_to_le_32(ring->ring_size);
 		break;
 	default:
-- 
1.9.1



More information about the dev mailing list