Thread (41 messages) 41 messages, 6 authors, 2011-03-01
STALE5570d

[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

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.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help