git.openpandora.org
/
pandora-kernel.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs...
[pandora-kernel.git]
/
arch
/
arm
/
plat-samsung
/
pm.c
diff --git
a/arch/arm/plat-samsung/pm.c
b/arch/arm/plat-samsung/pm.c
index
5c0a440
..
ae6f998
100644
(file)
--- a/
arch/arm/plat-samsung/pm.c
+++ b/
arch/arm/plat-samsung/pm.c
@@
-20,6
+20,7
@@
#include <linux/io.h>
#include <asm/cacheflush.h>
#include <linux/io.h>
#include <asm/cacheflush.h>
+#include <asm/suspend.h>
#include <mach/hardware.h>
#include <mach/map.h>
#include <mach/hardware.h>
#include <mach/map.h>
@@
-231,7
+232,7
@@
static void __maybe_unused s3c_pm_show_resume_irqs(int start,
void (*pm_cpu_prep)(void);
void (*pm_cpu_prep)(void);
-
void (*pm_cpu_sleep)(void
);
+
int (*pm_cpu_sleep)(unsigned long
);
#define any_allowed(mask, allow) (((mask) & (allow)) != (allow))
#define any_allowed(mask, allow) (((mask) & (allow)) != (allow))
@@
-268,6
+269,7
@@
static int s3c_pm_enter(suspend_state_t state)
/* save all necessary core registers not covered by the drivers */
s3c_pm_save_gpios();
/* save all necessary core registers not covered by the drivers */
s3c_pm_save_gpios();
+ s3c_pm_saved_gpios();
s3c_pm_save_uarts();
s3c_pm_save_core();
s3c_pm_save_uarts();
s3c_pm_save_core();
@@
-294,21
+296,18
@@
static int s3c_pm_enter(suspend_state_t state)
s3c_pm_arch_stop_clocks();
s3c_pm_arch_stop_clocks();
- /*
s3c_cpu_save
will also act as our return point from when
+ /*
this
will also act as our return point from when
* we resume as it saves its own register state and restores it
* during the resume. */
* we resume as it saves its own register state and restores it
* during the resume. */
- s3c_cpu_save(0, PLAT_PHYS_OFFSET - PAGE_OFFSET);
-
- /* restore the cpu state using the kernel's cpu init code. */
-
- cpu_init();
+ cpu_suspend(0, pm_cpu_sleep);
/* restore the system state */
s3c_pm_restore_core();
s3c_pm_restore_uarts();
s3c_pm_restore_gpios();
/* restore the system state */
s3c_pm_restore_core();
s3c_pm_restore_uarts();
s3c_pm_restore_gpios();
+ s3c_pm_restored_gpios();
s3c_pm_debug_init();
s3c_pm_debug_init();