static irqreturn_t dss_irq_handler_omap3(int irq, void *arg) { u32 irqstatus; irqstatus = dss_read_reg(DSS_IRQSTATUS); if (irqstatus & (1<<0)) /* DISPC_IRQ */ dispc_irq_handler(); #ifdef CONFIG_OMAP2_DSS_DSI if (irqstatus & (1<<1)) /* DSI_IRQ */ dsi_irq_handler(); #endif return IRQ_HANDLED; }
static irqreturn_t dss_irq_handler_omap3(int irq, void *arg) { u32 irqstatus; irqstatus = dss_read_reg(DSS_IRQSTATUS); if (irqstatus & (1<<0)) /* DISPC_IRQ */ dispc_irq_handler(); #ifdef CONFIG_OMAP2_DSS_DSI if (irqstatus & (1<<1)) /* DSI_IRQ */ dsi_irq_handler(); #endif /* Workaround suggested by Tony for spurious interrupt warning */ irqstatus = dss_read_reg(DSS_IRQSTATUS); return IRQ_HANDLED; }