ARM: 8284/1: sa1100: clear RCSR_SMR on resume
authorDmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Thu, 15 Jan 2015 02:06:22 +0000 (03:06 +0100)
committerBen Hutchings <ben@decadent.org.uk>
Sat, 9 May 2015 22:16:13 +0000 (23:16 +0100)
commit e461894dc2ce7778ccde1c3483c9b15a85a7fc5f upstream.

StrongARM core uses RCSR SMR bit to tell to bootloader that it was reset
by entering the sleep mode. After we have resumed, there is little point
in having that bit enabled. Moreover, if this bit is set before reboot,
the bootloader can become confused. Thus clear the SMR bit on resume
just before clearing the scratchpad (resume address) register.

Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
arch/arm/mach-sa1100/pm.c

index bf85b8b..66c4845 100644 (file)
@@ -81,6 +81,7 @@ static int sa11x0_pm_enter(suspend_state_t state)
        /*
         * Ensure not to come back here if it wasn't intended
         */
+       RCSR = RCSR_SMR;
        PSPR = 0;
 
        /*