X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=blobdiff_plain;f=ArmPlatformPkg%2FSec%2FArm%2FHelper.S;h=ac40102218752fab4ab78f46610596659b3b7e22;hp=2e2801fe85f2ce4ffb328b55ef4fad6a53f1b8d7;hb=91c38d4e94c1461f5824b83d3722fe46626aa0d3;hpb=5c670b2119f85bebacd0b1f5c1c84a831ffd5352 diff --git a/ArmPlatformPkg/Sec/Arm/Helper.S b/ArmPlatformPkg/Sec/Arm/Helper.S index 2e2801fe85..ac40102218 100644 --- a/ArmPlatformPkg/Sec/Arm/Helper.S +++ b/ArmPlatformPkg/Sec/Arm/Helper.S @@ -72,10 +72,10 @@ ASM_PFX(copy_cpsr_into_spsr): # Set the Non Secure Mode ASM_PFX(set_non_secure_mode): push { r1 } - and r0, r0, #0x1f @ Keep only the mode bits + and r0, r0, #0x1f @ Keep only the mode bits mrs r1, spsr @ Read the spsr bic r1, r1, #0x1f @ Clear all mode bits - orr r1, r1, r0 + orr r1, r1, r0 msr spsr_cxsf, r1 @ write back spsr (may have caused a mode switch) isb pop { r1 }