]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
arm64: cpucaps: Add GICv5 CPU interface (GCIE) capability
authorLorenzo Pieralisi <lpieralisi@kernel.org>
Thu, 3 Jul 2025 10:25:07 +0000 (12:25 +0200)
committerMarc Zyngier <maz@kernel.org>
Tue, 8 Jul 2025 17:35:51 +0000 (18:35 +0100)
Implement the GCIE capability as a strict boot cpu capability to
detect whether architectural GICv5 support is available in HW.

Plug it in with a naming consistent with the existing GICv3
CPU interface capability.

Signed-off-by: Lorenzo Pieralisi <lpieralisi@kernel.org>
Reviewed-by: Marc Zyngier <maz@kernel.org>
Cc: Will Deacon <will@kernel.org>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Marc Zyngier <maz@kernel.org>
Acked-by: Catalin Marinas <catalin.marinas@arm.com>
Link: https://lore.kernel.org/r/20250703-gicv5-host-v7-17-12e71f1b3528@kernel.org
Signed-off-by: Marc Zyngier <maz@kernel.org>
arch/arm64/kernel/cpufeature.c
arch/arm64/tools/cpucaps

index 42ba76b6c8cd48f5034b7312821bd3c57833f219..2fa26129762c547458b15fc674af701c7cb251a4 100644 (file)
@@ -3061,6 +3061,13 @@ static const struct arm64_cpu_capabilities arm64_features[] = {
                .matches = has_pmuv3,
        },
 #endif
+       {
+               .desc = "GICv5 CPU interface",
+               .type = ARM64_CPUCAP_STRICT_BOOT_CPU_FEATURE,
+               .capability = ARM64_HAS_GICV5_CPUIF,
+               .matches = has_cpuid_feature,
+               ARM64_CPUID_FIELDS(ID_AA64PFR2_EL1, GCIE, IMP)
+       },
        {},
 };
 
index a7a4d9e6e12eeacccc35d3e093809eae676351ba..8665e4cfbeabf59825384cdd564ad45e0759e6e8 100644 (file)
@@ -36,6 +36,7 @@ HAS_GENERIC_AUTH_ARCH_QARMA3
 HAS_GENERIC_AUTH_ARCH_QARMA5
 HAS_GENERIC_AUTH_IMP_DEF
 HAS_GICV3_CPUIF
+HAS_GICV5_CPUIF
 HAS_GIC_PRIO_MASKING
 HAS_GIC_PRIO_RELAXED_SYNC
 HAS_HCR_NV1