sh: fix r2d board detection
This patch fixes the R2D-PLUS and R2D-1 board detection code. Tested on two
R2D-PLUS and two R2D-1 boards.
Signed-off-by: Magnus Damm <da...@ig...>
---
arch/sh/boards/renesas/rts7751r2d/irq.c | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)
--- 0001/arch/sh/boards/renesas/rts7751r2d/irq.c
+++ work/arch/sh/boards/renesas/rts7751r2d/irq.c 2007-10-10 10:57:57.000000000 +0900
@@ -130,7 +130,7 @@ void __init init_rts7751r2d_IRQ(void)
{
struct intc_desc *d;
- switch (ctrl_inw(PA_BVERREG)) {
+ switch (ctrl_inw(PA_VERREG) & 0xf0) {
#ifdef CONFIG_RTS7751R2D_PLUS
case 0x10:
printk(KERN_INFO "Using R2D-PLUS interrupt controller.\n");
@@ -139,13 +139,16 @@ void __init init_rts7751r2d_IRQ(void)
break;
#endif
#ifdef CONFIG_RTS7751R2D_1
- case 0x11:
+ case 0x00: /* according to manual */
+ case 0x30: /* in reality */
printk(KERN_INFO "Using R2D-1 interrupt controller.\n");
d = &intc_desc_r2d_1;
memcpy(irl2irq, irl2irq_r2d_1, R2D_NR_IRL);
break;
#endif
default:
+ printk(KERN_INFO "Unknown R2D interrupt controller 0x%04x\n",
+ ctrl_inw(PA_VERREG));
return;
}
|