diff options
| author | Michal Meloun <mmel@FreeBSD.org> | 2018-01-27 11:19:41 +0000 |
|---|---|---|
| committer | Michal Meloun <mmel@FreeBSD.org> | 2018-01-27 11:19:41 +0000 |
| commit | a36b6ec0f960b50337107e0d7555dc430e6aa08b (patch) | |
| tree | 70f204d79572aad0e89e332da27f991884c51aa9 /sys/arm/include | |
| parent | 116a5567dd73cc9d20e84855b6d2dd02522d4ef1 (diff) | |
Notes
Diffstat (limited to 'sys/arm/include')
| -rw-r--r-- | sys/arm/include/cpuinfo.h | 2 | ||||
| -rw-r--r-- | sys/arm/include/pcpu.h | 8 |
2 files changed, 9 insertions, 1 deletions
diff --git a/sys/arm/include/cpuinfo.h b/sys/arm/include/cpuinfo.h index 943391ada4d2..35c496db43f8 100644 --- a/sys/arm/include/cpuinfo.h +++ b/sys/arm/include/cpuinfo.h @@ -49,6 +49,7 @@ #define CPU_ARCH_CORTEX_A57 0xD07 #define CPU_ARCH_CORTEX_A72 0xD08 #define CPU_ARCH_CORTEX_A73 0xD09 +#define CPU_ARCH_CORTEX_A75 0xD0A /* QCOM */ @@ -125,6 +126,7 @@ extern struct cpuinfo cpuinfo; void cpuinfo_init(void); #if __ARM_ARCH >= 6 +void cpuinfo_init_bp_hardening(void); void cpuinfo_reinit_mmu(uint32_t ttb); #endif #endif /* _MACHINE_CPUINFO_H_ */ diff --git a/sys/arm/include/pcpu.h b/sys/arm/include/pcpu.h index d72741a84d9c..ea2ba540339c 100644 --- a/sys/arm/include/pcpu.h +++ b/sys/arm/include/pcpu.h @@ -44,6 +44,10 @@ struct vmspace; #endif /* _KERNEL */ #if __ARM_ARCH >= 6 +/* Branch predictor hardening method */ +#define PCPU_BP_HARDEN_KIND_NONE 0 +#define PCPU_BP_HARDEN_KIND_BPIALL 1 +#define PCPU_BP_HARDEN_KIND_ICIALLU 2 #define PCPU_MD_FIELDS \ unsigned int pc_vfpsid; \ @@ -59,7 +63,9 @@ struct vmspace; void *pc_qmap_pte2p; \ unsigned int pc_dbreg[32]; \ int pc_dbreg_cmd; \ - char __pad[155] + int pc_bp_harden_kind; \ + uint32_t pc_original_actlr; \ + char __pad[147] #else #define PCPU_MD_FIELDS \ char __pad[93] |
