On Thu, 2009-03-12 at 07:46 +0100, ext Paul Walmsley wrote: > Hello Ari, > > On Thu, 12 Mar 2009, Kauppi Ari (EXT-Ixonos/Oulu) wrote: > > > I was seeing some Spurious irq's for the I2C1 (IRQ 56). > > > > I'm aware of flushing posted write and the very first thing I tried was > > to use read-after-write for OMAP_I2C_STAT_REG (in all applicable > > places). However, it didn't make any difference. > > Strange. I agree. > > Applying Richard Woodruff's patch (mentioned earlier in thread) that > > disables dev->b_hw hack for 3430 (STT/STP bits written together) and > > double clears ARDY fixed the spurious IRQ issues for I2C1. > > > > However, with the STT/STP+ARDY patch I was seeing Spurious interrupts > > all over the place and the IRQF_DISABLED in i2c-omap seemed to tame them > > quite well. I do agree that my approach might not be the proper one in > > long term. > > Could you clarify this? Do Richard's patches fix the spurious IRQs, or > cause spurious interrupts to appear? 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. Best regards, -- Ari -- 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