@@ -2217,7 +2217,7 @@ static const struct arm64_cpu_capabilities arm64_features[] = {
2217
2217
.field_pos = ID_AA64PFR0_EL1_GIC_SHIFT ,
2218
2218
.field_width = 4 ,
2219
2219
.sign = FTR_UNSIGNED ,
2220
- .min_field_value = 1 ,
2220
+ .min_field_value = ID_AA64PFR0_EL1_GIC_IMP ,
2221
2221
},
2222
2222
{
2223
2223
.desc = "Enhanced Counter Virtualization" ,
@@ -2228,7 +2228,7 @@ static const struct arm64_cpu_capabilities arm64_features[] = {
2228
2228
.field_pos = ID_AA64MMFR0_EL1_ECV_SHIFT ,
2229
2229
.field_width = 4 ,
2230
2230
.sign = FTR_UNSIGNED ,
2231
- .min_field_value = 1 ,
2231
+ .min_field_value = ID_AA64MMFR0_EL1_ECV_IMP ,
2232
2232
},
2233
2233
#ifdef CONFIG_ARM64_PAN
2234
2234
{
@@ -2240,7 +2240,7 @@ static const struct arm64_cpu_capabilities arm64_features[] = {
2240
2240
.field_pos = ID_AA64MMFR1_EL1_PAN_SHIFT ,
2241
2241
.field_width = 4 ,
2242
2242
.sign = FTR_UNSIGNED ,
2243
- .min_field_value = 1 ,
2243
+ .min_field_value = ID_AA64MMFR1_EL1_PAN_IMP ,
2244
2244
.cpu_enable = cpu_enable_pan ,
2245
2245
},
2246
2246
#endif /* CONFIG_ARM64_PAN */
@@ -2254,7 +2254,7 @@ static const struct arm64_cpu_capabilities arm64_features[] = {
2254
2254
.field_pos = ID_AA64MMFR1_EL1_PAN_SHIFT ,
2255
2255
.field_width = 4 ,
2256
2256
.sign = FTR_UNSIGNED ,
2257
- .min_field_value = 3 ,
2257
+ .min_field_value = ID_AA64MMFR1_EL1_PAN_PAN3 ,
2258
2258
},
2259
2259
#endif /* CONFIG_ARM64_EPAN */
2260
2260
#ifdef CONFIG_ARM64_LSE_ATOMICS
@@ -2267,7 +2267,7 @@ static const struct arm64_cpu_capabilities arm64_features[] = {
2267
2267
.field_pos = ID_AA64ISAR0_EL1_ATOMIC_SHIFT ,
2268
2268
.field_width = 4 ,
2269
2269
.sign = FTR_UNSIGNED ,
2270
- .min_field_value = 2 ,
2270
+ .min_field_value = ID_AA64ISAR0_EL1_ATOMIC_IMP ,
2271
2271
},
2272
2272
#endif /* CONFIG_ARM64_LSE_ATOMICS */
2273
2273
{
@@ -2335,7 +2335,7 @@ static const struct arm64_cpu_capabilities arm64_features[] = {
2335
2335
.sys_reg = SYS_ID_AA64PFR0_EL1 ,
2336
2336
.field_pos = ID_AA64PFR0_EL1_CSV3_SHIFT ,
2337
2337
.field_width = 4 ,
2338
- .min_field_value = 1 ,
2338
+ .min_field_value = ID_AA64PFR0_EL1_CSV3_IMP ,
2339
2339
.matches = unmap_kernel_at_el0 ,
2340
2340
.cpu_enable = kpti_install_ng_mappings ,
2341
2341
},
@@ -2355,7 +2355,7 @@ static const struct arm64_cpu_capabilities arm64_features[] = {
2355
2355
.sys_reg = SYS_ID_AA64ISAR1_EL1 ,
2356
2356
.field_pos = ID_AA64ISAR1_EL1_DPB_SHIFT ,
2357
2357
.field_width = 4 ,
2358
- .min_field_value = 1 ,
2358
+ .min_field_value = ID_AA64ISAR1_EL1_DPB_IMP ,
2359
2359
},
2360
2360
{
2361
2361
.desc = "Data cache clean to Point of Deep Persistence" ,
@@ -2366,7 +2366,7 @@ static const struct arm64_cpu_capabilities arm64_features[] = {
2366
2366
.sign = FTR_UNSIGNED ,
2367
2367
.field_pos = ID_AA64ISAR1_EL1_DPB_SHIFT ,
2368
2368
.field_width = 4 ,
2369
- .min_field_value = 2 ,
2369
+ .min_field_value = ID_AA64ISAR1_EL1_DPB_DPB2 ,
2370
2370
},
2371
2371
#endif
2372
2372
#ifdef CONFIG_ARM64_SVE
@@ -2437,7 +2437,7 @@ static const struct arm64_cpu_capabilities arm64_features[] = {
2437
2437
.sign = FTR_UNSIGNED ,
2438
2438
.field_pos = ID_AA64MMFR2_EL1_FWB_SHIFT ,
2439
2439
.field_width = 4 ,
2440
- .min_field_value = 1 ,
2440
+ .min_field_value = ID_AA64MMFR2_EL1_FWB_IMP ,
2441
2441
.matches = has_cpuid_feature ,
2442
2442
},
2443
2443
{
@@ -2448,7 +2448,7 @@ static const struct arm64_cpu_capabilities arm64_features[] = {
2448
2448
.sign = FTR_UNSIGNED ,
2449
2449
.field_pos = ID_AA64MMFR2_EL1_TTL_SHIFT ,
2450
2450
.field_width = 4 ,
2451
- .min_field_value = 1 ,
2451
+ .min_field_value = ID_AA64MMFR2_EL1_TTL_IMP ,
2452
2452
.matches = has_cpuid_feature ,
2453
2453
},
2454
2454
{
@@ -2478,7 +2478,7 @@ static const struct arm64_cpu_capabilities arm64_features[] = {
2478
2478
.sign = FTR_UNSIGNED ,
2479
2479
.field_pos = ID_AA64MMFR1_EL1_HAFDBS_SHIFT ,
2480
2480
.field_width = 4 ,
2481
- .min_field_value = 2 ,
2481
+ .min_field_value = ID_AA64MMFR1_EL1_HAFDBS_DBM ,
2482
2482
.matches = has_hw_dbm ,
2483
2483
.cpu_enable = cpu_enable_hw_dbm ,
2484
2484
},
@@ -2491,7 +2491,7 @@ static const struct arm64_cpu_capabilities arm64_features[] = {
2491
2491
.sys_reg = SYS_ID_AA64ISAR0_EL1 ,
2492
2492
.field_pos = ID_AA64ISAR0_EL1_CRC32_SHIFT ,
2493
2493
.field_width = 4 ,
2494
- .min_field_value = 1 ,
2494
+ .min_field_value = ID_AA64ISAR0_EL1_CRC32_IMP ,
2495
2495
},
2496
2496
{
2497
2497
.desc = "Speculative Store Bypassing Safe (SSBS)" ,
@@ -2514,7 +2514,7 @@ static const struct arm64_cpu_capabilities arm64_features[] = {
2514
2514
.sign = FTR_UNSIGNED ,
2515
2515
.field_pos = ID_AA64MMFR2_EL1_CnP_SHIFT ,
2516
2516
.field_width = 4 ,
2517
- .min_field_value = 1 ,
2517
+ .min_field_value = ID_AA64MMFR2_EL1_CnP_IMP ,
2518
2518
.cpu_enable = cpu_enable_cnp ,
2519
2519
},
2520
2520
#endif
@@ -2527,7 +2527,7 @@ static const struct arm64_cpu_capabilities arm64_features[] = {
2527
2527
.field_pos = ID_AA64ISAR1_EL1_SB_SHIFT ,
2528
2528
.field_width = 4 ,
2529
2529
.sign = FTR_UNSIGNED ,
2530
- .min_field_value = 1 ,
2530
+ .min_field_value = ID_AA64ISAR1_EL1_SB_IMP ,
2531
2531
},
2532
2532
#ifdef CONFIG_ARM64_PTR_AUTH
2533
2533
{
@@ -2636,7 +2636,7 @@ static const struct arm64_cpu_capabilities arm64_features[] = {
2636
2636
.field_width = 4 ,
2637
2637
.field_pos = ID_AA64MMFR2_EL1_E0PD_SHIFT ,
2638
2638
.matches = has_cpuid_feature ,
2639
- .min_field_value = 1 ,
2639
+ .min_field_value = ID_AA64MMFR2_EL1_E0PD_IMP ,
2640
2640
.cpu_enable = cpu_enable_e0pd ,
2641
2641
},
2642
2642
#endif
@@ -2649,7 +2649,7 @@ static const struct arm64_cpu_capabilities arm64_features[] = {
2649
2649
.field_pos = ID_AA64ISAR0_EL1_RNDR_SHIFT ,
2650
2650
.field_width = 4 ,
2651
2651
.sign = FTR_UNSIGNED ,
2652
- .min_field_value = 1 ,
2652
+ .min_field_value = ID_AA64ISAR0_EL1_RNDR_IMP ,
2653
2653
},
2654
2654
#ifdef CONFIG_ARM64_BTI
2655
2655
{
@@ -2703,7 +2703,7 @@ static const struct arm64_cpu_capabilities arm64_features[] = {
2703
2703
.field_pos = ID_AA64ISAR1_EL1_LRCPC_SHIFT ,
2704
2704
.field_width = 4 ,
2705
2705
.matches = has_cpuid_feature ,
2706
- .min_field_value = 1 ,
2706
+ .min_field_value = ID_AA64ISAR1_EL1_LRCPC_IMP ,
2707
2707
},
2708
2708
#ifdef CONFIG_ARM64_SME
2709
2709
{
0 commit comments