public inbox for llvm@lists.linux.dev
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: James Morse <james.morse@arm.com>
Cc: llvm@lists.linux.dev, oe-kbuild-all@lists.linux.dev
Subject: [morse:mpam/kvm_mpam_fix/v3 2/6] arch/arm64/kernel/cpufeature.c:2934:2: error: expected '}'
Date: Fri, 22 Mar 2024 19:23:14 +0800	[thread overview]
Message-ID: <202403221932.Ss3YgPzc-lkp@intel.com> (raw)

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/morse/linux.git mpam/kvm_mpam_fix/v3
head:   efef6777cd47f54b38b9f5c02a0d891eb54ce198
commit: 66e08b376a3230bc60f56dd9b7127a65d70fe32c [2/6] arm64: cpufeature: discover CPU support for MPAM
config: arm64-randconfig-004-20240322 (https://download.01.org/0day-ci/archive/20240322/202403221932.Ss3YgPzc-lkp@intel.com/config)
compiler: clang version 17.0.6 (https://github.com/llvm/llvm-project 6009708b4367171ccdbf4b5905cb6a803753fe18)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240322/202403221932.Ss3YgPzc-lkp@intel.com/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202403221932.Ss3YgPzc-lkp@intel.com/

All error/warnings (new ones prefixed by >>):

>> arch/arm64/kernel/cpufeature.c:2934:2: error: expected '}'
    2934 | };
         |  ^
   arch/arm64/kernel/cpufeature.c:2421:63: note: to match this '{'
    2421 | static const struct arm64_cpu_capabilities arm64_features[] = {
         |                                                               ^
>> arch/arm64/kernel/cpufeature.c:2421:44: warning: tentative array definition assumed to have one element
    2421 | static const struct arm64_cpu_capabilities arm64_features[] = {
         |                                            ^
   1 warning and 1 error generated.


vim +2934 arch/arm64/kernel/cpufeature.c

66e08b376a3230 James Morse         2018-07-02  2420  
359b706473b47d Marc Zyngier        2015-03-27  2421  static const struct arm64_cpu_capabilities arm64_features[] = {
4c0bd995d73ed8 Mark Rutland        2022-09-12  2422  	{
4c0bd995d73ed8 Mark Rutland        2022-09-12  2423  		.capability = ARM64_ALWAYS_BOOT,
4c0bd995d73ed8 Mark Rutland        2022-09-12  2424  		.type = ARM64_CPUCAP_BOOT_CPU_FEATURE,
4c0bd995d73ed8 Mark Rutland        2022-09-12  2425  		.matches = has_always,
4c0bd995d73ed8 Mark Rutland        2022-09-12  2426  	},
4c0bd995d73ed8 Mark Rutland        2022-09-12  2427  	{
4c0bd995d73ed8 Mark Rutland        2022-09-12  2428  		.capability = ARM64_ALWAYS_SYSTEM,
4c0bd995d73ed8 Mark Rutland        2022-09-12  2429  		.type = ARM64_CPUCAP_SYSTEM_FEATURE,
4c0bd995d73ed8 Mark Rutland        2022-09-12  2430  		.matches = has_always,
4c0bd995d73ed8 Mark Rutland        2022-09-12  2431  	},
94a9e04aa16abd Marc Zyngier        2015-06-12  2432  	{
94a9e04aa16abd Marc Zyngier        2015-06-12  2433  		.desc = "GIC system register CPU interface",
0e62ccb9598dae Mark Rutland        2023-01-30  2434  		.capability = ARM64_HAS_GIC_CPUIF_SYSREGS,
c9bfdf734d4c0e Julien Thierry      2019-01-31  2435  		.type = ARM64_CPUCAP_STRICT_BOOT_CPU_FEATURE,
963fcd40958711 Marc Zyngier        2015-09-30  2436  		.matches = has_useable_gicv3_cpuif,
863da0bdb17b5c Mark Brown          2023-04-12  2437  		ARM64_CPUID_FIELDS(ID_AA64PFR0_EL1, GIC, IMP)
94a9e04aa16abd Marc Zyngier        2015-06-12  2438  	},
fdf865988b5a40 Marc Zyngier        2021-10-17  2439  	{
fdf865988b5a40 Marc Zyngier        2021-10-17  2440  		.desc = "Enhanced Counter Virtualization",
fdf865988b5a40 Marc Zyngier        2021-10-17  2441  		.capability = ARM64_HAS_ECV,
fdf865988b5a40 Marc Zyngier        2021-10-17  2442  		.type = ARM64_CPUCAP_SYSTEM_FEATURE,
fdf865988b5a40 Marc Zyngier        2021-10-17  2443  		.matches = has_cpuid_feature,
863da0bdb17b5c Mark Brown          2023-04-12  2444  		ARM64_CPUID_FIELDS(ID_AA64MMFR0_EL1, ECV, IMP)
fdf865988b5a40 Marc Zyngier        2021-10-17  2445  	},
326349943ed181 Marc Zyngier        2023-03-30  2446  	{
326349943ed181 Marc Zyngier        2023-03-30  2447  		.desc = "Enhanced Counter Virtualization (CNTPOFF)",
326349943ed181 Marc Zyngier        2023-03-30  2448  		.capability = ARM64_HAS_ECV_CNTPOFF,
326349943ed181 Marc Zyngier        2023-03-30  2449  		.type = ARM64_CPUCAP_SYSTEM_FEATURE,
326349943ed181 Marc Zyngier        2023-03-30  2450  		.matches = has_cpuid_feature,
e34f78b970ea51 Mark Brown          2023-05-23  2451  		ARM64_CPUID_FIELDS(ID_AA64MMFR0_EL1, ECV, CNTPOFF)
326349943ed181 Marc Zyngier        2023-03-30  2452  	},
338d4f49d6f711 James Morse         2015-07-22  2453  #ifdef CONFIG_ARM64_PAN
338d4f49d6f711 James Morse         2015-07-22  2454  	{
338d4f49d6f711 James Morse         2015-07-22  2455  		.desc = "Privileged Access Never",
338d4f49d6f711 James Morse         2015-07-22  2456  		.capability = ARM64_HAS_PAN,
5b4747c5dce7a8 Suzuki K Poulose    2018-03-26  2457  		.type = ARM64_CPUCAP_SYSTEM_FEATURE,
da8d02d19ffdd2 Suzuki K. Poulose   2015-10-19  2458  		.matches = has_cpuid_feature,
c0cda3b8ee6b4b Dave Martin         2018-03-26  2459  		.cpu_enable = cpu_enable_pan,
863da0bdb17b5c Mark Brown          2023-04-12  2460  		ARM64_CPUID_FIELDS(ID_AA64MMFR1_EL1, PAN, IMP)
338d4f49d6f711 James Morse         2015-07-22  2461  	},
338d4f49d6f711 James Morse         2015-07-22  2462  #endif /* CONFIG_ARM64_PAN */
18107f8a2df6bf Vladimir Murzin     2021-03-12  2463  #ifdef CONFIG_ARM64_EPAN
18107f8a2df6bf Vladimir Murzin     2021-03-12  2464  	{
18107f8a2df6bf Vladimir Murzin     2021-03-12  2465  		.desc = "Enhanced Privileged Access Never",
18107f8a2df6bf Vladimir Murzin     2021-03-12  2466  		.capability = ARM64_HAS_EPAN,
18107f8a2df6bf Vladimir Murzin     2021-03-12  2467  		.type = ARM64_CPUCAP_SYSTEM_FEATURE,
18107f8a2df6bf Vladimir Murzin     2021-03-12  2468  		.matches = has_cpuid_feature,
863da0bdb17b5c Mark Brown          2023-04-12  2469  		ARM64_CPUID_FIELDS(ID_AA64MMFR1_EL1, PAN, PAN3)
18107f8a2df6bf Vladimir Murzin     2021-03-12  2470  	},
18107f8a2df6bf Vladimir Murzin     2021-03-12  2471  #endif /* CONFIG_ARM64_EPAN */
395af861377d14 Catalin Marinas     2020-01-15  2472  #ifdef CONFIG_ARM64_LSE_ATOMICS
2e94da13790336 Will Deacon         2015-07-27  2473  	{
2e94da13790336 Will Deacon         2015-07-27  2474  		.desc = "LSE atomic instructions",
2e94da13790336 Will Deacon         2015-07-27  2475  		.capability = ARM64_HAS_LSE_ATOMICS,
5b4747c5dce7a8 Suzuki K Poulose    2018-03-26  2476  		.type = ARM64_CPUCAP_SYSTEM_FEATURE,
da8d02d19ffdd2 Suzuki K. Poulose   2015-10-19  2477  		.matches = has_cpuid_feature,
863da0bdb17b5c Mark Brown          2023-04-12  2478  		ARM64_CPUID_FIELDS(ID_AA64ISAR0_EL1, ATOMIC, IMP)
2e94da13790336 Will Deacon         2015-07-27  2479  	},
395af861377d14 Catalin Marinas     2020-01-15  2480  #endif /* CONFIG_ARM64_LSE_ATOMICS */
d88701bea3664c Marc Zyngier        2015-01-29  2481  	{
d88701bea3664c Marc Zyngier        2015-01-29  2482  		.desc = "Virtualization Host Extensions",
d88701bea3664c Marc Zyngier        2015-01-29  2483  		.capability = ARM64_HAS_VIRT_HOST_EXTN,
830dcc9f9a7cd2 Suzuki K Poulose    2018-03-26  2484  		.type = ARM64_CPUCAP_STRICT_BOOT_CPU_FEATURE,
d88701bea3664c Marc Zyngier        2015-01-29  2485  		.matches = runs_at_el2,
c0cda3b8ee6b4b Dave Martin         2018-03-26  2486  		.cpu_enable = cpu_copy_el2regs,
d88701bea3664c Marc Zyngier        2015-01-29  2487  	},
675cabc8990073 Jintack Lim         2023-02-09  2488  	{
675cabc8990073 Jintack Lim         2023-02-09  2489  		.desc = "Nested Virtualization Support",
675cabc8990073 Jintack Lim         2023-02-09  2490  		.capability = ARM64_HAS_NESTED_VIRT,
675cabc8990073 Jintack Lim         2023-02-09  2491  		.type = ARM64_CPUCAP_SYSTEM_FEATURE,
675cabc8990073 Jintack Lim         2023-02-09  2492  		.matches = has_nested_virt_support,
2bfc654b89c4dd Marc Zyngier        2023-11-09  2493  		ARM64_CPUID_FIELDS(ID_AA64MMFR2_EL1, NV, NV2)
675cabc8990073 Jintack Lim         2023-02-09  2494  	},
042446a31e3803 Suzuki K Poulose    2016-04-18  2495  	{
2122a833316f2f Will Deacon         2021-06-08  2496  		.capability = ARM64_HAS_32BIT_EL0_DO_NOT_USE,
5b4747c5dce7a8 Suzuki K Poulose    2018-03-26  2497  		.type = ARM64_CPUCAP_SYSTEM_FEATURE,
2122a833316f2f Will Deacon         2021-06-08  2498  		.matches = has_32bit_el0,
863da0bdb17b5c Mark Brown          2023-04-12  2499  		ARM64_CPUID_FIELDS(ID_AA64PFR0_EL1, EL0, AARCH32)
042446a31e3803 Suzuki K Poulose    2016-04-18  2500  	},
540f76d12c662d Will Deacon         2020-04-21  2501  #ifdef CONFIG_KVM
540f76d12c662d Will Deacon         2020-04-21  2502  	{
540f76d12c662d Will Deacon         2020-04-21  2503  		.desc = "32-bit EL1 Support",
540f76d12c662d Will Deacon         2020-04-21  2504  		.capability = ARM64_HAS_32BIT_EL1,
540f76d12c662d Will Deacon         2020-04-21  2505  		.type = ARM64_CPUCAP_SYSTEM_FEATURE,
540f76d12c662d Will Deacon         2020-04-21  2506  		.matches = has_cpuid_feature,
863da0bdb17b5c Mark Brown          2023-04-12  2507  		ARM64_CPUID_FIELDS(ID_AA64PFR0_EL1, EL1, AARCH32)
540f76d12c662d Will Deacon         2020-04-21  2508  	},
3eb681fba2bf8b David Brazdil       2020-12-02  2509  	{
3eb681fba2bf8b David Brazdil       2020-12-02  2510  		.desc = "Protected KVM",
3eb681fba2bf8b David Brazdil       2020-12-02  2511  		.capability = ARM64_KVM_PROTECTED_MODE,
3eb681fba2bf8b David Brazdil       2020-12-02  2512  		.type = ARM64_CPUCAP_SYSTEM_FEATURE,
3eb681fba2bf8b David Brazdil       2020-12-02  2513  		.matches = is_kvm_protected_mode,
3eb681fba2bf8b David Brazdil       2020-12-02  2514  	},
b0c756fe996ac9 Kristina Martsenko  2023-05-09  2515  	{
b0c756fe996ac9 Kristina Martsenko  2023-05-09  2516  		.desc = "HCRX_EL2 register",
b0c756fe996ac9 Kristina Martsenko  2023-05-09  2517  		.capability = ARM64_HAS_HCX,
b0c756fe996ac9 Kristina Martsenko  2023-05-09  2518  		.type = ARM64_CPUCAP_STRICT_BOOT_CPU_FEATURE,
b0c756fe996ac9 Kristina Martsenko  2023-05-09  2519  		.matches = has_cpuid_feature,
b0c756fe996ac9 Kristina Martsenko  2023-05-09  2520  		ARM64_CPUID_FIELDS(ID_AA64MMFR1_EL1, HCX, IMP)
b0c756fe996ac9 Kristina Martsenko  2023-05-09  2521  	},
540f76d12c662d Will Deacon         2020-04-21  2522  #endif
ea1e3de85e94d7 Will Deacon         2017-11-14  2523  	{
179a56f6f9fbda Will Deacon         2017-11-27  2524  		.desc = "Kernel page table isolation (KPTI)",
ea1e3de85e94d7 Will Deacon         2017-11-14  2525  		.capability = ARM64_UNMAP_KERNEL_AT_EL0,
d3aec8a28be3b8 Suzuki K Poulose    2018-03-26  2526  		.type = ARM64_CPUCAP_BOOT_RESTRICTED_CPU_LOCAL_FEATURE,
42c5a3b04bf672 Mark Rutland        2023-10-16  2527  		.cpu_enable = cpu_enable_kpti,
863da0bdb17b5c Mark Brown          2023-04-12  2528  		.matches = unmap_kernel_at_el0,
d3aec8a28be3b8 Suzuki K Poulose    2018-03-26  2529  		/*
d3aec8a28be3b8 Suzuki K Poulose    2018-03-26  2530  		 * The ID feature fields below are used to indicate that
d3aec8a28be3b8 Suzuki K Poulose    2018-03-26  2531  		 * the CPU doesn't need KPTI. See unmap_kernel_at_el0 for
d3aec8a28be3b8 Suzuki K Poulose    2018-03-26  2532  		 * more details.
d3aec8a28be3b8 Suzuki K Poulose    2018-03-26  2533  		 */
863da0bdb17b5c Mark Brown          2023-04-12  2534  		ARM64_CPUID_FIELDS(ID_AA64PFR0_EL1, CSV3, IMP)
ea1e3de85e94d7 Will Deacon         2017-11-14  2535  	},
82e0191a1aa11a Suzuki K Poulose    2016-11-08  2536  	{
34f66c4c4d5518 Mark Rutland        2023-10-16  2537  		.capability = ARM64_HAS_FPSIMD,
34f66c4c4d5518 Mark Rutland        2023-10-16  2538  		.type = ARM64_CPUCAP_SYSTEM_FEATURE,
34f66c4c4d5518 Mark Rutland        2023-10-16  2539  		.matches = has_cpuid_feature,
34f66c4c4d5518 Mark Rutland        2023-10-16  2540  		.cpu_enable = cpu_enable_fpsimd,
34f66c4c4d5518 Mark Rutland        2023-10-16  2541  		ARM64_CPUID_FIELDS(ID_AA64PFR0_EL1, FP, IMP)
82e0191a1aa11a Suzuki K Poulose    2016-11-08  2542  	},
d50e071fdaa33c Robin Murphy        2017-07-25  2543  #ifdef CONFIG_ARM64_PMEM
d50e071fdaa33c Robin Murphy        2017-07-25  2544  	{
d50e071fdaa33c Robin Murphy        2017-07-25  2545  		.desc = "Data cache clean to Point of Persistence",
d50e071fdaa33c Robin Murphy        2017-07-25  2546  		.capability = ARM64_HAS_DCPOP,
5b4747c5dce7a8 Suzuki K Poulose    2018-03-26  2547  		.type = ARM64_CPUCAP_SYSTEM_FEATURE,
d50e071fdaa33c Robin Murphy        2017-07-25  2548  		.matches = has_cpuid_feature,
863da0bdb17b5c Mark Brown          2023-04-12  2549  		ARM64_CPUID_FIELDS(ID_AA64ISAR1_EL1, DPB, IMP)
d50e071fdaa33c Robin Murphy        2017-07-25  2550  	},
b9585f53bcf1ad Andrew Murray       2019-04-09  2551  	{
b9585f53bcf1ad Andrew Murray       2019-04-09  2552  		.desc = "Data cache clean to Point of Deep Persistence",
b9585f53bcf1ad Andrew Murray       2019-04-09  2553  		.capability = ARM64_HAS_DCPODP,
b9585f53bcf1ad Andrew Murray       2019-04-09  2554  		.type = ARM64_CPUCAP_SYSTEM_FEATURE,
b9585f53bcf1ad Andrew Murray       2019-04-09  2555  		.matches = has_cpuid_feature,
863da0bdb17b5c Mark Brown          2023-04-12  2556  		ARM64_CPUID_FIELDS(ID_AA64ISAR1_EL1, DPB, DPB2)
b9585f53bcf1ad Andrew Murray       2019-04-09  2557  	},
d50e071fdaa33c Robin Murphy        2017-07-25  2558  #endif
43994d824e8443 Dave Martin         2017-10-31  2559  #ifdef CONFIG_ARM64_SVE
43994d824e8443 Dave Martin         2017-10-31  2560  	{
43994d824e8443 Dave Martin         2017-10-31  2561  		.desc = "Scalable Vector Extension",
5b4747c5dce7a8 Suzuki K Poulose    2018-03-26  2562  		.type = ARM64_CPUCAP_SYSTEM_FEATURE,
43994d824e8443 Dave Martin         2017-10-31  2563  		.capability = ARM64_SVE,
14567ba42c5747 Mark Rutland        2023-10-16  2564  		.cpu_enable = cpu_enable_sve,
863da0bdb17b5c Mark Brown          2023-04-12  2565  		.matches = has_cpuid_feature,
863da0bdb17b5c Mark Brown          2023-04-12  2566  		ARM64_CPUID_FIELDS(ID_AA64PFR0_EL1, SVE, IMP)
43994d824e8443 Dave Martin         2017-10-31  2567  	},
43994d824e8443 Dave Martin         2017-10-31  2568  #endif /* CONFIG_ARM64_SVE */
64c02720ea3598 Xie XiuQi           2018-01-15  2569  #ifdef CONFIG_ARM64_RAS_EXTN
64c02720ea3598 Xie XiuQi           2018-01-15  2570  	{
64c02720ea3598 Xie XiuQi           2018-01-15  2571  		.desc = "RAS Extension Support",
64c02720ea3598 Xie XiuQi           2018-01-15  2572  		.capability = ARM64_HAS_RAS_EXTN,
5b4747c5dce7a8 Suzuki K Poulose    2018-03-26  2573  		.type = ARM64_CPUCAP_SYSTEM_FEATURE,
64c02720ea3598 Xie XiuQi           2018-01-15  2574  		.matches = has_cpuid_feature,
c0cda3b8ee6b4b Dave Martin         2018-03-26  2575  		.cpu_enable = cpu_clear_disr,
863da0bdb17b5c Mark Brown          2023-04-12  2576  		ARM64_CPUID_FIELDS(ID_AA64PFR0_EL1, RAS, IMP)
64c02720ea3598 Xie XiuQi           2018-01-15  2577  	},
64c02720ea3598 Xie XiuQi           2018-01-15  2578  #endif /* CONFIG_ARM64_RAS_EXTN */
2c9d45b43c39e2 Ionela Voinescu     2020-03-05  2579  #ifdef CONFIG_ARM64_AMU_EXTN
2c9d45b43c39e2 Ionela Voinescu     2020-03-05  2580  	{
23b727dc2092d4 Jeremy Linton       2023-10-17  2581  		.desc = "Activity Monitors Unit (AMU)",
2c9d45b43c39e2 Ionela Voinescu     2020-03-05  2582  		.capability = ARM64_HAS_AMU_EXTN,
2c9d45b43c39e2 Ionela Voinescu     2020-03-05  2583  		.type = ARM64_CPUCAP_WEAK_LOCAL_CPU_FEATURE,
2c9d45b43c39e2 Ionela Voinescu     2020-03-05  2584  		.matches = has_amu,
2c9d45b43c39e2 Ionela Voinescu     2020-03-05  2585  		.cpu_enable = cpu_amu_enable,
23b727dc2092d4 Jeremy Linton       2023-10-17  2586  		.cpus = &amu_cpus,
863da0bdb17b5c Mark Brown          2023-04-12  2587  		ARM64_CPUID_FIELDS(ID_AA64PFR0_EL1, AMU, IMP)
2c9d45b43c39e2 Ionela Voinescu     2020-03-05  2588  	},
2c9d45b43c39e2 Ionela Voinescu     2020-03-05  2589  #endif /* CONFIG_ARM64_AMU_EXTN */
6ae4b6e0578886 Shanker Donthineni  2018-03-07  2590  	{
6ae4b6e0578886 Shanker Donthineni  2018-03-07  2591  		.desc = "Data cache clean to the PoU not required for I/D coherence",
6ae4b6e0578886 Shanker Donthineni  2018-03-07  2592  		.capability = ARM64_HAS_CACHE_IDC,
5b4747c5dce7a8 Suzuki K Poulose    2018-03-26  2593  		.type = ARM64_CPUCAP_SYSTEM_FEATURE,
6ae4b6e0578886 Shanker Donthineni  2018-03-07  2594  		.matches = has_cache_idc,
1602df02f33f61 Suzuki K Poulose    2018-10-09  2595  		.cpu_enable = cpu_emulate_effective_ctr,
6ae4b6e0578886 Shanker Donthineni  2018-03-07  2596  	},
6ae4b6e0578886 Shanker Donthineni  2018-03-07  2597  	{
6ae4b6e0578886 Shanker Donthineni  2018-03-07  2598  		.desc = "Instruction cache invalidation not required for I/D coherence",
6ae4b6e0578886 Shanker Donthineni  2018-03-07  2599  		.capability = ARM64_HAS_CACHE_DIC,
5b4747c5dce7a8 Suzuki K Poulose    2018-03-26  2600  		.type = ARM64_CPUCAP_SYSTEM_FEATURE,
6ae4b6e0578886 Shanker Donthineni  2018-03-07  2601  		.matches = has_cache_dic,
6ae4b6e0578886 Shanker Donthineni  2018-03-07  2602  	},
e48d53a91f6e90 Marc Zyngier        2018-04-06  2603  	{
e48d53a91f6e90 Marc Zyngier        2018-04-06  2604  		.desc = "Stage-2 Force Write-Back",
e48d53a91f6e90 Marc Zyngier        2018-04-06  2605  		.type = ARM64_CPUCAP_SYSTEM_FEATURE,
e48d53a91f6e90 Marc Zyngier        2018-04-06  2606  		.capability = ARM64_HAS_STAGE2_FWB,
e48d53a91f6e90 Marc Zyngier        2018-04-06  2607  		.matches = has_cpuid_feature,
863da0bdb17b5c Mark Brown          2023-04-12  2608  		ARM64_CPUID_FIELDS(ID_AA64MMFR2_EL1, FWB, IMP)
e48d53a91f6e90 Marc Zyngier        2018-04-06  2609  	},
552ae76face558 Marc Zyngier        2018-12-22  2610  	{
552ae76face558 Marc Zyngier        2018-12-22  2611  		.desc = "ARMv8.4 Translation Table Level",
552ae76face558 Marc Zyngier        2018-12-22  2612  		.type = ARM64_CPUCAP_SYSTEM_FEATURE,
552ae76face558 Marc Zyngier        2018-12-22  2613  		.capability = ARM64_HAS_ARMv8_4_TTL,
552ae76face558 Marc Zyngier        2018-12-22  2614  		.matches = has_cpuid_feature,
863da0bdb17b5c Mark Brown          2023-04-12  2615  		ARM64_CPUID_FIELDS(ID_AA64MMFR2_EL1, TTL, IMP)
552ae76face558 Marc Zyngier        2018-12-22  2616  	},
b620ba54547cd0 Zhenyu Ye           2020-07-15  2617  	{
b620ba54547cd0 Zhenyu Ye           2020-07-15  2618  		.desc = "TLB range maintenance instructions",
b620ba54547cd0 Zhenyu Ye           2020-07-15  2619  		.capability = ARM64_HAS_TLB_RANGE,
b620ba54547cd0 Zhenyu Ye           2020-07-15  2620  		.type = ARM64_CPUCAP_SYSTEM_FEATURE,
b620ba54547cd0 Zhenyu Ye           2020-07-15  2621  		.matches = has_cpuid_feature,
863da0bdb17b5c Mark Brown          2023-04-12  2622  		ARM64_CPUID_FIELDS(ID_AA64ISAR0_EL1, TLB, RANGE)
b620ba54547cd0 Zhenyu Ye           2020-07-15  2623  	},
05abb595bbaccc Suzuki K Poulose    2018-03-26  2624  #ifdef CONFIG_ARM64_HW_AFDBM
05abb595bbaccc Suzuki K Poulose    2018-03-26  2625  	{
04d402a453c37f Jeremy Linton       2023-10-17  2626  		.desc = "Hardware dirty bit management",
05abb595bbaccc Suzuki K Poulose    2018-03-26  2627  		.type = ARM64_CPUCAP_WEAK_LOCAL_CPU_FEATURE,
05abb595bbaccc Suzuki K Poulose    2018-03-26  2628  		.capability = ARM64_HW_DBM,
05abb595bbaccc Suzuki K Poulose    2018-03-26  2629  		.matches = has_hw_dbm,
05abb595bbaccc Suzuki K Poulose    2018-03-26  2630  		.cpu_enable = cpu_enable_hw_dbm,
04d402a453c37f Jeremy Linton       2023-10-17  2631  		.cpus = &dbm_cpus,
863da0bdb17b5c Mark Brown          2023-04-12  2632  		ARM64_CPUID_FIELDS(ID_AA64MMFR1_EL1, HAFDBS, DBM)
05abb595bbaccc Suzuki K Poulose    2018-03-26  2633  	},
05abb595bbaccc Suzuki K Poulose    2018-03-26  2634  #endif
86d0dd34eafffb Ard Biesheuvel      2018-08-27  2635  	{
86d0dd34eafffb Ard Biesheuvel      2018-08-27  2636  		.desc = "CRC32 instructions",
86d0dd34eafffb Ard Biesheuvel      2018-08-27  2637  		.capability = ARM64_HAS_CRC32,
86d0dd34eafffb Ard Biesheuvel      2018-08-27  2638  		.type = ARM64_CPUCAP_SYSTEM_FEATURE,
86d0dd34eafffb Ard Biesheuvel      2018-08-27  2639  		.matches = has_cpuid_feature,
863da0bdb17b5c Mark Brown          2023-04-12  2640  		ARM64_CPUID_FIELDS(ID_AA64ISAR0_EL1, CRC32, IMP)
86d0dd34eafffb Ard Biesheuvel      2018-08-27  2641  	},
d71be2b6c0e191 Will Deacon         2018-06-15  2642  	{
d71be2b6c0e191 Will Deacon         2018-06-15  2643  		.desc = "Speculative Store Bypassing Safe (SSBS)",
d71be2b6c0e191 Will Deacon         2018-06-15  2644  		.capability = ARM64_SSBS,
532d581583f25d Will Deacon         2020-09-15  2645  		.type = ARM64_CPUCAP_SYSTEM_FEATURE,
d71be2b6c0e191 Will Deacon         2018-06-15  2646  		.matches = has_cpuid_feature,
863da0bdb17b5c Mark Brown          2023-04-12  2647  		ARM64_CPUID_FIELDS(ID_AA64PFR1_EL1, SSBS, IMP)
d71be2b6c0e191 Will Deacon         2018-06-15  2648  	},
5ffdfaedfa0aba Vladimir Murzin     2018-07-31  2649  #ifdef CONFIG_ARM64_CNP
5ffdfaedfa0aba Vladimir Murzin     2018-07-31  2650  	{
5ffdfaedfa0aba Vladimir Murzin     2018-07-31  2651  		.desc = "Common not Private translations",
5ffdfaedfa0aba Vladimir Murzin     2018-07-31  2652  		.capability = ARM64_HAS_CNP,
5ffdfaedfa0aba Vladimir Murzin     2018-07-31  2653  		.type = ARM64_CPUCAP_SYSTEM_FEATURE,
5ffdfaedfa0aba Vladimir Murzin     2018-07-31  2654  		.matches = has_useable_cnp,
5ffdfaedfa0aba Vladimir Murzin     2018-07-31  2655  		.cpu_enable = cpu_enable_cnp,
863da0bdb17b5c Mark Brown          2023-04-12  2656  		ARM64_CPUID_FIELDS(ID_AA64MMFR2_EL1, CnP, IMP)
5ffdfaedfa0aba Vladimir Murzin     2018-07-31  2657  	},
8f04e8e6e29c93 Will Deacon         2018-08-07  2658  #endif
bd4fb6d270bc42 Will Deacon         2018-06-14  2659  	{
bd4fb6d270bc42 Will Deacon         2018-06-14  2660  		.desc = "Speculation barrier (SB)",
bd4fb6d270bc42 Will Deacon         2018-06-14  2661  		.capability = ARM64_HAS_SB,
bd4fb6d270bc42 Will Deacon         2018-06-14  2662  		.type = ARM64_CPUCAP_SYSTEM_FEATURE,
bd4fb6d270bc42 Will Deacon         2018-06-14  2663  		.matches = has_cpuid_feature,
863da0bdb17b5c Mark Brown          2023-04-12  2664  		ARM64_CPUID_FIELDS(ID_AA64ISAR1_EL1, SB, IMP)
bd4fb6d270bc42 Will Deacon         2018-06-14  2665  	},
6984eb47d5c1a7 Mark Rutland        2018-12-07  2666  #ifdef CONFIG_ARM64_PTR_AUTH
6984eb47d5c1a7 Mark Rutland        2018-12-07  2667  	{
be3256a086afb4 Vladimir Murzin     2022-02-24  2668  		.desc = "Address authentication (architected QARMA5 algorithm)",
be3256a086afb4 Vladimir Murzin     2022-02-24  2669  		.capability = ARM64_HAS_ADDRESS_AUTH_ARCH_QARMA5,
6982934e19f8eb Kristina Martsenko  2020-03-13  2670  		.type = ARM64_CPUCAP_BOOT_CPU_FEATURE,
ba9d1d3e3e7c34 Amit Daniel Kachhap 2020-09-14  2671  		.matches = has_address_auth_cpucap,
863da0bdb17b5c Mark Brown          2023-04-12  2672  		ARM64_CPUID_FIELDS(ID_AA64ISAR1_EL1, APA, PAuth)
6984eb47d5c1a7 Mark Rutland        2018-12-07  2673  	},
def8c222f054d1 Vladimir Murzin     2022-02-24  2674  	{
def8c222f054d1 Vladimir Murzin     2022-02-24  2675  		.desc = "Address authentication (architected QARMA3 algorithm)",
def8c222f054d1 Vladimir Murzin     2022-02-24  2676  		.capability = ARM64_HAS_ADDRESS_AUTH_ARCH_QARMA3,
def8c222f054d1 Vladimir Murzin     2022-02-24  2677  		.type = ARM64_CPUCAP_BOOT_CPU_FEATURE,
def8c222f054d1 Vladimir Murzin     2022-02-24  2678  		.matches = has_address_auth_cpucap,
863da0bdb17b5c Mark Brown          2023-04-12  2679  		ARM64_CPUID_FIELDS(ID_AA64ISAR2_EL1, APA3, PAuth)
def8c222f054d1 Vladimir Murzin     2022-02-24  2680  	},
6984eb47d5c1a7 Mark Rutland        2018-12-07  2681  	{
6984eb47d5c1a7 Mark Rutland        2018-12-07  2682  		.desc = "Address authentication (IMP DEF algorithm)",
6984eb47d5c1a7 Mark Rutland        2018-12-07  2683  		.capability = ARM64_HAS_ADDRESS_AUTH_IMP_DEF,
6982934e19f8eb Kristina Martsenko  2020-03-13  2684  		.type = ARM64_CPUCAP_BOOT_CPU_FEATURE,
ba9d1d3e3e7c34 Amit Daniel Kachhap 2020-09-14  2685  		.matches = has_address_auth_cpucap,
863da0bdb17b5c Mark Brown          2023-04-12  2686  		ARM64_CPUID_FIELDS(ID_AA64ISAR1_EL1, API, PAuth)
cfef06bd0686a5 Kristina Martsenko  2020-03-13  2687  	},
cfef06bd0686a5 Kristina Martsenko  2020-03-13  2688  	{
cfef06bd0686a5 Kristina Martsenko  2020-03-13  2689  		.capability = ARM64_HAS_ADDRESS_AUTH,
6982934e19f8eb Kristina Martsenko  2020-03-13  2690  		.type = ARM64_CPUCAP_BOOT_CPU_FEATURE,
ba9d1d3e3e7c34 Amit Daniel Kachhap 2020-09-14  2691  		.matches = has_address_auth_metacap,
6984eb47d5c1a7 Mark Rutland        2018-12-07  2692  	},
6984eb47d5c1a7 Mark Rutland        2018-12-07  2693  	{
be3256a086afb4 Vladimir Murzin     2022-02-24  2694  		.desc = "Generic authentication (architected QARMA5 algorithm)",
be3256a086afb4 Vladimir Murzin     2022-02-24  2695  		.capability = ARM64_HAS_GENERIC_AUTH_ARCH_QARMA5,
6984eb47d5c1a7 Mark Rutland        2018-12-07  2696  		.type = ARM64_CPUCAP_SYSTEM_FEATURE,
6984eb47d5c1a7 Mark Rutland        2018-12-07  2697  		.matches = has_cpuid_feature,
863da0bdb17b5c Mark Brown          2023-04-12  2698  		ARM64_CPUID_FIELDS(ID_AA64ISAR1_EL1, GPA, IMP)
6984eb47d5c1a7 Mark Rutland        2018-12-07  2699  	},
def8c222f054d1 Vladimir Murzin     2022-02-24  2700  	{
def8c222f054d1 Vladimir Murzin     2022-02-24  2701  		.desc = "Generic authentication (architected QARMA3 algorithm)",
def8c222f054d1 Vladimir Murzin     2022-02-24  2702  		.capability = ARM64_HAS_GENERIC_AUTH_ARCH_QARMA3,
def8c222f054d1 Vladimir Murzin     2022-02-24  2703  		.type = ARM64_CPUCAP_SYSTEM_FEATURE,
def8c222f054d1 Vladimir Murzin     2022-02-24  2704  		.matches = has_cpuid_feature,
863da0bdb17b5c Mark Brown          2023-04-12  2705  		ARM64_CPUID_FIELDS(ID_AA64ISAR2_EL1, GPA3, IMP)
def8c222f054d1 Vladimir Murzin     2022-02-24  2706  	},
6984eb47d5c1a7 Mark Rutland        2018-12-07  2707  	{
6984eb47d5c1a7 Mark Rutland        2018-12-07  2708  		.desc = "Generic authentication (IMP DEF algorithm)",
6984eb47d5c1a7 Mark Rutland        2018-12-07  2709  		.capability = ARM64_HAS_GENERIC_AUTH_IMP_DEF,
6984eb47d5c1a7 Mark Rutland        2018-12-07  2710  		.type = ARM64_CPUCAP_SYSTEM_FEATURE,
6984eb47d5c1a7 Mark Rutland        2018-12-07  2711  		.matches = has_cpuid_feature,
863da0bdb17b5c Mark Brown          2023-04-12  2712  		ARM64_CPUID_FIELDS(ID_AA64ISAR1_EL1, GPI, IMP)
6984eb47d5c1a7 Mark Rutland        2018-12-07  2713  	},
cfef06bd0686a5 Kristina Martsenko  2020-03-13  2714  	{
cfef06bd0686a5 Kristina Martsenko  2020-03-13  2715  		.capability = ARM64_HAS_GENERIC_AUTH,
cfef06bd0686a5 Kristina Martsenko  2020-03-13  2716  		.type = ARM64_CPUCAP_SYSTEM_FEATURE,
cfef06bd0686a5 Kristina Martsenko  2020-03-13  2717  		.matches = has_generic_auth,
cfef06bd0686a5 Kristina Martsenko  2020-03-13  2718  	},
6984eb47d5c1a7 Mark Rutland        2018-12-07  2719  #endif /* CONFIG_ARM64_PTR_AUTH */
b90d2b22afdc7c Julien Thierry      2019-01-31  2720  #ifdef CONFIG_ARM64_PSEUDO_NMI
b90d2b22afdc7c Julien Thierry      2019-01-31  2721  	{
b90d2b22afdc7c Julien Thierry      2019-01-31  2722  		/*
b90d2b22afdc7c Julien Thierry      2019-01-31  2723  		 * Depends on having GICv3
b90d2b22afdc7c Julien Thierry      2019-01-31  2724  		 */
b90d2b22afdc7c Julien Thierry      2019-01-31  2725  		.desc = "IRQ priority masking",
c888b7bd916c4d Mark Rutland        2023-01-30  2726  		.capability = ARM64_HAS_GIC_PRIO_MASKING,
b90d2b22afdc7c Julien Thierry      2019-01-31  2727  		.type = ARM64_CPUCAP_STRICT_BOOT_CPU_FEATURE,
b90d2b22afdc7c Julien Thierry      2019-01-31  2728  		.matches = can_use_gic_priorities,
b90d2b22afdc7c Julien Thierry      2019-01-31  2729  	},
8bf0a8048b155e Mark Rutland        2023-01-30  2730  	{
8bf0a8048b155e Mark Rutland        2023-01-30  2731  		/*
8bf0a8048b155e Mark Rutland        2023-01-30  2732  		 * Depends on ARM64_HAS_GIC_PRIO_MASKING
8bf0a8048b155e Mark Rutland        2023-01-30  2733  		 */
8bf0a8048b155e Mark Rutland        2023-01-30  2734  		.capability = ARM64_HAS_GIC_PRIO_RELAXED_SYNC,
8bf0a8048b155e Mark Rutland        2023-01-30  2735  		.type = ARM64_CPUCAP_STRICT_BOOT_CPU_FEATURE,
8bf0a8048b155e Mark Rutland        2023-01-30  2736  		.matches = has_gic_prio_relaxed_sync,
b90d2b22afdc7c Julien Thierry      2019-01-31  2737  	},
3e6c69a058deaa Mark Brown          2019-12-09  2738  #endif
3e6c69a058deaa Mark Brown          2019-12-09  2739  #ifdef CONFIG_ARM64_E0PD
3e6c69a058deaa Mark Brown          2019-12-09  2740  	{
3e6c69a058deaa Mark Brown          2019-12-09  2741  		.desc = "E0PD",
3e6c69a058deaa Mark Brown          2019-12-09  2742  		.capability = ARM64_HAS_E0PD,
3e6c69a058deaa Mark Brown          2019-12-09  2743  		.type = ARM64_CPUCAP_SYSTEM_FEATURE,
3e6c69a058deaa Mark Brown          2019-12-09  2744  		.cpu_enable = cpu_enable_e0pd,
863da0bdb17b5c Mark Brown          2023-04-12  2745  		.matches = has_cpuid_feature,
863da0bdb17b5c Mark Brown          2023-04-12  2746  		ARM64_CPUID_FIELDS(ID_AA64MMFR2_EL1, E0PD, IMP)
3e6c69a058deaa Mark Brown          2019-12-09  2747  	},
bc206065944e2d Will Deacon         2020-01-22  2748  #endif
1a50ec0b3b2e9a Richard Henderson   2020-01-21  2749  	{
1a50ec0b3b2e9a Richard Henderson   2020-01-21  2750  		.desc = "Random Number Generator",
1a50ec0b3b2e9a Richard Henderson   2020-01-21  2751  		.capability = ARM64_HAS_RNG,
1a50ec0b3b2e9a Richard Henderson   2020-01-21  2752  		.type = ARM64_CPUCAP_SYSTEM_FEATURE,
1a50ec0b3b2e9a Richard Henderson   2020-01-21  2753  		.matches = has_cpuid_feature,
863da0bdb17b5c Mark Brown          2023-04-12  2754  		ARM64_CPUID_FIELDS(ID_AA64ISAR0_EL1, RNDR, IMP)
1a50ec0b3b2e9a Richard Henderson   2020-01-21  2755  	},
8ef8f360cf30be Dave Martin         2020-03-16  2756  #ifdef CONFIG_ARM64_BTI
8ef8f360cf30be Dave Martin         2020-03-16  2757  	{
8ef8f360cf30be Dave Martin         2020-03-16  2758  		.desc = "Branch Target Identification",
8ef8f360cf30be Dave Martin         2020-03-16  2759  		.capability = ARM64_BTI,
c8027285e3660e Mark Brown          2020-05-06  2760  #ifdef CONFIG_ARM64_BTI_KERNEL
c8027285e3660e Mark Brown          2020-05-06  2761  		.type = ARM64_CPUCAP_STRICT_BOOT_CPU_FEATURE,
c8027285e3660e Mark Brown          2020-05-06  2762  #else
8ef8f360cf30be Dave Martin         2020-03-16  2763  		.type = ARM64_CPUCAP_SYSTEM_FEATURE,
c8027285e3660e Mark Brown          2020-05-06  2764  #endif
8ef8f360cf30be Dave Martin         2020-03-16  2765  		.matches = has_cpuid_feature,
8ef8f360cf30be Dave Martin         2020-03-16  2766  		.cpu_enable = bti_enable,
863da0bdb17b5c Mark Brown          2023-04-12  2767  		ARM64_CPUID_FIELDS(ID_AA64PFR1_EL1, BT, IMP)
8ef8f360cf30be Dave Martin         2020-03-16  2768  	},
b90d2b22afdc7c Julien Thierry      2019-01-31  2769  #endif
3b714d24ef173f Vincenzo Frascino   2019-09-06  2770  #ifdef CONFIG_ARM64_MTE
3b714d24ef173f Vincenzo Frascino   2019-09-06  2771  	{
3b714d24ef173f Vincenzo Frascino   2019-09-06  2772  		.desc = "Memory Tagging Extension",
3b714d24ef173f Vincenzo Frascino   2019-09-06  2773  		.capability = ARM64_MTE,
3b714d24ef173f Vincenzo Frascino   2019-09-06  2774  		.type = ARM64_CPUCAP_STRICT_BOOT_CPU_FEATURE,
3b714d24ef173f Vincenzo Frascino   2019-09-06  2775  		.matches = has_cpuid_feature,
34bfeea4a9e9cd Catalin Marinas     2020-05-04  2776  		.cpu_enable = cpu_enable_mte,
863da0bdb17b5c Mark Brown          2023-04-12  2777  		ARM64_CPUID_FIELDS(ID_AA64PFR1_EL1, MTE, MTE2)
3b714d24ef173f Vincenzo Frascino   2019-09-06  2778  	},
d73c162e073376 Vincenzo Frascino   2021-10-06  2779  	{
d73c162e073376 Vincenzo Frascino   2021-10-06  2780  		.desc = "Asymmetric MTE Tag Check Fault",
d73c162e073376 Vincenzo Frascino   2021-10-06  2781  		.capability = ARM64_MTE_ASYMM,
d73c162e073376 Vincenzo Frascino   2021-10-06  2782  		.type = ARM64_CPUCAP_BOOT_CPU_FEATURE,
d73c162e073376 Vincenzo Frascino   2021-10-06  2783  		.matches = has_cpuid_feature,
863da0bdb17b5c Mark Brown          2023-04-12  2784  		ARM64_CPUID_FIELDS(ID_AA64PFR1_EL1, MTE, MTE3)
d73c162e073376 Vincenzo Frascino   2021-10-06  2785  	},
3b714d24ef173f Vincenzo Frascino   2019-09-06  2786  #endif /* CONFIG_ARM64_MTE */
364a5a8ae8dc2d Will Deacon         2020-06-30  2787  	{
364a5a8ae8dc2d Will Deacon         2020-06-30  2788  		.desc = "RCpc load-acquire (LDAPR)",
364a5a8ae8dc2d Will Deacon         2020-06-30  2789  		.capability = ARM64_HAS_LDAPR,
364a5a8ae8dc2d Will Deacon         2020-06-30  2790  		.type = ARM64_CPUCAP_SYSTEM_FEATURE,
364a5a8ae8dc2d Will Deacon         2020-06-30  2791  		.matches = has_cpuid_feature,
863da0bdb17b5c Mark Brown          2023-04-12  2792  		ARM64_CPUID_FIELDS(ID_AA64ISAR1_EL1, LRCPC, IMP)
364a5a8ae8dc2d Will Deacon         2020-06-30  2793  	},
b206a708cbfb35 Mark Brown          2023-08-15  2794  	{
b206a708cbfb35 Mark Brown          2023-08-15  2795  		.desc = "Fine Grained Traps",
b206a708cbfb35 Mark Brown          2023-08-15  2796  		.type = ARM64_CPUCAP_SYSTEM_FEATURE,
b206a708cbfb35 Mark Brown          2023-08-15  2797  		.capability = ARM64_HAS_FGT,
b206a708cbfb35 Mark Brown          2023-08-15  2798  		.matches = has_cpuid_feature,
b206a708cbfb35 Mark Brown          2023-08-15  2799  		ARM64_CPUID_FIELDS(ID_AA64MMFR0_EL1, FGT, IMP)
b206a708cbfb35 Mark Brown          2023-08-15  2800  	},
5e64b862c4823a Mark Brown          2022-04-19  2801  #ifdef CONFIG_ARM64_SME
5e64b862c4823a Mark Brown          2022-04-19  2802  	{
5e64b862c4823a Mark Brown          2022-04-19  2803  		.desc = "Scalable Matrix Extension",
5e64b862c4823a Mark Brown          2022-04-19  2804  		.type = ARM64_CPUCAP_SYSTEM_FEATURE,
5e64b862c4823a Mark Brown          2022-04-19  2805  		.capability = ARM64_SME,
5e64b862c4823a Mark Brown          2022-04-19  2806  		.matches = has_cpuid_feature,
14567ba42c5747 Mark Rutland        2023-10-16  2807  		.cpu_enable = cpu_enable_sme,
863da0bdb17b5c Mark Brown          2023-04-12  2808  		ARM64_CPUID_FIELDS(ID_AA64PFR1_EL1, SME, IMP)
5e64b862c4823a Mark Brown          2022-04-19  2809  	},
5e64b862c4823a Mark Brown          2022-04-19  2810  	/* FA64 should be sorted after the base SME capability */
5e64b862c4823a Mark Brown          2022-04-19  2811  	{
5e64b862c4823a Mark Brown          2022-04-19  2812  		.desc = "FA64",
5e64b862c4823a Mark Brown          2022-04-19  2813  		.type = ARM64_CPUCAP_SYSTEM_FEATURE,
5e64b862c4823a Mark Brown          2022-04-19  2814  		.capability = ARM64_SME_FA64,
5e64b862c4823a Mark Brown          2022-04-19  2815  		.matches = has_cpuid_feature,
14567ba42c5747 Mark Rutland        2023-10-16  2816  		.cpu_enable = cpu_enable_fa64,
863da0bdb17b5c Mark Brown          2023-04-12  2817  		ARM64_CPUID_FIELDS(ID_AA64SMFR0_EL1, FA64, IMP)
5e64b862c4823a Mark Brown          2022-04-19  2818  	},
d4913eee152d3f Mark Brown          2023-01-16  2819  	{
d4913eee152d3f Mark Brown          2023-01-16  2820  		.desc = "SME2",
d4913eee152d3f Mark Brown          2023-01-16  2821  		.type = ARM64_CPUCAP_SYSTEM_FEATURE,
d4913eee152d3f Mark Brown          2023-01-16  2822  		.capability = ARM64_SME2,
d4913eee152d3f Mark Brown          2023-01-16  2823  		.matches = has_cpuid_feature,
14567ba42c5747 Mark Rutland        2023-10-16  2824  		.cpu_enable = cpu_enable_sme2,
863da0bdb17b5c Mark Brown          2023-04-12  2825  		ARM64_CPUID_FIELDS(ID_AA64PFR1_EL1, SME, SME2)
d4913eee152d3f Mark Brown          2023-01-16  2826  	},
5e64b862c4823a Mark Brown          2022-04-19  2827  #endif /* CONFIG_ARM64_SME */
06e0b802583d7b Marc Zyngier        2022-04-19  2828  	{
06e0b802583d7b Marc Zyngier        2022-04-19  2829  		.desc = "WFx with timeout",
06e0b802583d7b Marc Zyngier        2022-04-19  2830  		.capability = ARM64_HAS_WFXT,
06e0b802583d7b Marc Zyngier        2022-04-19  2831  		.type = ARM64_CPUCAP_SYSTEM_FEATURE,
06e0b802583d7b Marc Zyngier        2022-04-19  2832  		.matches = has_cpuid_feature,
863da0bdb17b5c Mark Brown          2023-04-12  2833  		ARM64_CPUID_FIELDS(ID_AA64ISAR2_EL1, WFxT, IMP)
06e0b802583d7b Marc Zyngier        2022-04-19  2834  	},
3a46b352a3e672 Kristina Martsenko  2022-06-22  2835  	{
3a46b352a3e672 Kristina Martsenko  2022-06-22  2836  		.desc = "Trap EL0 IMPLEMENTATION DEFINED functionality",
3a46b352a3e672 Kristina Martsenko  2022-06-22  2837  		.capability = ARM64_HAS_TIDCP1,
3a46b352a3e672 Kristina Martsenko  2022-06-22  2838  		.type = ARM64_CPUCAP_SYSTEM_FEATURE,
3a46b352a3e672 Kristina Martsenko  2022-06-22  2839  		.matches = has_cpuid_feature,
3a46b352a3e672 Kristina Martsenko  2022-06-22  2840  		.cpu_enable = cpu_trap_el0_impdef,
863da0bdb17b5c Mark Brown          2023-04-12  2841  		ARM64_CPUID_FIELDS(ID_AA64MMFR1_EL1, TIDCP1, IMP)
3a46b352a3e672 Kristina Martsenko  2022-06-22  2842  	},
01ab991fc0ee50 Ard Biesheuvel      2022-11-07  2843  	{
01ab991fc0ee50 Ard Biesheuvel      2022-11-07  2844  		.desc = "Data independent timing control (DIT)",
01ab991fc0ee50 Ard Biesheuvel      2022-11-07  2845  		.capability = ARM64_HAS_DIT,
01ab991fc0ee50 Ard Biesheuvel      2022-11-07  2846  		.type = ARM64_CPUCAP_SYSTEM_FEATURE,
01ab991fc0ee50 Ard Biesheuvel      2022-11-07  2847  		.matches = has_cpuid_feature,
01ab991fc0ee50 Ard Biesheuvel      2022-11-07  2848  		.cpu_enable = cpu_enable_dit,
863da0bdb17b5c Mark Brown          2023-04-12  2849  		ARM64_CPUID_FIELDS(ID_AA64PFR0_EL1, DIT, IMP)
01ab991fc0ee50 Ard Biesheuvel      2022-11-07  2850  	},
b7564127ffcb1a Kristina Martsenko  2023-05-09  2851  	{
b7564127ffcb1a Kristina Martsenko  2023-05-09  2852  		.desc = "Memory Copy and Memory Set instructions",
b7564127ffcb1a Kristina Martsenko  2023-05-09  2853  		.capability = ARM64_HAS_MOPS,
b7564127ffcb1a Kristina Martsenko  2023-05-09  2854  		.type = ARM64_CPUCAP_SYSTEM_FEATURE,
b7564127ffcb1a Kristina Martsenko  2023-05-09  2855  		.matches = has_cpuid_feature,
b7564127ffcb1a Kristina Martsenko  2023-05-09  2856  		.cpu_enable = cpu_enable_mops,
b7564127ffcb1a Kristina Martsenko  2023-05-09  2857  		ARM64_CPUID_FIELDS(ID_AA64ISAR2_EL1, MOPS, IMP)
b7564127ffcb1a Kristina Martsenko  2023-05-09  2858  	},
2b760046a2d3d6 Joey Gouly          2023-06-06  2859  	{
2b760046a2d3d6 Joey Gouly          2023-06-06  2860  		.capability = ARM64_HAS_TCR2,
2b760046a2d3d6 Joey Gouly          2023-06-06  2861  		.type = ARM64_CPUCAP_SYSTEM_FEATURE,
2b760046a2d3d6 Joey Gouly          2023-06-06  2862  		.matches = has_cpuid_feature,
2b760046a2d3d6 Joey Gouly          2023-06-06  2863  		ARM64_CPUID_FIELDS(ID_AA64MMFR3_EL1, TCRX, IMP)
2b760046a2d3d6 Joey Gouly          2023-06-06  2864  	},
e43454c4423264 Joey Gouly          2023-06-06  2865  	{
e43454c4423264 Joey Gouly          2023-06-06  2866  		.desc = "Stage-1 Permission Indirection Extension (S1PIE)",
e43454c4423264 Joey Gouly          2023-06-06  2867  		.capability = ARM64_HAS_S1PIE,
e43454c4423264 Joey Gouly          2023-06-06  2868  		.type = ARM64_CPUCAP_BOOT_CPU_FEATURE,
e43454c4423264 Joey Gouly          2023-06-06  2869  		.matches = has_cpuid_feature,
e43454c4423264 Joey Gouly          2023-06-06  2870  		ARM64_CPUID_FIELDS(ID_AA64MMFR3_EL1, S1PIE, IMP)
e43454c4423264 Joey Gouly          2023-06-06  2871  	},
e2d6c906f0ac69 Marc Zyngier        2023-06-09  2872  	{
e2d6c906f0ac69 Marc Zyngier        2023-06-09  2873  		.desc = "VHE for hypervisor only",
e2d6c906f0ac69 Marc Zyngier        2023-06-09  2874  		.capability = ARM64_KVM_HVHE,
e2d6c906f0ac69 Marc Zyngier        2023-06-09  2875  		.type = ARM64_CPUCAP_SYSTEM_FEATURE,
e2d6c906f0ac69 Marc Zyngier        2023-06-09  2876  		.matches = hvhe_possible,
e2d6c906f0ac69 Marc Zyngier        2023-06-09  2877  	},
c876c3f182a5cc Marc Zyngier        2023-05-15  2878  	{
c876c3f182a5cc Marc Zyngier        2023-05-15  2879  		.desc = "Enhanced Virtualization Traps",
c876c3f182a5cc Marc Zyngier        2023-05-15  2880  		.capability = ARM64_HAS_EVT,
c876c3f182a5cc Marc Zyngier        2023-05-15  2881  		.type = ARM64_CPUCAP_SYSTEM_FEATURE,
c876c3f182a5cc Marc Zyngier        2023-05-15  2882  		.matches = has_cpuid_feature,
ce33cea5d833c2 Mark Brown          2023-07-18  2883  		ARM64_CPUID_FIELDS(ID_AA64MMFR2_EL1, EVT, IMP)
c876c3f182a5cc Marc Zyngier        2023-05-15  2884  	},
b1366d21daaebb Ryan Roberts        2023-11-27  2885  	{
b1366d21daaebb Ryan Roberts        2023-11-27  2886  		.desc = "52-bit Virtual Addressing for KVM (LPA2)",
b1366d21daaebb Ryan Roberts        2023-11-27  2887  		.capability = ARM64_HAS_LPA2,
b1366d21daaebb Ryan Roberts        2023-11-27  2888  		.type = ARM64_CPUCAP_SYSTEM_FEATURE,
b1366d21daaebb Ryan Roberts        2023-11-27  2889  		.matches = has_lpa2,
b1366d21daaebb Ryan Roberts        2023-11-27  2890  	},
203f2b95a882dc Mark Brown          2024-03-06  2891  	{
203f2b95a882dc Mark Brown          2024-03-06  2892  		.desc = "FPMR",
203f2b95a882dc Mark Brown          2024-03-06  2893  		.type = ARM64_CPUCAP_SYSTEM_FEATURE,
203f2b95a882dc Mark Brown          2024-03-06  2894  		.capability = ARM64_HAS_FPMR,
203f2b95a882dc Mark Brown          2024-03-06  2895  		.matches = has_cpuid_feature,
203f2b95a882dc Mark Brown          2024-03-06  2896  		.cpu_enable = cpu_enable_fpmr,
203f2b95a882dc Mark Brown          2024-03-06  2897  		ARM64_CPUID_FIELDS(ID_AA64PFR2_EL1, FPMR, IMP)
203f2b95a882dc Mark Brown          2024-03-06  2898  	},
9cce9c6c2c3b7d Ard Biesheuvel      2024-02-14  2899  #ifdef CONFIG_ARM64_VA_BITS_52
9cce9c6c2c3b7d Ard Biesheuvel      2024-02-14  2900  	{
9cce9c6c2c3b7d Ard Biesheuvel      2024-02-14  2901  		.capability = ARM64_HAS_VA52,
9cce9c6c2c3b7d Ard Biesheuvel      2024-02-14  2902  		.type = ARM64_CPUCAP_BOOT_CPU_FEATURE,
352b0395b5053f Ard Biesheuvel      2024-02-14  2903  		.matches = has_cpuid_feature,
352b0395b5053f Ard Biesheuvel      2024-02-14  2904  #ifdef CONFIG_ARM64_64K_PAGES
352b0395b5053f Ard Biesheuvel      2024-02-14  2905  		.desc = "52-bit Virtual Addressing (LVA)",
2aea7b77aabc70 Marc Zyngier        2024-02-19  2906  		ARM64_CPUID_FIELDS(ID_AA64MMFR2_EL1, VARange, 52)
352b0395b5053f Ard Biesheuvel      2024-02-14  2907  #else
352b0395b5053f Ard Biesheuvel      2024-02-14  2908  		.desc = "52-bit Virtual Addressing (LPA2)",
352b0395b5053f Ard Biesheuvel      2024-02-14  2909  #ifdef CONFIG_ARM64_4K_PAGES
2aea7b77aabc70 Marc Zyngier        2024-02-19  2910  		ARM64_CPUID_FIELDS(ID_AA64MMFR0_EL1, TGRAN4, 52_BIT)
352b0395b5053f Ard Biesheuvel      2024-02-14  2911  #else
2aea7b77aabc70 Marc Zyngier        2024-02-19  2912  		ARM64_CPUID_FIELDS(ID_AA64MMFR0_EL1, TGRAN16, 52_BIT)
352b0395b5053f Ard Biesheuvel      2024-02-14  2913  #endif
352b0395b5053f Ard Biesheuvel      2024-02-14  2914  #endif
66e08b376a3230 James Morse         2018-07-02  2915  #endif
66e08b376a3230 James Morse         2018-07-02  2916  #ifdef CONFIG_ARM64_MPAM
66e08b376a3230 James Morse         2018-07-02  2917  	{
66e08b376a3230 James Morse         2018-07-02  2918  		.desc = "Memory Partitioning And Monitoring",
66e08b376a3230 James Morse         2018-07-02  2919  		.type = ARM64_CPUCAP_SYSTEM_FEATURE,
66e08b376a3230 James Morse         2018-07-02  2920  		.capability = ARM64_MPAM,
66e08b376a3230 James Morse         2018-07-02  2921  		.matches = test_has_mpam,
66e08b376a3230 James Morse         2018-07-02  2922  		.cpu_enable = cpu_enable_mpam,
66e08b376a3230 James Morse         2018-07-02  2923  		ARM64_CPUID_FIELDS(ID_AA64PFR0_EL1, MPAM, 1)
9cce9c6c2c3b7d Ard Biesheuvel      2024-02-14  2924  	},
9cce9c6c2c3b7d Ard Biesheuvel      2024-02-14  2925  #endif
da9af5071b25cb Marc Zyngier        2024-01-22  2926  	{
da9af5071b25cb Marc Zyngier        2024-01-22  2927  		.desc = "NV1",
da9af5071b25cb Marc Zyngier        2024-01-22  2928  		.capability = ARM64_HAS_HCR_NV1,
da9af5071b25cb Marc Zyngier        2024-01-22  2929  		.type = ARM64_CPUCAP_SYSTEM_FEATURE,
da9af5071b25cb Marc Zyngier        2024-01-22  2930  		.matches = has_nv1,
da9af5071b25cb Marc Zyngier        2024-01-22  2931  		ARM64_CPUID_FIELDS_NEG(ID_AA64MMFR4_EL1, E2H0, NI_NV1)
da9af5071b25cb Marc Zyngier        2024-01-22  2932  	},
359b706473b47d Marc Zyngier        2015-03-27  2933  	{},
359b706473b47d Marc Zyngier        2015-03-27 @2934  };
359b706473b47d Marc Zyngier        2015-03-27  2935  

:::::: The code at line 2934 was first introduced by commit
:::::: 359b706473b47da3c93bd99fd10d798fe411ab67 arm64: Extract feature parsing code from cpu_errata.c

:::::: TO: Marc Zyngier <marc.zyngier@arm.com>
:::::: CC: Will Deacon <will.deacon@arm.com>

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

                 reply	other threads:[~2024-03-22 11:23 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=202403221932.Ss3YgPzc-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=james.morse@arm.com \
    --cc=llvm@lists.linux.dev \
    --cc=oe-kbuild-all@lists.linux.dev \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox