I2C bus assignments

John Watlington wad at laptop.org
Thu Apr 30 23:22:23 EDT 2009

A question about I2C bus assignments on Gen 1.5 has come up.

We have three I2C buses available:  SMB, VPD, and CRT.
We have four potential devices that want an I2C interface:
1. the clock generator (addr 0xD2/D3)
2. the DCON (has had problems w. I2C communication in the past)
3. the Camera (addr 0x42/43, is powered down frequently, which might  
not be a
    problem if it really used open drain outputs, but it doesn't).
4. the VGA port

The question is how to connect these up.  Possibilities include:

1. No support for E-DDC on the VGA port (since it isn't used outside  
of A-phase)

2. Adding a bit-banging interface for one of the I2C devices (but  
which device ?)
2A. Bit-bang the DCON -- this has the interesting side effect that it  
would probably
    ensure that we could fix the problem encountered on Gen 1 where  
the DCON
    I2C interface resumed in a weird state and needed special clocking.
2B. Bit-bang the CRT -- I see no reason to do this, as the only  
reason to keep the
   CRT I2C is for compatibility with software drivers that insist on  
using it and can't
   be recompiled...

3. Put the camera on the bus with the clock and add isolation to  
  its bus segment when the camera is powered down.   As the camera isn't
  true I2C, this goes against the manufacturers recommendations...

I favor #1, with #2A as a close second.

Comments ?

More information about the Devel mailing list