aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHanjun Guo <hanjun.guo@linaro.org>2014-01-17 20:24:59 +0800
committerGraeme Gregory <graeme.gregory@linaro.org>2014-06-03 09:24:01 +0100
commitce5aacc2ba08748923e60a0079c9f4fe09621686 (patch)
treea9c272eb84ee8cc75552d826b441f29cbe697507
parentd7a0d346eb54e637272099b628f3c32665de5237 (diff)
downloadleg-kernel-ce5aacc2ba08748923e60a0079c9f4fe09621686.tar.gz
ARM64 / ACPI: Introduce lowlevel suspend function
Lowlevel suspend function is needed for ACPI based suspend/resume, introduce ARM related lowlevel function in this patch. Signed-off-by: Graeme Gregory <graeme.gregory@linaro.org> Signed-off-by: Hanjun Guo <hanjun.guo@linaro.org>
-rw-r--r--arch/arm64/include/asm/acpi.h4
-rw-r--r--drivers/acpi/plat/arm-core.c7
2 files changed, 11 insertions, 0 deletions
diff --git a/arch/arm64/include/asm/acpi.h b/arch/arm64/include/asm/acpi.h
index 908d71b7e776..e108d9c6f721 100644
--- a/arch/arm64/include/asm/acpi.h
+++ b/arch/arm64/include/asm/acpi.h
@@ -79,6 +79,10 @@ void arch_fix_phys_package_id(int num, u32 slot);
/* temperally define -1 to make acpi core compilerable */
#define cpu_physical_id(cpu) -1
+/* Low-level suspend routine. */
+extern int (*acpi_suspend_lowlevel)(void);
+#define acpi_wakeup_address (0)
+
#else /* !CONFIG_ACPI */
#define acpi_disabled 1 /* ACPI sometimes enabled on ARM */
#define acpi_noirq 1 /* ACPI sometimes enabled on ARM */
diff --git a/drivers/acpi/plat/arm-core.c b/drivers/acpi/plat/arm-core.c
index 162a1ab56523..3c8521d0848e 100644
--- a/drivers/acpi/plat/arm-core.c
+++ b/drivers/acpi/plat/arm-core.c
@@ -207,3 +207,10 @@ static int __init parse_acpi(char *arg)
return 0;
}
early_param("acpi", parse_acpi);
+
+/*
+ * acpi_suspend_lowlevel() - save kernel state and suspend.
+ *
+ * TBD when ARM/ARM64 starts to support suspend...
+ */
+int (*acpi_suspend_lowlevel)(void);