diff options
author | Yoshihiro Shimoda <shimoda.yoshihiro@renesas.com> | 2009-03-10 02:50:44 -0400 |
---|---|---|
committer | Paul Mundt <lethal@linux-sh.org> | 2009-03-10 02:50:44 -0400 |
commit | df4d4f1a47ed6080c7b4010149126bd1013dc3f1 (patch) | |
tree | 4f7174e4b322ad81c0702b3aa2e34030b644e86f /arch/sh/boards | |
parent | 2f47f44790a9c8fc43e515df3c6be19a35ee5de5 (diff) |
sh: sh7785lcr: Updates for fixed PMB.
Add a new defconfig for SH7785LCR in 32-bit mode, and update the power
off code to avoid 29-bit assumptions.
Signed-off-by: Yoshihiro Shimoda <shimoda.yoshihiro@renesas.com>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Diffstat (limited to 'arch/sh/boards')
-rw-r--r-- | arch/sh/boards/Kconfig | 2 | ||||
-rw-r--r-- | arch/sh/boards/board-sh7785lcr.c | 10 |
2 files changed, 10 insertions, 2 deletions
diff --git a/arch/sh/boards/Kconfig b/arch/sh/boards/Kconfig index 694abecf6025..bd3569a99341 100644 --- a/arch/sh/boards/Kconfig +++ b/arch/sh/boards/Kconfig | |||
@@ -155,7 +155,7 @@ config SH_SH7785LCR | |||
155 | 155 | ||
156 | config SH_SH7785LCR_29BIT_PHYSMAPS | 156 | config SH_SH7785LCR_29BIT_PHYSMAPS |
157 | bool "SH7785LCR 29bit physmaps" | 157 | bool "SH7785LCR 29bit physmaps" |
158 | depends on SH_SH7785LCR | 158 | depends on SH_SH7785LCR && 29BIT |
159 | default y | 159 | default y |
160 | help | 160 | help |
161 | This board has 2 physical memory maps. It can be changed with | 161 | This board has 2 physical memory maps. It can be changed with |
diff --git a/arch/sh/boards/board-sh7785lcr.c b/arch/sh/boards/board-sh7785lcr.c index 38a64968d7bf..6746a5fba3a1 100644 --- a/arch/sh/boards/board-sh7785lcr.c +++ b/arch/sh/boards/board-sh7785lcr.c | |||
@@ -275,7 +275,15 @@ void __init init_sh7785lcr_IRQ(void) | |||
275 | 275 | ||
276 | static void sh7785lcr_power_off(void) | 276 | static void sh7785lcr_power_off(void) |
277 | { | 277 | { |
278 | ctrl_outb(0x01, P2SEGADDR(PLD_POFCR)); | 278 | unsigned char *p; |
279 | |||
280 | p = ioremap(PLD_POFCR, PLD_POFCR + 1); | ||
281 | if (!p) { | ||
282 | printk(KERN_ERR "%s: ioremap error.\n", __func__); | ||
283 | return; | ||
284 | } | ||
285 | *p = 0x01; | ||
286 | iounmap(p); | ||
279 | } | 287 | } |
280 | 288 | ||
281 | /* Initialize the board */ | 289 | /* Initialize the board */ |