[v2,02/10] net/bnxt: add dual rate module detection log

Message ID 20240222194800.80648-3-ajit.khaparde@broadcom.com (mailing list archive)
State Accepted, archived
Delegated to: Ajit Khaparde
Headers
Series patchset for bnxt |

Checks

Context Check Description
ci/checkpatch warning coding style issues

Commit Message

Ajit Khaparde Feb. 22, 2024, 7:47 p.m. UTC
  From: Kalesh AP <kalesh-anakkur.purayil@broadcom.com>

Firmware sends an async notification to the driver when it detects
a Dual rate module.

Display below warning message:
"Speed change not supported with dual rate transceivers on this board"

Signed-off-by: Kalesh AP <kalesh-anakkur.purayil@broadcom.com>
Reviewed-by: Ajit Khaparde <ajit.khaparde@broadcom.com>
---
 drivers/net/bnxt/bnxt_cpr.c            | 4 ++++
 drivers/net/bnxt/hsi_struct_def_dpdk.h | 8 +++++++-
 2 files changed, 11 insertions(+), 1 deletion(-)
  

Patch

diff --git a/drivers/net/bnxt/bnxt_cpr.c b/drivers/net/bnxt/bnxt_cpr.c
index fb43bc58da..a4509abd60 100644
--- a/drivers/net/bnxt/bnxt_cpr.c
+++ b/drivers/net/bnxt/bnxt_cpr.c
@@ -100,6 +100,10 @@  static void bnxt_handle_event_error_report(struct bnxt *bp,
 		PMD_DRV_LOG(WARNING, "Port:%d Pause Storm detected!\n",
 			    bp->eth_dev->data->port_id);
 		break;
+	case HWRM_ASYNC_EVENT_CMPL_ERROR_REPORT_BASE_EVENT_DATA1_ERROR_TYPE_DUAL_DATA_RATE_NOT_SUPPORTED:
+		PMD_DRV_LOG(WARNING, "Port:%d Speed change not supported with dual rate transceivers on this board",
+			    bp->eth_dev->data->port_id);
+		break;
 	default:
 		PMD_DRV_LOG(INFO, "FW reported unknown error type data1 %d"
 			    " data2: %d\n", data1, data2);
diff --git a/drivers/net/bnxt/hsi_struct_def_dpdk.h b/drivers/net/bnxt/hsi_struct_def_dpdk.h
index 3ee1844e66..9beacd94aa 100644
--- a/drivers/net/bnxt/hsi_struct_def_dpdk.h
+++ b/drivers/net/bnxt/hsi_struct_def_dpdk.h
@@ -12494,8 +12494,14 @@  struct hwrm_async_event_cmpl_error_report_base {
 	 */
 	#define HWRM_ASYNC_EVENT_CMPL_ERROR_REPORT_BASE_EVENT_DATA1_ERROR_TYPE_THERMAL_THRESHOLD \
 		UINT32_C(0x5)
+	/*
+	 * Speed change not supported with dual rate transceivers
+	 * on this board.
+	 */
+	#define HWRM_ASYNC_EVENT_CMPL_ERROR_REPORT_BASE_EVENT_DATA1_ERROR_TYPE_DUAL_DATA_RATE_NOT_SUPPORTED \
+		UINT32_C(0x6)
 	#define HWRM_ASYNC_EVENT_CMPL_ERROR_REPORT_BASE_EVENT_DATA1_ERROR_TYPE_LAST \
-		HWRM_ASYNC_EVENT_CMPL_ERROR_REPORT_BASE_EVENT_DATA1_ERROR_TYPE_THERMAL_THRESHOLD
+		HWRM_ASYNC_EVENT_CMPL_ERROR_REPORT_BASE_EVENT_DATA1_ERROR_TYPE_DUAL_DATA_RATE_NOT_SUPPORTED
 } __rte_packed;
 
 /* hwrm_async_event_cmpl_error_report_pause_storm (size:128b/16B) */