Symbol: arm64_cpu_capabilities
arch/arm64/include/asm/cpufeature.h
356
bool (*matches)(const struct arm64_cpu_capabilities *caps, int scope);
arch/arm64/include/asm/cpufeature.h
369
void (*cpu_enable)(const struct arm64_cpu_capabilities *cap);
arch/arm64/include/asm/cpufeature.h
403
const struct arm64_cpu_capabilities *match_list;
arch/arm64/include/asm/cpufeature.h
407
static inline int cpucap_default_scope(const struct arm64_cpu_capabilities *cap)
arch/arm64/include/asm/cpufeature.h
412
static inline bool cpucap_match_all_early_cpus(const struct arm64_cpu_capabilities *cap)
arch/arm64/include/asm/cpufeature.h
423
cpucap_multi_entry_cap_matches(const struct arm64_cpu_capabilities *entry,
arch/arm64/include/asm/cpufeature.h
426
const struct arm64_cpu_capabilities *caps;
arch/arm64/include/asm/fpsimd.h
154
struct arm64_cpu_capabilities;
arch/arm64/include/asm/fpsimd.h
155
extern void cpu_enable_fpsimd(const struct arm64_cpu_capabilities *__unused);
arch/arm64/include/asm/fpsimd.h
156
extern void cpu_enable_sve(const struct arm64_cpu_capabilities *__unused);
arch/arm64/include/asm/fpsimd.h
157
extern void cpu_enable_sme(const struct arm64_cpu_capabilities *__unused);
arch/arm64/include/asm/fpsimd.h
158
extern void cpu_enable_sme2(const struct arm64_cpu_capabilities *__unused);
arch/arm64/include/asm/fpsimd.h
159
extern void cpu_enable_fa64(const struct arm64_cpu_capabilities *__unused);
arch/arm64/include/asm/fpsimd.h
160
extern void cpu_enable_fpmr(const struct arm64_cpu_capabilities *__unused);
arch/arm64/include/asm/spectre.h
103
void spectre_bhb_enable_mitigation(const struct arm64_cpu_capabilities *__unused);
arch/arm64/include/asm/spectre.h
85
bool has_spectre_v2(const struct arm64_cpu_capabilities *cap, int scope);
arch/arm64/include/asm/spectre.h
86
void spectre_v2_enable_mitigation(const struct arm64_cpu_capabilities *__unused);
arch/arm64/include/asm/spectre.h
88
bool has_spectre_v3a(const struct arm64_cpu_capabilities *cap, int scope);
arch/arm64/include/asm/spectre.h
89
void spectre_v3a_enable_mitigation(const struct arm64_cpu_capabilities *__unused);
arch/arm64/include/asm/spectre.h
92
bool has_spectre_v4(const struct arm64_cpu_capabilities *cap, int scope);
arch/arm64/include/asm/spectre.h
93
void spectre_v4_enable_mitigation(const struct arm64_cpu_capabilities *__unused);
arch/arm64/include/asm/spectre.h
99
bool is_spectre_bhb_affected(const struct arm64_cpu_capabilities *entry, int scope);
arch/arm64/kernel/cpu_errata.c
113
has_mismatched_cache_type(const struct arm64_cpu_capabilities *entry,
arch/arm64/kernel/cpu_errata.c
162
need_arm_si_l1_workaround_4311569(const struct arm64_cpu_capabilities *entry, int scope)
arch/arm64/kernel/cpu_errata.c
169
cpu_enable_trap_ctr_access(const struct arm64_cpu_capabilities *cap)
arch/arm64/kernel/cpu_errata.c
189
has_cortex_a76_erratum_1463225(const struct arm64_cpu_capabilities *entry,
arch/arm64/kernel/cpu_errata.c
197
cpu_enable_cache_maint_trap(const struct arm64_cpu_capabilities *__unused)
arch/arm64/kernel/cpu_errata.c
246
needs_tx2_tvm_workaround(const struct arm64_cpu_capabilities *entry,
arch/arm64/kernel/cpu_errata.c
264
has_neoverse_n1_erratum_1542419(const struct arm64_cpu_capabilities *entry,
arch/arm64/kernel/cpu_errata.c
290
static bool has_impdef_pmuv3(const struct arm64_cpu_capabilities *entry, int scope)
arch/arm64/kernel/cpu_errata.c
306
static void cpu_enable_impdef_pmuv3_traps(const struct arm64_cpu_capabilities *__unused)
arch/arm64/kernel/cpu_errata.c
312
static const struct arm64_cpu_capabilities arm64_repeat_tlbi_list[] = {
arch/arm64/kernel/cpu_errata.c
384
static const struct arm64_cpu_capabilities qcom_erratum_1003_list[] = {
arch/arm64/kernel/cpu_errata.c
441
static const struct arm64_cpu_capabilities erratum_843419_list[] = {
arch/arm64/kernel/cpu_errata.c
57
__is_affected_midr_range(const struct arm64_cpu_capabilities *entry,
arch/arm64/kernel/cpu_errata.c
593
const struct arm64_cpu_capabilities arm64_errata[] = {
arch/arm64/kernel/cpu_errata.c
72
is_affected_midr_range(const struct arm64_cpu_capabilities *entry, int scope)
arch/arm64/kernel/cpu_errata.c
91
is_affected_midr_range_list(const struct arm64_cpu_capabilities *entry,
arch/arm64/kernel/cpu_errata.c
99
is_kryo_midr(const struct arm64_cpu_capabilities *entry, int scope)
arch/arm64/kernel/cpufeature.c
1081
extern const struct arm64_cpu_capabilities arm64_errata[];
arch/arm64/kernel/cpufeature.c
1082
static const struct arm64_cpu_capabilities arm64_features[];
arch/arm64/kernel/cpufeature.c
1085
init_cpucap_indirect_list_from_array(const struct arm64_cpu_capabilities *caps)
arch/arm64/kernel/cpufeature.c
115
static struct arm64_cpu_capabilities const __ro_after_init *cpucap_ptrs[ARM64_NCAPS];
arch/arm64/kernel/cpufeature.c
1591
has_always(const struct arm64_cpu_capabilities *entry, int scope)
arch/arm64/kernel/cpufeature.c
1597
feature_matches(u64 reg, const struct arm64_cpu_capabilities *entry)
arch/arm64/kernel/cpufeature.c
1624
read_scoped_sysreg(const struct arm64_cpu_capabilities *entry, int scope)
arch/arm64/kernel/cpufeature.c
1634
has_user_cpuid_feature(const struct arm64_cpu_capabilities *entry, int scope)
arch/arm64/kernel/cpufeature.c
1654
has_cpuid_feature(const struct arm64_cpu_capabilities *entry, int scope)
arch/arm64/kernel/cpufeature.c
1709
static bool has_32bit_el0(const struct arm64_cpu_capabilities *entry, int scope)
arch/arm64/kernel/cpufeature.c
1720
static bool has_useable_gicv3_cpuif(const struct arm64_cpu_capabilities *entry, int scope)
arch/arm64/kernel/cpufeature.c
1735
static bool has_cache_idc(const struct arm64_cpu_capabilities *entry,
arch/arm64/kernel/cpufeature.c
1748
static void cpu_emulate_effective_ctr(const struct arm64_cpu_capabilities *__unused)
arch/arm64/kernel/cpufeature.c
1760
static bool has_cache_dic(const struct arm64_cpu_capabilities *entry,
arch/arm64/kernel/cpufeature.c
1774
has_useable_cnp(const struct arm64_cpu_capabilities *entry, int scope)
arch/arm64/kernel/cpufeature.c
1793
static bool unmap_kernel_at_el0(const struct arm64_cpu_capabilities *entry,
arch/arm64/kernel/cpufeature.c
1869
static bool has_nv1(const struct arm64_cpu_capabilities *entry, int scope)
arch/arm64/kernel/cpufeature.c
1910
static bool has_lpa2(const struct arm64_cpu_capabilities *entry, int scope)
arch/arm64/kernel/cpufeature.c
1918
static bool has_lpa2(const struct arm64_cpu_capabilities *entry, int scope)
arch/arm64/kernel/cpufeature.c
1925
static bool has_pmuv3(const struct arm64_cpu_capabilities *entry, int scope)
arch/arm64/kernel/cpufeature.c
1946
static void cpu_enable_kpti(struct arm64_cpu_capabilities const *cap)
arch/arm64/kernel/cpufeature.c
1999
static bool cpu_can_use_dbm(const struct arm64_cpu_capabilities *cap)
arch/arm64/kernel/cpufeature.c
2005
static void cpu_enable_hw_dbm(struct arm64_cpu_capabilities const *cap)
arch/arm64/kernel/cpufeature.c
2013
static bool has_hw_dbm(const struct arm64_cpu_capabilities *cap,
arch/arm64/kernel/cpufeature.c
2052
static void cpu_amu_enable(struct arm64_cpu_capabilities const *cap)
arch/arm64/kernel/cpufeature.c
2063
static bool has_amu(const struct arm64_cpu_capabilities *cap,
arch/arm64/kernel/cpufeature.c
2088
static bool runs_at_el2(const struct arm64_cpu_capabilities *entry, int __unused)
arch/arm64/kernel/cpufeature.c
2093
static void cpu_copy_el2regs(const struct arm64_cpu_capabilities *__unused)
arch/arm64/kernel/cpufeature.c
2107
static bool has_nested_virt_support(const struct arm64_cpu_capabilities *cap,
arch/arm64/kernel/cpufeature.c
2121
static bool hvhe_possible(const struct arm64_cpu_capabilities *entry,
arch/arm64/kernel/cpufeature.c
216
static void cpu_enable_cnp(struct arm64_cpu_capabilities const *cap);
arch/arm64/kernel/cpufeature.c
2163
static bool has_bbml2_noabort(const struct arm64_cpu_capabilities *caps, int scope)
arch/arm64/kernel/cpufeature.c
2168
static void cpu_enable_pan(const struct arm64_cpu_capabilities *__unused)
arch/arm64/kernel/cpufeature.c
2181
static void cpu_clear_disr(const struct arm64_cpu_capabilities *__unused)
arch/arm64/kernel/cpufeature.c
2186
static bool has_rasv1p1(const struct arm64_cpu_capabilities *__unused, int scope)
arch/arm64/kernel/cpufeature.c
2188
const struct arm64_cpu_capabilities rasv1p1_caps[] = {
arch/arm64/kernel/cpufeature.c
2207
static bool has_address_auth_cpucap(const struct arm64_cpu_capabilities *entry, int scope)
arch/arm64/kernel/cpufeature.c
2233
static bool has_address_auth_metacap(const struct arm64_cpu_capabilities *entry,
arch/arm64/kernel/cpufeature.c
2243
static bool has_generic_auth(const struct arm64_cpu_capabilities *entry,
arch/arm64/kernel/cpufeature.c
2255
static void cpu_enable_e0pd(struct arm64_cpu_capabilities const *cap)
arch/arm64/kernel/cpufeature.c
2262
static void cpu_enable_ls64(struct arm64_cpu_capabilities const *cap)
arch/arm64/kernel/cpufeature.c
2267
static void cpu_enable_ls64_v(struct arm64_cpu_capabilities const *cap)
arch/arm64/kernel/cpufeature.c
2273
static bool can_use_gic_priorities(const struct arm64_cpu_capabilities *entry,
arch/arm64/kernel/cpufeature.c
2287
static bool has_gic_prio_relaxed_sync(const struct arm64_cpu_capabilities *entry,
arch/arm64/kernel/cpufeature.c
2316
static bool can_trap_icv_dir_el1(const struct arm64_cpu_capabilities *entry,
arch/arm64/kernel/cpufeature.c
2369
static void bti_enable(const struct arm64_cpu_capabilities *__unused)
arch/arm64/kernel/cpufeature.c
2384
static void cpu_enable_mte(struct arm64_cpu_capabilities const *cap)
arch/arm64/kernel/cpufeature.c
2435
static bool is_kvm_protected_mode(const struct arm64_cpu_capabilities *entry, int __unused)
arch/arm64/kernel/cpufeature.c
2441
static void cpu_trap_el0_impdef(const struct arm64_cpu_capabilities *__unused)
arch/arm64/kernel/cpufeature.c
2446
static void cpu_enable_dit(const struct arm64_cpu_capabilities *__unused)
arch/arm64/kernel/cpufeature.c
2451
static void cpu_enable_mops(const struct arm64_cpu_capabilities *__unused)
arch/arm64/kernel/cpufeature.c
2457
static void cpu_enable_poe(const struct arm64_cpu_capabilities *__unused)
arch/arm64/kernel/cpufeature.c
2465
static void cpu_enable_gcs(const struct arm64_cpu_capabilities *__unused)
arch/arm64/kernel/cpufeature.c
2474
cpucap_late_cpu_optional(const struct arm64_cpu_capabilities *cap)
arch/arm64/kernel/cpufeature.c
2480
cpucap_late_cpu_permitted(const struct arm64_cpu_capabilities *cap)
arch/arm64/kernel/cpufeature.c
2486
cpucap_panic_on_conflict(const struct arm64_cpu_capabilities *cap)
arch/arm64/kernel/cpufeature.c
2492
test_has_mpam(const struct arm64_cpu_capabilities *entry, int scope)
arch/arm64/kernel/cpufeature.c
2502
cpu_enable_mpam(const struct arm64_cpu_capabilities *entry)
arch/arm64/kernel/cpufeature.c
2514
test_has_mpam_hcr(const struct arm64_cpu_capabilities *entry, int scope)
arch/arm64/kernel/cpufeature.c
2522
test_has_gicv5_legacy(const struct arm64_cpu_capabilities *entry, int scope)
arch/arm64/kernel/cpufeature.c
2530
static const struct arm64_cpu_capabilities arm64_features[] = {
arch/arm64/kernel/cpufeature.c
2598
.match_list = (const struct arm64_cpu_capabilities []){
arch/arm64/kernel/cpufeature.c
3221
static const struct arm64_cpu_capabilities ptr_auth_hwcap_addr_matches[] = {
arch/arm64/kernel/cpufeature.c
3234
static const struct arm64_cpu_capabilities ptr_auth_hwcap_gen_matches[] = {
arch/arm64/kernel/cpufeature.c
3249
static bool has_sve_feature(const struct arm64_cpu_capabilities *cap, int scope)
arch/arm64/kernel/cpufeature.c
3256
static bool has_sme_feature(const struct arm64_cpu_capabilities *cap, int scope)
arch/arm64/kernel/cpufeature.c
3262
static const struct arm64_cpu_capabilities arm64_elf_hwcaps[] = {
arch/arm64/kernel/cpufeature.c
3395
static bool compat_has_neon(const struct arm64_cpu_capabilities *cap, int scope)
arch/arm64/kernel/cpufeature.c
3416
static const struct arm64_cpu_capabilities compat_elf_hwcaps[] = {
arch/arm64/kernel/cpufeature.c
3440
static void cap_set_elf_hwcap(const struct arm64_cpu_capabilities *cap)
arch/arm64/kernel/cpufeature.c
3461
static bool cpus_have_elf_hwcap(const struct arm64_cpu_capabilities *cap)
arch/arm64/kernel/cpufeature.c
3485
static void setup_elf_hwcaps(const struct arm64_cpu_capabilities *hwcaps)
arch/arm64/kernel/cpufeature.c
3497
const struct arm64_cpu_capabilities *caps;
arch/arm64/kernel/cpufeature.c
3558
const struct arm64_cpu_capabilities *cap = cpucap_ptrs[i];
arch/arm64/kernel/cpufeature.c
3579
const struct arm64_cpu_capabilities *caps;
arch/arm64/kernel/cpufeature.c
3624
const struct arm64_cpu_capabilities *caps;
arch/arm64/kernel/cpufeature.c
3685
__verify_local_elf_hwcaps(const struct arm64_cpu_capabilities *caps)
arch/arm64/kernel/cpufeature.c
3845
const struct arm64_cpu_capabilities *cap = cpucap_ptrs[n];
arch/arm64/kernel/cpufeature.c
3863
const struct arm64_cpu_capabilities *cap = cpucap_ptrs[n];
arch/arm64/kernel/cpufeature.c
3945
const struct arm64_cpu_capabilities *caps = cpucap_ptrs[i];
arch/arm64/kernel/cpufeature.c
4067
static void __maybe_unused cpu_enable_cnp(struct arm64_cpu_capabilities const *cap)
arch/arm64/kernel/fpsimd.c
1091
void cpu_enable_sve(const struct arm64_cpu_capabilities *__always_unused p)
arch/arm64/kernel/fpsimd.c
1196
void cpu_enable_sme(const struct arm64_cpu_capabilities *__always_unused p)
arch/arm64/kernel/fpsimd.c
1214
void cpu_enable_sme2(const struct arm64_cpu_capabilities *__always_unused p)
arch/arm64/kernel/fpsimd.c
1224
void cpu_enable_fa64(const struct arm64_cpu_capabilities *__always_unused p)
arch/arm64/kernel/fpsimd.c
2026
void cpu_enable_fpsimd(const struct arm64_cpu_capabilities *__always_unused p)
arch/arm64/kernel/fpsimd.c
726
void cpu_enable_fpmr(const struct arm64_cpu_capabilities *__always_unused p)
arch/arm64/kernel/proton-pack.c
1025
void spectre_bhb_enable_mitigation(const struct arm64_cpu_capabilities *entry)
arch/arm64/kernel/proton-pack.c
197
bool has_spectre_v2(const struct arm64_cpu_capabilities *entry, int scope)
arch/arm64/kernel/proton-pack.c
300
void spectre_v2_enable_mitigation(const struct arm64_cpu_capabilities *__unused)
arch/arm64/kernel/proton-pack.c
320
bool has_spectre_v3a(const struct arm64_cpu_capabilities *entry, int scope)
arch/arm64/kernel/proton-pack.c
332
void spectre_v3a_enable_mitigation(const struct arm64_cpu_capabilities *__unused)
arch/arm64/kernel/proton-pack.c
501
bool has_spectre_v4(const struct arm64_cpu_capabilities *cap, int scope)
arch/arm64/kernel/proton-pack.c
633
void spectre_v4_enable_mitigation(const struct arm64_cpu_capabilities *__unused)
arch/arm64/kernel/proton-pack.c
973
bool is_spectre_bhb_affected(const struct arm64_cpu_capabilities *entry,