arm64: detect silicon revisions and set cap bits accordingly
authorAndre Przywara <andre.przywara@arm.com>
Fri, 14 Nov 2014 15:54:09 +0000 (15:54 +0000)
committerWill Deacon <will.deacon@arm.com>
Tue, 25 Nov 2014 13:46:37 +0000 (13:46 +0000)
commite116a375423393cdb94714e90a96857005d58428
tree50279ff49416483b46dfcb5f38f490d8b10af26a
parente039ee4ee3fcf174736f2cb0a2eed6cb908348a6
arm64: detect silicon revisions and set cap bits accordingly

After each CPU has been started, we iterate through a list of
CPU features or bugs to detect CPUs which need (or could benefit
from) kernel code patches.
For each feature/bug there is a function which checks if that
particular CPU is affected. We will later provide some more generic
functions for common things like testing for certain MIDR ranges.
We do this for every CPU to cover big.LITTLE systems properly as
well.
If a certain feature/bug has been detected, the capability bit will
be set, so that later the call to apply_alternatives() will trigger
the actual code patching.

Signed-off-by: Andre Przywara <andre.przywara@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
arch/arm64/include/asm/cpufeature.h
arch/arm64/kernel/Makefile
arch/arm64/kernel/cpu_errata.c [new file with mode: 0644]
arch/arm64/kernel/cpuinfo.c