#3479 BLOC Trial-3: i2c timeout hang
Zarro Boogs per Child
bugtracker at laptop.org
Tue Sep 18 11:05:23 EDT 2007
#3479: i2c timeout hang
----------------------+-----------------------------------------------------
Reporter: cjb | Owner: dilinger
Type: defect | Status: new
Priority: blocker | Milestone: Trial-3
Component: kernel | Version:
Resolution: | Keywords:
Verified: 0 |
----------------------+-----------------------------------------------------
Comment(by wad):
My first suspicion was problems due to the DCON I2C bus being left
floating during suspend. Checking with Himax indicated, however, that the
I2C controller is in an unpowered domain during suspend:
On Sep 17, 2007, at 9:42 PM, abnern_chen at himax.com.tw wrote:
:The DCON has three power dowain (DCON_1.8V, DCON_2.5V and DCON_3.3V). I
guess the DCON_3.3V power is power down, when you suspend the laptop. We
call this stage is S3. If DCON_3.3V power is power down, the DCON I/O
include I2C I/O would power down (drop to 0V) at DCON_3.3V power domain.
Maybe you can check about the DCON_3.3V or +3.3V power domain.
The only reset line for the DCON runs off the core power supply (1.8V),
which isn't powered down during suspend. We've always had to reset the I2C
controller by doing a dummy bus read to address 0x1a (ignoring the result
and any errors) in OFW upon resume.
As there is no hardware fix possible short of respinning the chip, this
will have to be remedied in software. If repeated attempts to reset the
I2C via dummy bus transactions fails, software should power cycle the DCON
by having the EC deassert DCON_EN for a hundred mS.
--
Ticket URL: <https://dev.laptop.org/ticket/3479#comment:5>
One Laptop Per Child <https://dev.laptop.org>
OLPC bug tracking system
More information about the Bugs
mailing list