diff options
author | Magnus Damm <damm@opensource.se> | 2009-10-29 11:52:23 +0100 |
---|---|---|
committer | Paul Mundt <lethal@linux-sh.org> | 2009-10-30 03:59:26 +0100 |
commit | 3b9f2952a3eda738f5f2d7610b76e284cbac581f (patch) | |
tree | 23937cebe892efcb3d5d8767c0b5606f61aece4a /arch/sh/boards/mach-se/7724/sdram.S | |
parent | sh: Add kfr2r09 specific memory pre/post sleep code (diff) | |
download | linux-3b9f2952a3eda738f5f2d7610b76e284cbac581f.tar.xz linux-3b9f2952a3eda738f5f2d7610b76e284cbac581f.zip |
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/sdram.S')
-rw-r--r-- | arch/sh/boards/mach-se/7724/sdram.S | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/arch/sh/boards/mach-se/7724/sdram.S b/arch/sh/boards/mach-se/7724/sdram.S new file mode 100644 index 000000000000..9040167d5022 --- /dev/null +++ b/arch/sh/boards/mach-se/7724/sdram.S @@ -0,0 +1,52 @@ +/* + * MS7724SE sdram self/auto-refresh setup code + * + * Copyright (C) 2009 Magnus Damm + * + * This file is subject to the terms and conditions of the GNU General Public + * License. See the file "COPYING" in the main directory of this archive + * for more details. + */ + +#include <linux/sys.h> +#include <linux/errno.h> +#include <linux/linkage.h> +#include <asm/asm-offsets.h> +#include <asm/suspend.h> +#include <asm/romimage-macros.h> + +/* code to enter and leave self-refresh. must be self-contained. + * this code will be copied to on-chip memory and executed from there. + */ + .balign 4 +ENTRY(ms7724se_sdram_enter_start) + + /* DBSC: put memory in self-refresh mode */ + + ED 0xFD000010, 0x00000000 /* DBEN */ + ED 0xFD000040, 0x00000000 /* DBRFPDN0 */ + ED 0xFD000014, 0x00000002 /* DBCMDCNT (PALL) */ + ED 0xFD000014, 0x00000004 /* DBCMDCNT (REF) */ + ED 0xFD000040, 0x00000001 /* DBRFPDN0 */ + + rts + nop + +ENTRY(ms7724se_sdram_enter_end) + + .balign 4 +ENTRY(ms7724se_sdram_leave_start) + + /* DBSC: put memory in auto-refresh mode */ + + ED 0xFD000040, 0x00000000 /* DBRFPDN0 */ + WAIT 1 + ED 0xFD000014, 0x00000002 /* DBCMDCNT (PALL) */ + ED 0xFD000014, 0x00000004 /* DBCMDCNT (REF) */ + ED 0xFD000010, 0x00000001 /* DBEN */ + ED 0xFD000040, 0x00010000 /* DBRFPDN0 */ + + rts + nop + +ENTRY(ms7724se_sdram_leave_end) |