Subject: I.MX35 GPIO IRQ + Preempt -> Oops

From: [email-masked] (Eric Bénard)
Date: Tue, 05 Oct 2010 11:13:32 +0200

Hi,

Le 05/10/2010 09:28, Eric B?nard a ?crit :
> Hi Marc,
>
> Le 05/10/2010 07:06, Marc Reilly a ?crit :
>> For what it's worth...
>>
>>> Also : same problem with Freescale's BSP (2.6.31 based) and same "fix"
>>> (removing the WFI).
>>
>> My kernel won't even boot up (although I don't usually get a kernel
>> oops, only
>> very occasionally) unless i pass the jtag=on parameter (or nohlt for non
>> freescale kernel). It just freezes.
>>
>> I think both of those workarounds effectively bypass the cpu_do_idle()
>> call.
>>
> exactly and it seems the workaround existed in the past in Freescale's
> kernel ( TLSbo65953 is the errata number for i.MX31 ) :
> http://svn.buglabs.net/svn/!source/9783/bug/trunk/bug-linux-2.6.27.2/arch/arm/mach-mx3/mxc_pm.c#359
>
this workaround seems to fix the problem (Freescale's support just sent 
me a very similar one). And vs removing cpu_do_idle, this saves ~ 1/2 W 
when there is no intensive usage of the CPU.

Eric