James Morse 237405ebef arm64: cpufeature: Force HWCAP to be based on the sysreg visible to user-space
arm64 advertises hardware features to user-space via HWCAPs, and by
emulating access to the CPUs id registers. The cpufeature code has a
sanitised system-wide view of an id register, and a sanitised user-space
view of an id register, where some features use their 'safe' value
instead of the hardware value.

It is currently possible for a HWCAP to be advertised where the user-space
view of the id register does not show the feature as supported.
Erratum workaround need to remove both the HWCAP, and the feature from
the user-space view of the id register. This involves duplicating the
code, and spreading it over cpufeature.c and cpu_errata.c.

Make the HWCAP code use the user-space view of id registers. This ensures
the values never diverge, and allows erratum workaround to remove HWCAP
by modifying the user-space view of the id register.

Signed-off-by: James Morse <james.morse@arm.com>
Reviewed-by: Suzuki K Poulose <suzuki.poulose@arm.com>
Link: https://lore.kernel.org/r/20220909165938.3931307-2-james.morse@arm.com
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
2022-09-16 15:16:34 +01:00
..
2022-07-01 12:07:43 +01:00
2022-06-27 12:22:31 +01:00
2021-10-01 13:31:00 +01:00
2021-08-04 16:54:36 +00:00
2022-08-23 10:53:34 +01:00
2022-07-20 16:08:10 +01:00
2020-09-07 15:00:52 +01:00
2021-03-24 20:19:30 +00:00
2022-04-04 10:32:50 +01:00
2022-01-12 16:26:58 -08:00
2022-07-20 16:08:10 +01:00