• Bryan O'Donoghue's avatar
    bl2-el3: Fix exit to bl32 by ensuring a more complete write to SPSR · eb20f04e
    Bryan O'Donoghue authored
    Prior to entry into BL32 we set the SPSR by way of msr spsr, r1.
    This unfortunately only writes the bits f->[31:24] and c->[7:0].
    
    This patch updates the bl2 exit path to write the x->[15:8] and c->[7:0]
    fields of the SPSR. For the purposes of initial setup of the SPSR the x and
    c fields should be sufficient and importantly will capture the necessary
    lower-order control bits that f:c alone do not.
    
    This is important to do to ensure the SPSR is set to the mode the platform
    intends prior to performing an eret.
    
    Fixes: b1d27b48
    
     ("bl2-el3: Add BL2_EL3 image")
    Signed-off-by: default avatarBryan O'Donoghue <bryan.odonoghue@linaro.org>
    eb20f04e
bl2_el3_entrypoint.S 2.22 KB