git: a856958cab80 - main - arm64/smmu: Fix the SMMU-600 errata check

From: Andrew Turner <andrew_at_FreeBSD.org>
Date: Tue, 22 Sep 2026 14:29:08 UTC
The branch main has been updated by andrew:

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

commit a856958cab807699eada3e1ed2c46262a94a0aeb
Author:     Andrew Turner <andrew@FreeBSD.org>
AuthorDate: 2026-09-22 14:11:23 +0000
Commit:     Andrew Turner <andrew@FreeBSD.org>
CommitDate: 2026-09-18 19:54:16 +0000

    arm64/smmu: Fix the SMMU-600 errata check
    
    Fixes:  6dca6e2aa89d ("arm64/smmu: Start handling errata")
    Sponsored by:   Arm Ltd
---
 sys/arm64/iommu/smmu.c | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

diff --git a/sys/arm64/iommu/smmu.c b/sys/arm64/iommu/smmu.c
index 2b95d2f5fb3c..310f772f9b75 100644
--- a/sys/arm64/iommu/smmu.c
+++ b/sys/arm64/iommu/smmu.c
@@ -1563,12 +1563,14 @@ smmu_check_errata(struct smmu_softc *sc)
 	reg = bus_read_4(sc->res[0], SMMU_IIDR);
 	variant = SMMU_Variant_GET(reg);
 
-	switch(SMMU_ProductID_GET(reg)) {
+	switch(SMMU_Implementer_GET(reg)) {
 	case SMMU_Implementer_ARM:
 		switch (SMMU_ProductID_GET(reg)) {
-		/* Arm erratum 1076982 */
-		if (variant < 1)
-			sc->features &= ~SMMU_FEATURE_SEV;
+		case SMMU_ProductID_ARM_MMU_600:
+			/* Arm erratum 1076982 */
+			if (variant < 1)
+				sc->features &= ~SMMU_FEATURE_SEV;
+			break;
 		default:
 			break;
 		}