[PATCH v10 18/18] OMAP2, 3: DSS2: Get DSS IRQ from platform device
From: Russell King - ARM Linux <hidden>
Date: 2011-01-27 12:59:55
Also in:
linux-omap
From: Russell King - ARM Linux <hidden>
Date: 2011-01-27 12:59:55
Also in:
linux-omap
On Thu, Jan 27, 2011 at 06:19:21PM +0530, Raghuveer Murthy wrote:
quoted
+ r = request_irq(dss_irq, + cpu_is_omap24xx() + ? dss_irq_handler_omap2 + : dss_irq_handler_omap3,it should be cpu_is_omap24xx() ? dss_irq_handler_omap3 : dss_irq_handler_omap2, I am seeing a crash on Panda, which gets rectified with this change. The root cause is access to DSS_IRQSTATUS register in the dss_irq_handler_omap3 handler, which is not valid for OMAP4.
That really doesn't look right. Let me translate the code you've just written: if (cpu_is_omap24xx()) handler = dss_irq_handler_omap3; else handler = dss_irq_handler_omap2; Which means: if we have an OMAP24xx device, use the OMAP3 handler, otherwise use the OMAP2 handler. That's got to be wrong.