summaryrefslogtreecommitdiff
path: root/arch/sh/boards/mach-se/7724/setup.c
diff options
context:
space:
mode:
authorMagnus Damm <damm@opensource.se>2009-10-29 13:52:23 +0300
committerPaul Mundt <lethal@linux-sh.org>2009-10-30 05:59:26 +0300
commit3b9f2952a3eda738f5f2d7610b76e284cbac581f (patch)
tree23937cebe892efcb3d5d8767c0b5606f61aece4a /arch/sh/boards/mach-se/7724/setup.c
parent67e522d0f91349127b3e0e536578be484cdb3367 (diff)
downloadlinux-3b9f2952a3eda738f5f2d7610b76e284cbac581f.tar.xz
sh: Add ms7724se specific memory pre/post sleep code
Add self-refresh handling code for the MS7724SE board. Signed-off-by: Magnus Damm <damm@opensource.se> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Diffstat (limited to 'arch/sh/boards/mach-se/7724/setup.c')
-rw-r--r--arch/sh/boards/mach-se/7724/setup.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/arch/sh/boards/mach-se/7724/setup.c b/arch/sh/boards/mach-se/7724/setup.c
index ffb97f22783c..ae23fa970e6d 100644
--- a/arch/sh/boards/mach-se/7724/setup.c
+++ b/arch/sh/boards/mach-se/7724/setup.c
@@ -28,6 +28,7 @@
#include <asm/sh_eth.h>
#include <asm/clock.h>
#include <asm/sh_keysc.h>
+#include <asm/suspend.h>
#include <cpu/sh7724.h>
#include <mach-se/mach/se7724.h>
@@ -566,11 +567,22 @@ static void __init sh_eth_init(void)
#define SW41_G 0x4000
#define SW41_H 0x8000
+extern char ms7724se_sdram_enter_start;
+extern char ms7724se_sdram_enter_end;
+extern char ms7724se_sdram_leave_start;
+extern char ms7724se_sdram_leave_end;
+
static int __init devices_setup(void)
{
u16 sw = ctrl_inw(SW4140); /* select camera, monitor */
struct clk *fsia_clk;
+ /* register board specific self-refresh code */
+ sh_mobile_register_self_refresh(SUSP_SH_STANDBY | SUSP_SH_SF,
+ &ms7724se_sdram_enter_start,
+ &ms7724se_sdram_enter_end,
+ &ms7724se_sdram_leave_start,
+ &ms7724se_sdram_leave_end);
/* Reset Release */
ctrl_outw(ctrl_inw(FPGA_OUT) &
~((1 << 1) | /* LAN */