|
@@ -109,7 +109,8 @@ void __init ams_delta_init_fiq(void)
|
|
|
* Since no set_type() method is provided by OMAP irq chip,
|
|
|
* switch to edge triggered interrupt type manually.
|
|
|
*/
|
|
|
- offset = IRQ_ILR0_REG_OFFSET + INT_DEFERRED_FIQ * 0x4;
|
|
|
+ offset = IRQ_ILR0_REG_OFFSET +
|
|
|
+ ((INT_DEFERRED_FIQ - NR_IRQS_LEGACY) & 0x1f) * 0x4;
|
|
|
val = omap_readl(DEFERRED_FIQ_IH_BASE + offset) & ~(1 << 1);
|
|
|
omap_writel(val, DEFERRED_FIQ_IH_BASE + offset);
|
|
|
|
|
@@ -149,7 +150,7 @@ void __init ams_delta_init_fiq(void)
|
|
|
/*
|
|
|
* Redirect GPIO interrupts to FIQ
|
|
|
*/
|
|
|
- offset = IRQ_ILR0_REG_OFFSET + INT_GPIO_BANK1 * 0x4;
|
|
|
+ offset = IRQ_ILR0_REG_OFFSET + (INT_GPIO_BANK1 - NR_IRQS_LEGACY) * 0x4;
|
|
|
val = omap_readl(OMAP_IH1_BASE + offset) | 1;
|
|
|
omap_writel(val, OMAP_IH1_BASE + offset);
|
|
|
}
|