aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-s3c24xx
diff options
context:
space:
mode:
authorHeiko Stuebner <heiko@sntech.de>2014-02-24 19:50:43 -0500
committerKukjin Kim <kgene.kim@samsung.com>2014-04-14 13:11:36 -0400
commit42637c59f36198a58069f94676007c62477321b7 (patch)
treefcfe40e8b0dc0eac161e1be3d4021f3d9280222c /arch/arm/mach-s3c24xx
parentdfc0f5099a83f8633fc4480e2f0e8e5f6ac1331d (diff)
ARM: S3C24XX: only store clock registers when old clock code is active
The Samsung ccf driver already handles the save and restore of the clock registers on suspend and resume. The architecture code should not duplicate this when the ccf is active. Signed-off-by: Heiko Stuebner <heiko@sntech.de> Reviewed-by: Tomasz Figa <t.figa@samsung.com> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
Diffstat (limited to 'arch/arm/mach-s3c24xx')
-rw-r--r--arch/arm/mach-s3c24xx/pm.c13
1 files changed, 10 insertions, 3 deletions
diff --git a/arch/arm/mach-s3c24xx/pm.c b/arch/arm/mach-s3c24xx/pm.c
index 68ea5b7e5dc7..16281bdc750a 100644
--- a/arch/arm/mach-s3c24xx/pm.c
+++ b/arch/arm/mach-s3c24xx/pm.c
@@ -51,9 +51,6 @@
51#define PFX "s3c24xx-pm: " 51#define PFX "s3c24xx-pm: "
52 52
53static struct sleep_save core_save[] = { 53static struct sleep_save core_save[] = {
54 SAVE_ITEM(S3C2410_LOCKTIME),
55 SAVE_ITEM(S3C2410_CLKCON),
56
57 /* we restore the timings here, with the proviso that the board 54 /* we restore the timings here, with the proviso that the board
58 * brings the system up in an slower, or equal frequency setting 55 * brings the system up in an slower, or equal frequency setting
59 * to the original system. 56 * to the original system.
@@ -70,6 +67,9 @@ static struct sleep_save core_save[] = {
70 SAVE_ITEM(S3C2410_BANKCON4), 67 SAVE_ITEM(S3C2410_BANKCON4),
71 SAVE_ITEM(S3C2410_BANKCON5), 68 SAVE_ITEM(S3C2410_BANKCON5),
72 69
70#ifdef CONFIG_SAMSUNG_CLOCK
71 SAVE_ITEM(S3C2410_LOCKTIME),
72 SAVE_ITEM(S3C2410_CLKCON),
73#ifndef CONFIG_CPU_FREQ 73#ifndef CONFIG_CPU_FREQ
74 SAVE_ITEM(S3C2410_CLKDIVN), 74 SAVE_ITEM(S3C2410_CLKDIVN),
75 SAVE_ITEM(S3C2410_MPLLCON), 75 SAVE_ITEM(S3C2410_MPLLCON),
@@ -77,11 +77,14 @@ static struct sleep_save core_save[] = {
77#endif 77#endif
78 SAVE_ITEM(S3C2410_UPLLCON), 78 SAVE_ITEM(S3C2410_UPLLCON),
79 SAVE_ITEM(S3C2410_CLKSLOW), 79 SAVE_ITEM(S3C2410_CLKSLOW),
80#endif /* CONFIG_SAMSUNG_CLOCK */
80}; 81};
81 82
83#ifdef CONFIG_SAMSUNG_CLOCK
82static struct sleep_save misc_save[] = { 84static struct sleep_save misc_save[] = {
83 SAVE_ITEM(S3C2410_DCLKCON), 85 SAVE_ITEM(S3C2410_DCLKCON),
84}; 86};
87#endif
85 88
86/* s3c_pm_check_resume_pin 89/* s3c_pm_check_resume_pin
87 * 90 *
@@ -140,12 +143,16 @@ void s3c_pm_configure_extint(void)
140void s3c_pm_restore_core(void) 143void s3c_pm_restore_core(void)
141{ 144{
142 s3c_pm_do_restore_core(core_save, ARRAY_SIZE(core_save)); 145 s3c_pm_do_restore_core(core_save, ARRAY_SIZE(core_save));
146#ifdef CONFIG_SAMSUNG_CLOCK
143 s3c_pm_do_restore(misc_save, ARRAY_SIZE(misc_save)); 147 s3c_pm_do_restore(misc_save, ARRAY_SIZE(misc_save));
148#endif
144} 149}
145 150
146void s3c_pm_save_core(void) 151void s3c_pm_save_core(void)
147{ 152{
153#ifdef CONFIG_SAMSUNG_CLOCK
148 s3c_pm_do_save(misc_save, ARRAY_SIZE(misc_save)); 154 s3c_pm_do_save(misc_save, ARRAY_SIZE(misc_save));
155#endif
149 s3c_pm_do_save(core_save, ARRAY_SIZE(core_save)); 156 s3c_pm_do_save(core_save, ARRAY_SIZE(core_save));
150} 157}
151 158