aboutsummaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorPaul Mundt <lethal@linux-sh.org>2006-09-26 22:43:24 -0400
committerPaul Mundt <lethal@linux-sh.org>2006-09-26 22:43:24 -0400
commita56d276c05a80ce727902076a3b4c6247705e2df (patch)
treead4acaf463477f66dd4734c6c7210268114bb29f /arch
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')
-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 29fb5ff70fb5..7ce577822dc0 100644
--- a/arch/sh/boards/renesas/hs7751rvoip/setup.c
+++ b/arch/sh/boards/renesas/hs7751rvoip/setup.c
@@ -12,15 +12,14 @@
12 12
13#include <linux/init.h> 13#include <linux/init.h>
14#include <linux/irq.h> 14#include <linux/irq.h>
15 15#include <linux/mm.h>
16#include <linux/vmalloc.h>
16#include <linux/hdreg.h> 17#include <linux/hdreg.h>
17#include <linux/ide.h> 18#include <linux/ide.h>
19#include <linux/pm.h>
18#include <asm/io.h> 20#include <asm/io.h>
19#include <asm/hs7751rvoip/hs7751rvoip.h> 21#include <asm/hs7751rvoip/hs7751rvoip.h>
20 22
21#include <linux/mm.h>
22#include <linux/vmalloc.h>
23
24/* defined in mm/ioremap.c */ 23/* defined in mm/ioremap.c */
25extern void * p3_ioremap(unsigned long phys_addr, unsigned long size, unsigned long flags); 24extern void * p3_ioremap(unsigned long phys_addr, unsigned long size, unsigned long flags);
26 25
@@ -31,6 +30,11 @@ const char *get_system_type(void)
31 return "HS7751RVoIP"; 30 return "HS7751RVoIP";
32} 31}
33 32
33static void hs7751rvoip_power_off(void)
34{
35 ctrl_outw(ctrl_inw(PA_OUTPORTR) & 0xffdf, PA_OUTPORTR);
36}
37
34/* 38/*
35 * Initialize the board 39 * Initialize the board
36 */ 40 */
@@ -38,6 +42,7 @@ void __init platform_setup(void)
38{ 42{
39 printk(KERN_INFO "Renesas Technology Sales HS7751RVoIP-2 support.\n"); 43 printk(KERN_INFO "Renesas Technology Sales HS7751RVoIP-2 support.\n");
40 ctrl_outb(0xf0, PA_OUTPORTR); 44 ctrl_outb(0xf0, PA_OUTPORTR);
45 pm_power_off = hs7751rvoip_power_off;
41 debug_counter = 0; 46 debug_counter = 0;
42} 47}
43 48
diff --git a/arch/sh/boards/renesas/rts7751r2d/setup.c b/arch/sh/boards/renesas/rts7751r2d/setup.c
index 2587fd1a0240..7953dde0b91c 100644
--- a/arch/sh/boards/renesas/rts7751r2d/setup.c
+++ b/arch/sh/boards/renesas/rts7751r2d/setup.c
@@ -10,6 +10,7 @@
10 */ 10 */
11 11
12#include <linux/init.h> 12#include <linux/init.h>
13#include <linux/pm.h>
13#include <asm/io.h> 14#include <asm/io.h>
14#include <asm/rts7751r2d/rts7751r2d.h> 15#include <asm/rts7751r2d/rts7751r2d.h>
15 16
@@ -20,6 +21,11 @@ const char *get_system_type(void)
20 return "RTS7751R2D"; 21 return "RTS7751R2D";
21} 22}
22 23
24static void rts7751r2d_power_off(void)
25{
26 ctrl_outw(0x0001, PA_POWOFF);
27}
28
23/* 29/*
24 * Initialize the board 30 * Initialize the board
25 */ 31 */
@@ -27,5 +33,6 @@ void __init platform_setup(void)
27{ 33{
28 printk(KERN_INFO "Renesas Technology Sales RTS7751R2D support.\n"); 34 printk(KERN_INFO "Renesas Technology Sales RTS7751R2D support.\n");
29 ctrl_outw(0x0000, PA_OUTPORT); 35 ctrl_outw(0x0000, PA_OUTPORT);
36 pm_power_off = rts7751r2d_power_off;
30 debug_counter = 0; 37 debug_counter = 0;
31} 38}