summaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-h720x/common.c
diff options
context:
space:
mode:
authorArnd Bergmann <arnd@arndb.de>2012-03-21 15:27:34 +0100
committerArnd Bergmann <arnd@arndb.de>2012-03-21 15:27:34 +0100
commit2cbe23e3a432e3d09a849adb197c8fcc09e7391d (patch)
tree711fe5845c4c7e7eaf8c57a597d86c0f9dda5b06 /arch/arm/mach-h720x/common.c
parentMerge branch 'renesas/timer' into next/timer (diff)
parentMerge branch 'for-3.4/cleanup-and-fixes' of git://git.kernel.org/pub/scm/linu... (diff)
downloadlinux-2cbe23e3a432e3d09a849adb197c8fcc09e7391d.tar.xz
linux-2cbe23e3a432e3d09a849adb197c8fcc09e7391d.zip
Merge branch 'tegra/cleanups' into next/timer
Conflicts: arch/arm/mach-tegra/Makefile arch/arm/mach-vexpress/core.h The tegra Makefile was changed in four different branches in the same line. This merge should reduce the amount of churn. Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Diffstat (limited to 'arch/arm/mach-h720x/common.c')
-rw-r--r--arch/arm/mach-h720x/common.c18
1 files changed, 18 insertions, 0 deletions
diff --git a/arch/arm/mach-h720x/common.c b/arch/arm/mach-h720x/common.c
index f8a2f6bb5483..e756d1ac00c2 100644
--- a/arch/arm/mach-h720x/common.c
+++ b/arch/arm/mach-h720x/common.c
@@ -247,3 +247,21 @@ void h720x_restart(char mode, const char *cmd)
{
CPU_REG (PMU_BASE, PMU_STAT) |= PMU_WARMRESET;
}
+
+static void h720x__idle(void)
+{
+ CPU_REG (PMU_BASE, PMU_MODE) = PMU_MODE_IDLE;
+ nop();
+ nop();
+ CPU_REG (PMU_BASE, PMU_MODE) = PMU_MODE_RUN;
+ nop();
+ nop();
+}
+
+static int __init h720x_idle_init(void)
+{
+ arm_pm_idle = h720x__idle;
+ return 0;
+}
+
+arch_initcall(h720x_idle_init);