[PATCH] fix-lis302dl-isr-lock.patch

joerg joerg.twinklephone at gmx.de
Mon Mar 31 19:10:31 CEST 2008


Am Mo  31. März 2008 schrieb Andy Green:
> - gpg control packet
> Somebody in the thread at some point said:
> 
> | Isn't this common best practice for ISRs to lock the own interrupt (and
> 
> I'm a bit wary of doing this with the edge-triggered interrupts on this
> platform.  Some months ago one or another of the drivers I worked on
> (maybe this one in its original form) had this edge-triggered stuff and
> used that specific interrupt disable code.  It didn't work well and
> under load an edge would missed if it came during the disabled period.
> The result was a permanently stuck low interrupt line that never got
> acknowledged.

Ok, i have to look at the hw-details of GTA02 gmeters as well as CPU specs to 
talk about it better than just nonsense. What i can say now: edge triggered 
IRQs of different devices on same IRQ-line usually are evil. There's no such 
thing as a singular edge, it's always followed/leaded by a level period 
that's possibly swallowing another edge (that is as long as IRQs are not 
synchronized by some common clock). I always would prefer level trigger, and 
IRQ latched in requesting device and reset by "poll" of all devices on this 
line while ISR.

cheers
jOERG

ps: production test? :-)))!!




More information about the openmoko-kernel mailing list