[U-Boot] I2C: OMAP: spurious i2c probe addresses

Michael Jones michael.jones at matrix-vision.de
Thu May 26 09:03:54 CEST 2011


On 05/25/2011 05:38 PM, Michael Jones wrote:
> While running v2011.06-rc1, I noticed some new behavior on my OMAP3 i2c
> bus.  I tracked it to commit 0e57968a215d1b, "I2C: OMAP: detect more
> devices when probing an i2c bus".  It detects more devices indeed, such
> as some that don't even exist. Even better than that, it detects
> different devices every time.  It looks like just false positives, the
> existent devices seem to always be found among the ghost devices.
> 
> Here's the behavior I see:
> --------------------------
> # i2c probe
> Valid chip addresses: 05 18 30 49 50 51 5E 7A
> # i2c probe
> Valid chip addresses: 02 06 0B 18 1D 24 25 30 35 50 51 57 5D 6F 7C
> # i2c probe
> Valid chip addresses: 18 2E 30 33 35 50 51 62 6F
> # i2c probe
> Valid chip addresses: 18 1B 1F 2D 30 46 50 51 5C 5D
> # i2c probe
> Valid chip addresses: 0A 18 21 26 2B 30 32 50 51 60 66 69 6D 79
> # i2c probe
> Valid chip addresses: 08 09 18 1B 30 50 51 5E 6C
> 
> 
> Here's what it looks like after reverting the commit:
> ------------------------------------------
> # i2c probe
> Valid chip addresses: 18 30 50 51
> # i2c probe
> Valid chip addresses: 18 30 50 51
> # i2c probe
> Valid chip addresses: 18 30 50 51
> # i2c probe
> Valid chip addresses: 18 30 50 51
> 
> 
> -Michael

Sorry- relevant point here: I have a device with a 2-byte subaddress,
which I suspect is the culprit here.  As Nick mentioned in his commit
message, such devices are unsupported by the current OMAP i2c driver.
I'm in the process of adding support for 2-byte subaddresses to the
driver.  In light of the above, I now realize that such changes will
probably have to involve i2c_probe() as well.

-Michael

MATRIX VISION GmbH, Talstrasse 16, DE-71570 Oppenweiler
Registergericht: Amtsgericht Stuttgart, HRB 271090
Geschaeftsfuehrer: Gerhard Thullner, Werner Armingeon, Uwe Furtner


More information about the U-Boot mailing list