1 /* SPDX-License-Identifier: GPL-2.0-only */
3 * Copyright (C) 2014 ARM Ltd.
9 #include <linux/init.h>
10 #include <linux/percpu.h>
13 * Records attributes of an individual CPU.
15 struct cpuinfo_32bit {
40 struct cpuinfo_arm64 {
63 struct cpuinfo_32bit aarch32;
65 /* pseudo-ZCR for recording maximum ZCR_EL1 LEN value: */
68 /* pseudo-SMCR for recording maximum SMCR_EL1 LEN value: */
72 DECLARE_PER_CPU(struct cpuinfo_arm64, cpu_data);
74 void cpuinfo_store_cpu(void);
75 void __init cpuinfo_store_boot_cpu(void);
77 void __init init_cpu_features(struct cpuinfo_arm64 *info);
78 void update_cpu_features(int cpu, struct cpuinfo_arm64 *info,
79 struct cpuinfo_arm64 *boot);
81 #endif /* __ASM_CPU_H */