sh: fix cf support on r2d boards
This patch makes sure cf support is enabled on R2D-PLUS but disabled on R2D-1.
Without this fix R2D-1 boards hang on bootup.
Signed-off-by: Magnus Damm <da...@ig...>
---
arch/sh/boards/renesas/rts7751r2d/setup.c | 9 ++++++++-
include/asm-sh/rts7751r2d.h | 2 +-
2 files changed, 9 insertions(+), 2 deletions(-)
--- 0001/arch/sh/boards/renesas/rts7751r2d/setup.c
+++ work/arch/sh/boards/renesas/rts7751r2d/setup.c 2007-08-02 20:01:13.000000000 +0900
@@ -140,12 +140,19 @@ static struct platform_device sm501_devi
static struct platform_device *rts7751r2d_devices[] __initdata = {
&uart_device,
&heartbeat_device,
- &cf_ide_device,
&sm501_device,
};
static int __init rts7751r2d_devices_setup(void)
{
+ int ret;
+
+ if (ctrl_inw(PA_BVERREG) == 0x10) { /* only working on R2D-PLUS */
+ ret = platform_device_register(&cf_ide_device);
+ if (ret)
+ return ret;
+ }
+
return platform_add_devices(rts7751r2d_devices,
ARRAY_SIZE(rts7751r2d_devices));
}
--- 0001/include/asm-sh/rts7751r2d.h
+++ work/include/asm-sh/rts7751r2d.h 2007-08-02 20:03:48.000000000 +0900
@@ -37,7 +37,7 @@
#define PA_VERREG 0xa4000032 /* FPGA Version Register */
#define PA_INPORT 0xa4000034 /* KEY Input Port control */
#define PA_OUTPORT 0xa4000036 /* LED control */
-#define PA_DMPORT 0xa4000038 /* DM270 Output Port control */
+#define PA_BVERREG 0xa4000038 /* Board Revision Register */
#define PA_AX88796L 0xaa000400 /* AX88796L Area */
#define PA_VOYAGER 0xab000000 /* VOYAGER GX Area */
|