diff options
author | Eric Miao <eric.y.miao@gmail.com> | 2011-01-26 05:04:00 +0800 |
---|---|---|
committer | Eric Miao <eric.y.miao@gmail.com> | 2011-02-09 23:05:03 +0800 |
commit | 3d9cb0eafd024d6fc1b1583ff9b17e5f60951fd9 (patch) | |
tree | 54bd0d074df77b0783623e9f705d5285f5e5b4bb /arch/arm/mach-pxa/pm.c | |
parent | 57834a722473848338b1967f7fdd9907c713b0a7 (diff) | |
download | op-kernel-dev-3d9cb0eafd024d6fc1b1583ff9b17e5f60951fd9.zip op-kernel-dev-3d9cb0eafd024d6fc1b1583ff9b17e5f60951fd9.tar.gz |
ARM: pxa: only save/restore registers when pm functions are defined
Reported-and-tested-by: Sven Neumann <s.neumann@raumfeld.com>
Signed-off-by: Eric Miao <eric.y.miao@gmail.com>
Diffstat (limited to 'arch/arm/mach-pxa/pm.c')
-rw-r--r-- | arch/arm/mach-pxa/pm.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/arch/arm/mach-pxa/pm.c b/arch/arm/mach-pxa/pm.c index 978e1b2..1807c9a 100644 --- a/arch/arm/mach-pxa/pm.c +++ b/arch/arm/mach-pxa/pm.c @@ -33,7 +33,7 @@ int pxa_pm_enter(suspend_state_t state) #endif /* skip registers saving for standby */ - if (state != PM_SUSPEND_STANDBY) { + if (state != PM_SUSPEND_STANDBY && pxa_cpu_pm_fns->save) { pxa_cpu_pm_fns->save(sleep_save); /* before sleeping, calculate and save a checksum */ for (i = 0; i < pxa_cpu_pm_fns->save_count - 1; i++) @@ -44,7 +44,7 @@ int pxa_pm_enter(suspend_state_t state) pxa_cpu_pm_fns->enter(state); cpu_init(); - if (state != PM_SUSPEND_STANDBY) { + if (state != PM_SUSPEND_STANDBY && pxa_cpu_pm_fns->restore) { /* after sleeping, validate the checksum */ for (i = 0; i < pxa_cpu_pm_fns->save_count - 1; i++) checksum += sleep_save[i]; |