Re: [PATCH] I2C: Fix twl4030 timeouts on omap3430

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Apr 01, 2008 at 03:43:56PM +0300, ext Tony Lindgren wrote:
> * Tony Lindgren <tony@xxxxxxxxxxx> [080331 17:30]:
> > * Tony Lindgren <tony@xxxxxxxxxxx> [080331 13:43]:
> > > * Tony Lindgren <tony@xxxxxxxxxxx> [080328 10:41]:
> > > > Hi all,
> > > > 
> > > > This helps with the annoying I2C timeouts. Does anybody have an idea
> > > > why the twl4030 chip does not like doing multiple transfers in a row?
> > > > 
> > > > To me the only difference seems to be that clocks are idled between
> > > > writing the twl4030 register and reading the register value.
> > > 
> > > I'll push this today with a REVISIT comment added.
> > 
> > Looks like this kills twl4030 interrupts, so I've reverted it.
> 
> After looking into this problem a bit more, looks like twl4030 reads
> to anything in "POWER ID" (modules 0x10 and higher) will hang twl4030
> eventually and I2C controller gets stuck in mode where STP never clears.
> 
> Repeated reads to "USB ID", "AUD ID" or "AUX ID" will not hang twl4030.
> 

I remember seeing something similar when doing the powerbutton code. 
Klaus Pedersen found out that leaving CFG_BOOT to its reset value solved
the problem. Unfortunately this breaks MADC and USB afaics, so it's not
a real solution. CFG_BOOT is programmed in power_companion_init().

Cheers,

Peter.

-- 
goa is a state of mind
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Arm (vger)]     [ARM Kernel]     [ARM MSM]     [Linux Tegra]     [Linux WPAN Networking]     [Linux Wireless Networking]     [Maemo Users]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux