[U-Boot] Odd value for I2C_TIMEOUT in fsl_i2c.c
Peter Tyser
ptyser at xes-inc.com
Fri Sep 4 17:28:12 CEST 2009
On Fri, 2009-09-04 at 10:12 -0500, Timur Tabi wrote:
> Wolfgang Denk wrote:
>
> > Wrong Question. I don't know enough about the I2C protocol. Why is
> > i2c_wait4bus necessary?
>
> Ok, why is it necessary?
Freescale's I2C core supports multiple masters. I'd guess that
i2c_wait4bus() is used to ensure the bus is not in use by a different
master before initiating a read or write. Its polling the MBB status
bit, which is automatically set/cleared when the controller sees a
START/STOP which supports this.
If this is the case, the timeout should be the maximum (or reasonable
maximum) time an I2C transaction could take.
Best,
Peter
More information about the U-Boot
mailing list