[ARM] 4735/1: Unbreak pxa25x suspend/resume

Suspend/resume on the pxa25x was fairly obviously broken in revision
711be5ccfe.

This patch fixes the damage by adding back the missing code.

Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
Acked-by: Eric Miao <eric.y.miao@gmail.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
This commit is contained in:
Richard Purdie 2008-01-02 00:54:49 +01:00 committed by Russell King
parent b8c9a18712
commit 56b11288cb

View File

@ -178,13 +178,19 @@ static void pxa25x_cpu_pm_save(unsigned long *sleep_save)
SAVE(GAFR1_L); SAVE(GAFR1_U); SAVE(GAFR1_L); SAVE(GAFR1_U);
SAVE(GAFR2_L); SAVE(GAFR2_U); SAVE(GAFR2_L); SAVE(GAFR2_U);
SAVE(ICMR); SAVE(ICMR); ICMR = 0;
SAVE(CKEN); SAVE(CKEN);
SAVE(PSTR); SAVE(PSTR);
/* Clear GPIO transition detect bits */
GEDR0 = GEDR0; GEDR1 = GEDR1; GEDR2 = GEDR2;
} }
static void pxa25x_cpu_pm_restore(unsigned long *sleep_save) static void pxa25x_cpu_pm_restore(unsigned long *sleep_save)
{ {
/* ensure not to come back here if it wasn't intended */
PSPR = 0;
/* restore registers */ /* restore registers */
RESTORE_GPLEVEL(0); RESTORE_GPLEVEL(1); RESTORE_GPLEVEL(2); RESTORE_GPLEVEL(0); RESTORE_GPLEVEL(1); RESTORE_GPLEVEL(2);
RESTORE(GPDR0); RESTORE(GPDR1); RESTORE(GPDR2); RESTORE(GPDR0); RESTORE(GPDR1); RESTORE(GPDR2);
@ -195,7 +201,12 @@ static void pxa25x_cpu_pm_restore(unsigned long *sleep_save)
RESTORE(GFER0); RESTORE(GFER1); RESTORE(GFER2); RESTORE(GFER0); RESTORE(GFER1); RESTORE(GFER2);
RESTORE(PGSR0); RESTORE(PGSR1); RESTORE(PGSR2); RESTORE(PGSR0); RESTORE(PGSR1); RESTORE(PGSR2);
PSSR = PSSR_RDH | PSSR_PH;
RESTORE(CKEN); RESTORE(CKEN);
ICLR = 0;
ICCR = 1;
RESTORE(ICMR); RESTORE(ICMR);
RESTORE(PSTR); RESTORE(PSTR);
} }