Expose the complete set of ID registers as defined in the current version
authorkettenis <kettenis@openbsd.org>
Thu, 24 Nov 2022 14:43:16 +0000 (14:43 +0000)
committerkettenis <kettenis@openbsd.org>
Thu, 24 Nov 2022 14:43:16 +0000 (14:43 +0000)
commitc7654cd65262d532212f65123ee3905ba200365c
tree5cd6e4baae83fc500f017579ea016c70d3e4cdd0
parent815de89159632f4ea5a412e9f124b73bae6dfb97
Expose the complete set of ID registers as defined in the current version
of ARMv8/ARMv9.  Make sure we only expose the features that we know about
and support in our kernel.  This matches what Linux does.  For now, mostly
restrict ourselves to features defined in ARMv8.5 which means that we only
actually implement support for ID_AA64ISAR0_EL1, ID_AA64ISAR1_EL1,
ID_AA64PFR0_EL1 and ID_AA64PFR1_EL1.  For the other registers we simply
always return 0.

ok deraadt@
sys/arch/arm64/arm64/cpu.c
sys/arch/arm64/arm64/machdep.c
sys/arch/arm64/include/cpu.h