diff options
author | Jaecheol Lee <jc.lee@samsung.com> | 2011-03-09 23:33:59 -0500 |
---|---|---|
committer | Kukjin Kim <kgene.kim@samsung.com> | 2011-03-11 20:18:24 -0500 |
commit | 1663895cb434b586d022d6414f03316469cf284d (patch) | |
tree | 3dc1c732836c82903973c270576aec2ac7ec4b51 /arch/arm/mach-exynos4/include | |
parent | b77ca655f343bf85578b24b1a3edfbc08336544c (diff) |
ARM: EXYNOS4: Suspend to RAM Support
This patch adds support suspend to ram for EXYNOS4210.
As a note, this includes function of outer cache flush
because it is used before entering PM.
Signed-off-by: Jaecheol Lee <jc.lee@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
Diffstat (limited to 'arch/arm/mach-exynos4/include')
-rw-r--r-- | arch/arm/mach-exynos4/include/mach/pm-core.h | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/arch/arm/mach-exynos4/include/mach/pm-core.h b/arch/arm/mach-exynos4/include/mach/pm-core.h new file mode 100644 index 000000000000..f26e46bc06ca --- /dev/null +++ b/arch/arm/mach-exynos4/include/mach/pm-core.h | |||
@@ -0,0 +1,49 @@ | |||
1 | /* linux/arch/arm/mach-exynos4/include/mach/pm-core.h | ||
2 | * | ||
3 | * Copyright (c) 2011 Samsung Electronics Co., Ltd. | ||
4 | * http://www.samsung.com | ||
5 | * | ||
6 | * Based on arch/arm/mach-s3c2410/include/mach/pm-core.h, | ||
7 | * Copyright 2008 Simtec Electronics | ||
8 | * Ben Dooks <ben@simtec.co.uk> | ||
9 | * http://armlinux.simtec.co.uk/ | ||
10 | * | ||
11 | * EXYNOS4210 - PM core support for arch/arm/plat-s5p/pm.c | ||
12 | * | ||
13 | * This program is free software; you can redistribute it and/or modify | ||
14 | * it under the terms of the GNU General Public License version 2 as | ||
15 | * published by the Free Software Foundation. | ||
16 | */ | ||
17 | #include <mach/regs-pmu.h> | ||
18 | |||
19 | static inline void s3c_pm_debug_init_uart(void) | ||
20 | { | ||
21 | /* nothing here yet */ | ||
22 | } | ||
23 | |||
24 | static inline void s3c_pm_arch_prepare_irqs(void) | ||
25 | { | ||
26 | unsigned int tmp; | ||
27 | tmp = __raw_readl(S5P_WAKEUP_MASK); | ||
28 | tmp &= ~(1 << 31); | ||
29 | __raw_writel(tmp, S5P_WAKEUP_MASK); | ||
30 | |||
31 | __raw_writel(s3c_irqwake_intmask, S5P_WAKEUP_MASK); | ||
32 | __raw_writel(s3c_irqwake_eintmask, S5P_EINT_WAKEUP_MASK); | ||
33 | } | ||
34 | |||
35 | static inline void s3c_pm_arch_stop_clocks(void) | ||
36 | { | ||
37 | /* nothing here yet */ | ||
38 | } | ||
39 | |||
40 | static inline void s3c_pm_arch_show_resume_irqs(void) | ||
41 | { | ||
42 | /* nothing here yet */ | ||
43 | } | ||
44 | |||
45 | static inline void s3c_pm_arch_update_uart(void __iomem *regs, | ||
46 | struct pm_uart_save *save) | ||
47 | { | ||
48 | /* nothing here yet */ | ||
49 | } | ||