• Mark Rutland's avatar
    arm64: add PSR_AA32_* definitions · 25086263
    Mark Rutland authored
    The AArch32 CPSR/SPSR format is *almost* identical to the AArch64
    SPSR_ELx format for exceptions taken from AArch32, but the two have
    diverged with the addition of DIT, and we need to treat the two as
    logically distinct.
    
    This patch adds new definitions for the SPSR_ELx format for exceptions
    taken from AArch32, with a consistent PSR_AA32_ prefix. The existing
    COMPAT_PSR_ definitions will be used for the PSR format as seen from
    AArch32.
    
    Definitions of DIT are provided for both, and inline functions are
    provided to map between the two formats. Note that for SPSR_ELx, the
    (RES0) J bit has been re-allocated as the DIT bit.
    
    Once users of the COMPAT_PSR definitions have been migrated over to the
    PSR_AA32 definitions, the (majority of) the former will be removed, so
    no efforts is made to avoid duplication until then.
    Signed-off-by: default avatarMark Rutland <mark.rutland@arm.com>
    Cc: Catalin Marinas <catalin.marinas@arm.com>
    Cc: Christoffer Dall <christoffer.dall@arm.com>
    Cc: Marc Zyngier <marc.zyngier@arm.com>
    Cc: Suzuki Poulose <suzuki.poulose@arm.com>
    Cc: Will Deacon <will.deacon@arm.com>
    Signed-off-by: default avatarWill Deacon <will.deacon@arm.com>
    25086263
ptrace.h 8.96 KB