summaryrefslogtreecommitdiff
path: root/arch/arm/mach-s3c24xx/pm-s3c2412.c
diff options
context:
space:
mode:
authorHeiko Stuebner <heiko@sntech.de>2013-02-12 22:09:10 +0400
committerKukjin Kim <kgene.kim@samsung.com>2013-03-05 15:20:59 +0400
commit592957085e3763b9339a6a281f1aeb1247cdd245 (patch)
treeebecf19830b1dddb590fa2923c9a8cec8788b6d9 /arch/arm/mach-s3c24xx/pm-s3c2412.c
parentf0301673ff7ad8aae45c4a95613771d34b1cf052 (diff)
downloadlinux-592957085e3763b9339a6a281f1aeb1247cdd245.tar.xz
ARM: S3C24XX: use samsung_sync_wakemask in s3c2412 pm
Originally the s3c2412 used a overidden irq chip to set the rtc wakeup flag. But with using the samsung_sync_wakemask function the same can be achieved without introducing soc specific irq functions. Signed-off-by: Heiko Stuebner <heiko@sntech.de> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
Diffstat (limited to 'arch/arm/mach-s3c24xx/pm-s3c2412.c')
-rw-r--r--arch/arm/mach-s3c24xx/pm-s3c2412.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/arch/arm/mach-s3c24xx/pm-s3c2412.c b/arch/arm/mach-s3c24xx/pm-s3c2412.c
index 4c4bc1c83b77..d75f95e487ee 100644
--- a/arch/arm/mach-s3c24xx/pm-s3c2412.c
+++ b/arch/arm/mach-s3c24xx/pm-s3c2412.c
@@ -29,6 +29,7 @@
#include <plat/cpu.h>
#include <plat/pm.h>
+#include <plat/wakeup-mask.h>
#include "regs-dsc.h"
#include "s3c2412-power.h"
@@ -51,8 +52,15 @@ static int s3c2412_cpu_suspend(unsigned long arg)
return 1; /* Aborting suspend */
}
+/* mapping of interrupts to parts of the wakeup mask */
+static struct samsung_wakeup_mask wake_irqs[] = {
+ { .irq = IRQ_RTC, .bit = S3C2412_PWRCFG_RTC_MASKIRQ, },
+};
+
static void s3c2412_pm_prepare(void)
{
+ samsung_sync_wakemask(S3C2412_PWRCFG,
+ wake_irqs, ARRAY_SIZE(wake_irqs));
}
static int s3c2412_pm_add(struct device *dev, struct subsys_interface *sif)