• Suzuki K. Poulose's avatar
    arm64: Keep track of CPU feature registers · 3c739b57
    Suzuki K. Poulose authored
    This patch adds an infrastructure to keep track of the CPU feature
    registers on the system. For each register, the infrastructure keeps
    track of the system wide safe value of the feature bits. Also, tracks
    the which fields of a register should be matched strictly across all
    the CPUs on the system for the SANITY check infrastructure.
    The feature bits are classified into following 3 types depending on
    the implication of the possible values. This information is used to
    decide the safe value for a feature.
    LOWER_SAFE  - The smaller value is safer
    HIGHER_SAFE - The bigger value is safer
    EXACT       - We can't decide between the two, so a predefined safe_value is used.
    This infrastructure will be later used to make better decisions for:
     - Kernel features (e.g, KVM, Debug)
     - SANITY Check
     - CPU capability
     - ELF HWCAP
     - Exposing CPU Feature register to userspace.
    Signed-off-by: default avatarSuzuki K. Poulose <suzuki.poulose@arm.com>
    Tested-by: default avatarDave Martin <Dave.Martin@arm.com>
    [catalin.marinas@arm.com: whitespace fix]
    Signed-off-by: default avatarCatalin Marinas <catalin.marinas@arm.com>
cpufeature.h 3.81 KB