On Thu, 12 Mar 2009, Kauppi Ari (EXT-Ixonos/Oulu) wrote: > My process was: > > 1) Take 2.6.28-based kernel on custom OMAP3430ES3.0 hardware with > CONFIG_DEBUG_LOCKDEP enabled. There are no spurious interrupts and > everything works. > > 2) Disable CONFIG_DEBUG_LOCKDEP and all other kernel debugging options. > Spurious interrupts start to appear on several IRQs, especially with IRQ > 56 (I2C1). > > 3) Apply Richard's patch. All spurious interrupts for IRQ 56 are gone > but frequency of others increase. > > 4) Set IRQF_DISABLED in i2c-omap and the frequency of other spurious > interrupts decreases considerably. However, I'm starting to realize that > the real problem is probably elsewhere. > > My test setup is pretty systematic, it does not have any user > interaction in it. I have a relay controlling the power to the device > and have taken logs of about 12000 boots with different kernel options > and patches applied. Thanks for the details. Can you extract the list of spurious IRQ warnings that you're getting, and post them? I suspect that, like I2C, many of the driver ISRs are not reading back the device interrupt status registers after they clear them. - Paul -- To unsubscribe from this list: send the line "unsubscribe linux-i2c" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html