aboutsummaryrefslogtreecommitdiff
path: root/arch/sh
diff options
context:
space:
mode:
authorPaul Mundt <lethal@linux-sh.org>2006-09-27 11:43:24 +0900
committerPaul Mundt <lethal@linux-sh.org>2006-09-27 11:43:24 +0900
commita56d276c05a80ce727902076a3b4c6247705e2df (patch)
treead4acaf463477f66dd4734c6c7210268114bb29f /arch/sh
parent50e98e72e459e43b6b9a5449e35bb6fc54e21149 (diff)
sh: Make hs7751rvoip/rts7751r2d use pm_power_off.
These were previously sprinkled in machine_power_off(), though missed being updated when the rest of the boards switched over. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Diffstat (limited to 'arch/sh')
-rw-r--r--arch/sh/boards/renesas/hs7751rvoip/setup.c13
-rw-r--r--arch/sh/boards/renesas/rts7751r2d/setup.c7
2 files changed, 16 insertions, 4 deletions
diff --git a/arch/sh/boards/renesas/hs7751rvoip/setup.c b/arch/sh/boards/renesas/hs7751rvoip/setup.c
index 29fb5ff70fb..7ce577822dc 100644
--- a/arch/sh/boards/renesas/hs7751rvoip/setup.c
+++ b/arch/sh/boards/renesas/hs7751rvoip/setup.c
@@ -12,15 +12,14 @@
#include <linux/init.h>
#include <linux/irq.h>
-
+#include <linux/mm.h>
+#include <linux/vmalloc.h>
#include <linux/hdreg.h>
#include <linux/ide.h>
+#include <linux/pm.h>
#include <asm/io.h>
#include <asm/hs7751rvoip/hs7751rvoip.h>
-#include <linux/mm.h>
-#include <linux/vmalloc.h>
-
/* defined in mm/ioremap.c */
extern void * p3_ioremap(unsigned long phys_addr, unsigned long size, unsigned long flags);
@@ -31,6 +30,11 @@ const char *get_system_type(void)
return "HS7751RVoIP";
}
+static void hs7751rvoip_power_off(void)
+{
+ ctrl_outw(ctrl_inw(PA_OUTPORTR) & 0xffdf, PA_OUTPORTR);
+}
+
/*
* Initialize the board
*/
@@ -38,6 +42,7 @@ void __init platform_setup(void)
{
printk(KERN_INFO "Renesas Technology Sales HS7751RVoIP-2 support.\n");
ctrl_outb(0xf0, PA_OUTPORTR);
+ pm_power_off = hs7751rvoip_power_off;
debug_counter = 0;
}
diff --git a/arch/sh/boards/renesas/rts7751r2d/setup.c b/arch/sh/boards/renesas/rts7751r2d/setup.c
index 2587fd1a024..7953dde0b91 100644
--- a/arch/sh/boards/renesas/rts7751r2d/setup.c
+++ b/arch/sh/boards/renesas/rts7751r2d/setup.c
@@ -10,6 +10,7 @@
*/
#include <linux/init.h>
+#include <linux/pm.h>
#include <asm/io.h>
#include <asm/rts7751r2d/rts7751r2d.h>
@@ -20,6 +21,11 @@ const char *get_system_type(void)
return "RTS7751R2D";
}
+static void rts7751r2d_power_off(void)
+{
+ ctrl_outw(0x0001, PA_POWOFF);
+}
+
/*
* Initialize the board
*/
@@ -27,5 +33,6 @@ void __init platform_setup(void)
{
printk(KERN_INFO "Renesas Technology Sales RTS7751R2D support.\n");
ctrl_outw(0x0000, PA_OUTPORT);
+ pm_power_off = rts7751r2d_power_off;
debug_counter = 0;
}