ARM: OMAP: PRCM: Don't register PRCM chain handler for AM33XX
authorVaibhav Bedia <vaibhav.bedia@ti.com>
Mon, 9 Jan 2012 04:46:20 +0000 (10:16 +0530)
committerVaibhav Hiremath <hvaibhav@ti.com>
Mon, 23 Jan 2012 19:14:45 +0000 (00:44 +0530)
commitdcd92aca6a2cbc009d089becb37c77d933ae738f
treec3eb25d92ad967354a90a547350370e105f0c7db
parent110baa7059ee3c7229f82ac6f92d4a8dd4c6bf8b
ARM: OMAP: PRCM: Don't register PRCM chain handler for AM33XX

AM33XX does not support PRCM interrupts for IO/WKUP events.
Since the current PRCM chain handler expects only these two
events, don't register it for AM33XX.

We might revisit this once the PRCM chain handler code is
enhanced to take care of other events like DPLL needing to be
recalibrated.

Note: This fixes the following crash in USB during kernel boot

[    2.131963] Unhandled fault: external abort on non-linefetch
(0x1008) at 0xc880a460
[    2.139960] Internal error: : 1008 [#1]
[    2.143954] Modules linked in:
[    2.147143] CPU: 0    Not tainted  (3.2.0-rc6-12008-g363a774)
[    2.154057] PC is at __musb_readb+0xc/0x14
[    2.158329] LR is at otg_timer+0x2c/0x13c
...

This was due to the PRCM_IRQENABLE register for OMAP3 being at
the same offset as USB_CLKCTRL on AM33XX.

Signed-off-by: Vaibhav Bedia <vaibhav.bedia@ti.com>
arch/arm/mach-omap2/prm2xxx_3xxx.c