• Ard Biesheuvel's avatar
    efi/arm: set HSCTLR Thumb2 bit correctly for HVC calls from HYP · fbc81ec5
    Ard Biesheuvel authored
    Commit
    
      db227c19 ("ARM: 8985/1: efi/decompressor: deal with HYP mode boot gracefully")
    
    updated the EFI entry code to permit firmware to invoke the EFI stub
    loader in HYP mode, with the MMU either enabled or disabled, neither
    of which is permitted by the EFI spec, but which does happen in the
    field.
    
    In the MMU on case, we remain in HYP mode as configured by the firmware,
    and rely on the fact that any HVC instruction issued in this mode will
    be dispatched via the SVC slot in the HYP vector table. However, this
    slot will point to a Thumb2 symbol if the kernel is built in Thumb2
    mode, and so we have to configure HSCTLR to ensure that the exception
    handlers are invoked in Thumb2 mode as well.
    
    Fixes: db227c19 ("ARM: 8985/1: efi/decompressor: deal with HYP mode boot gracefully")
    Signed-off-by: default avatarArd Biesheuvel <ardb@kernel.org>
    fbc81ec5
head.S 37.8 KB