]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
arm64: cpufeature: add Permission Overlay Extension cpucap
authorJoey Gouly <joey.gouly@arm.com>
Thu, 22 Aug 2024 15:10:48 +0000 (16:10 +0100)
committerWill Deacon <will@kernel.org>
Wed, 4 Sep 2024 11:48:52 +0000 (12:48 +0100)
This indicates if the system supports POE. This is a CPUCAP_BOOT_CPU_FEATURE
as the boot CPU will enable POE if it has it, so secondary CPUs must also
have this feature.

Signed-off-by: Joey Gouly <joey.gouly@arm.com>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Will Deacon <will@kernel.org>
Acked-by: Catalin Marinas <catalin.marinas@arm.com>
Reviewed-by: Anshuman Khandual <anshuman.khandual@arm.com>
Link: https://lore.kernel.org/r/20240822151113.1479789-6-joey.gouly@arm.com
Signed-off-by: Will Deacon <will@kernel.org>
arch/arm64/kernel/cpufeature.c
arch/arm64/tools/cpucaps

index 646ecd3069fdd9ddc4fac93c1a16c38ea168d0fa..2daf5597cd655a54620f634999c47a889aa71e60 100644 (file)
@@ -2870,6 +2870,15 @@ static const struct arm64_cpu_capabilities arm64_features[] = {
                .matches = has_nv1,
                ARM64_CPUID_FIELDS_NEG(ID_AA64MMFR4_EL1, E2H0, NI_NV1)
        },
+#ifdef CONFIG_ARM64_POE
+       {
+               .desc = "Stage-1 Permission Overlay Extension (S1POE)",
+               .capability = ARM64_HAS_S1POE,
+               .type = ARM64_CPUCAP_BOOT_CPU_FEATURE,
+               .matches = has_cpuid_feature,
+               ARM64_CPUID_FIELDS(ID_AA64MMFR3_EL1, S1POE, IMP)
+       },
+#endif
        {},
 };
 
index ac3429d892b9a7c4eba7b1026b45753eca5bb7fc..eedb5acc21ed98bfaaaaa6badcd9a266308ace8e 100644 (file)
@@ -45,6 +45,7 @@ HAS_MOPS
 HAS_NESTED_VIRT
 HAS_PAN
 HAS_S1PIE
+HAS_S1POE
 HAS_RAS_EXTN
 HAS_RNG
 HAS_SB