|
@@ -130,7 +130,7 @@ void __init init_rts7751r2d_IRQ(void)
|
|
{
|
|
{
|
|
struct intc_desc *d;
|
|
struct intc_desc *d;
|
|
|
|
|
|
- switch (ctrl_inw(PA_BVERREG)) {
|
|
|
|
|
|
+ switch (ctrl_inw(PA_VERREG) & 0xf0) {
|
|
#ifdef CONFIG_RTS7751R2D_PLUS
|
|
#ifdef CONFIG_RTS7751R2D_PLUS
|
|
case 0x10:
|
|
case 0x10:
|
|
printk(KERN_INFO "Using R2D-PLUS interrupt controller.\n");
|
|
printk(KERN_INFO "Using R2D-PLUS interrupt controller.\n");
|
|
@@ -139,13 +139,16 @@ void __init init_rts7751r2d_IRQ(void)
|
|
break;
|
|
break;
|
|
#endif
|
|
#endif
|
|
#ifdef CONFIG_RTS7751R2D_1
|
|
#ifdef CONFIG_RTS7751R2D_1
|
|
- case 0x11:
|
|
|
|
|
|
+ case 0x00: /* according to manual */
|
|
|
|
+ case 0x30: /* in reality */
|
|
printk(KERN_INFO "Using R2D-1 interrupt controller.\n");
|
|
printk(KERN_INFO "Using R2D-1 interrupt controller.\n");
|
|
d = &intc_desc_r2d_1;
|
|
d = &intc_desc_r2d_1;
|
|
memcpy(irl2irq, irl2irq_r2d_1, R2D_NR_IRL);
|
|
memcpy(irl2irq, irl2irq_r2d_1, R2D_NR_IRL);
|
|
break;
|
|
break;
|
|
#endif
|
|
#endif
|
|
default:
|
|
default:
|
|
|
|
+ printk(KERN_INFO "Unknown R2D interrupt controller 0x%04x\n",
|
|
|
|
+ ctrl_inw(PA_VERREG));
|
|
return;
|
|
return;
|
|
}
|
|
}
|
|
|
|
|