[Skiboot] [PATCH 2/3] xive/p10: Fix mismatch errors when DEBUG=1

Cédric Le Goater clg at kaod.org
Sat Aug 7 17:38:20 AEST 2021


HW has some reserved fields which break the comparison when checking
END cache updates.

Signed-off-by: Cédric Le Goater <clg at kaod.org>
---
 include/xive2-regs.h | 3 +++
 hw/xive2.c           | 3 +++
 2 files changed, 6 insertions(+)

diff --git a/include/xive2-regs.h b/include/xive2-regs.h
index 1f7a3e721b64..367c1ea96308 100644
--- a/include/xive2-regs.h
+++ b/include/xive2-regs.h
@@ -479,6 +479,7 @@ struct xive_end {
 #define END_W0_ESCALATE_END		PPC_BIT32(13)	/* "N" bit */
 #define END_W0_FIRMWARE1		PPC_BIT32(16)	/* Owned by FW */
 #define END_W0_FIRMWARE2		PPC_BIT32(17)	/* Owned by FW */
+#define END_W0_RESERVED			PPC_BITMASK32(24,31)
 	beint32_t	w1;
 #define END_W1_ES			PPC_BITMASK32(0,3)
 #define END_W1_ESn			PPC_BITMASK32(0,1)
@@ -487,6 +488,7 @@ struct xive_end {
 #define END_W1_ESe			PPC_BITMASK32(2,3)
 #define END_W1_ESe_P			PPC_BIT32(2)
 #define END_W1_ESe_Q			PPC_BIT32(3)
+#define END_W1_RESERVED			PPC_BITMASK32(6,7)
 #define END_W1_GEN_FLIPPED		PPC_BIT32(8)
 #define END_W1_GENERATION		PPC_BIT32(9)
 #define END_W1_PAGE_OFF			PPC_BITMASK32(10,31)
@@ -511,6 +513,7 @@ struct xive_end {
 	beint32_t	w7;
 #define END_W7_TOPO			PPC_BITMASK32(0,3)	/* Owned by HW */
 #define END_W7_F0_PRIORITY		PPC_BITMASK32(8,15)
+#define END_W7_F0_RESERVED		PPC_BITMASK32(16,31)
 #define END_W7_F1_LOG_SERVER_ID		PPC_BITMASK32(4,31)
 };
 #define xive_end_is_firmware1(end)      \
diff --git a/hw/xive2.c b/hw/xive2.c
index c09dd555f4ef..d0094e9bad99 100644
--- a/hw/xive2.c
+++ b/hw/xive2.c
@@ -1166,6 +1166,9 @@ static bool xive_check_endc_update(struct xive *x, uint32_t idx, struct xive_end
 
 	assert(end_p);
 	end2 = *end_p;
+	end2.w0 &= ~END_W0_RESERVED;
+	end2.w1 &= ~END_W1_RESERVED;
+	end2.w7 &= ~END_W7_F0_RESERVED;
 	if (memcmp(end, &end2, sizeof(struct xive_end)) != 0) {
 		xive_err(x, "END update mismatch idx %d\n", idx);
 		xive_err(x, "want: %08x %08x %08x %08x\n",
-- 
2.31.1



More information about the Skiboot mailing list