aboutsummaryrefslogtreecommitdiffstats
path: root/arch/sh
diff options
context:
space:
mode:
authorMatt Fleming <matt@console-pimps.org>2009-11-05 08:01:10 +0000
committerMatt Fleming <matt@console-pimps.org>2010-01-16 14:31:44 +0000
commit6f82b6ebb1dcc0c3c23820a70a5d79a60c4f5e84 (patch)
treefa12777307f9153742d445bdd7c2305b24ae8ab2 /arch/sh
parentsh: Add fixed ioremap support (diff)
downloadlinux-dev-6f82b6ebb1dcc0c3c23820a70a5d79a60c4f5e84.tar.xz
linux-dev-6f82b6ebb1dcc0c3c23820a70a5d79a60c4f5e84.zip
sh: Use ioremap_fixmed to map the SM501 DRAM config register
We need to write to the DRAM config register very early and at such an early stage ioremap() is not available. So use ioremap_fixed() to map the register. The reason that we are avoiding using the legacy P2 mapping is that there will come a day when the legacy P2 mappings no longer exist. Signed-off-by: Matt Fleming <matt@console-pimps.org>
Diffstat (limited to 'arch/sh')
-rw-r--r--arch/sh/boards/board-sh7785lcr.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/arch/sh/boards/board-sh7785lcr.c b/arch/sh/boards/board-sh7785lcr.c
index 7eea90db6cea..511de38d2046 100644
--- a/arch/sh/boards/board-sh7785lcr.c
+++ b/arch/sh/boards/board-sh7785lcr.c
@@ -332,8 +332,15 @@ static void __init sh7785lcr_setup(char **cmdline_p)
pm_power_off = sh7785lcr_power_off;
/* sm501 DRAM configuration */
- sm501_reg = (void __iomem *)0xb3e00000 + SM501_DRAM_CONTROL;
- writel(0x000307c2, sm501_reg);
+ sm501_reg = ioremap_fixed(SM107_REG_ADDR, SM501_DRAM_CONTROL,
+ PAGE_KERNEL);
+ if (!sm501_reg) {
+ printk(KERN_ERR "%s: ioremap error.\n", __func__);
+ return;
+ }
+
+ writel(0x000307c2, sm501_reg + SM501_DRAM_CONTROL);
+ iounmap_fixed(sm501_reg);
}
/* Return the board specific boot mode pin configuration */