Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 18 Mar 2026 23:43:48 +0000
From:      Navdeep Parhar <np@FreeBSD.org>
To:        src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org
Subject:   git: 8f41ee95f9e0 - main - cxgbe(4): decode the T7 MC interrupt correctly
Message-ID:  <69bb38b4.33937.2ea03122@gitrepo.freebsd.org>

index | next in thread | raw e-mail

The branch main has been updated by np:

URL: https://cgit.FreeBSD.org/src/commit/?id=8f41ee95f9e05b3848d793deaacd591ee2387f0e

commit 8f41ee95f9e05b3848d793deaacd591ee2387f0e
Author:     Navdeep Parhar <np@FreeBSD.org>
AuthorDate: 2026-03-18 22:20:07 +0000
Commit:     Navdeep Parhar <np@FreeBSD.org>
CommitDate: 2026-03-18 22:22:57 +0000

    cxgbe(4): decode the T7 MC interrupt correctly
    
    The layout for the main INT_CAUSE is a bit different for T7.
    
    MFC after:      1 week
    Sponsored by:   Chelsio Communications
---
 sys/dev/cxgbe/common/t4_hw.c | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/sys/dev/cxgbe/common/t4_hw.c b/sys/dev/cxgbe/common/t4_hw.c
index 24ac018cc49c..f4eef54e5c6b 100644
--- a/sys/dev/cxgbe/common/t4_hw.c
+++ b/sys/dev/cxgbe/common/t4_hw.c
@@ -6103,6 +6103,14 @@ static bool mem_intr_handler(struct adapter *adap, int idx, int flags)
 		{ F_PERR_INT_CAUSE, "FIFO parity error" },
 		{ 0 }
 	};
+	static const struct intr_details t7_mem_intr_details[] = {
+		{ F_DDRPHY_INT_CAUSE, "DDRPHY" },
+		{ F_DDRCTL_INT_CAUSE, "DDRCTL" },
+		{ F_T7_ECC_CE_INT_CAUSE, "Correctable ECC data error(s)" },
+		{ F_T7_ECC_UE_INT_CAUSE, "Uncorrectable ECC data error(s)" },
+		{ F_PERR_INT_CAUSE, "FIFO parity error" },
+		{ 0 }
+	};
 	char rname[32];
 	struct intr_info ii = {
 		.name = &rname[0],
@@ -6157,6 +6165,8 @@ static bool mem_intr_handler(struct adapter *adap, int idx, int flags)
 		} else {
 			ii.cause_reg = MC_T7_REG(A_T7_MC_P_INT_CAUSE, i);
 			ii.enable_reg = MC_T7_REG(A_T7_MC_P_INT_ENABLE, i);
+			ii.fatal = F_PERR_INT_CAUSE | F_T7_ECC_UE_INT_CAUSE;
+			ii.details = t7_mem_intr_details;
 			count_reg = MC_T7_REG(A_T7_MC_P_ECC_STATUS, i);
 		}
 		fatal |= t4_handle_intr(adap, &ii, 0, flags);


home | help

Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?69bb38b4.33937.2ea03122>