Re: [PATCH 2/2] i2c-algo-bit: Complain about masters which can't read SCL

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

 



Hi Marc, Ben,

On Tue, 7 Dec 2010 12:30:11 +0000, Ben Dooks wrote:
> On Tue, Dec 07, 2010 at 12:10:10PM +0000, Mark Brown wrote:
> > On Tue, Dec 07, 2010 at 11:07:05AM +0100, Jean Delvare wrote:
> > > The I2C specification explicitly describes both SDA and SCL as
> > > bidirectional lines. An I2C master with a read-only SCL is thus not
> > > compliant. If a slow slave stretches the clock, errors will happen,
> > > so the bus can't be considered as reliable.
> > > 
> > > Signed-off-by: Jean Delvare <khali@xxxxxxxxxxxx>
> > 
> > It'd be good to also flag this via sysfs so that it's more readily
> > visible to things like diagnostic tools.

In what form do you expect this, and what do you expect diagnostic
tools to do about it?

I can't think of anything straightforward and useful. We could abuse
one functionality flag for unreliable masters, but then this is a
boolean flag, with no way to report the actual problem to the customer.
And write-only SCL is only one thing they can do wrongly.

> Could be, I wonder how many other hardware based adapters just don't
> do this. Quite a few devices i've seen don't use it as they're generally
> fast enough, or implement some other status polling system.

I don't know either, and I didn't mean to provide a general solution to
this problem as I have no clue so far that a general problem exists.
This patch is in response to the thread started by Matthias Zacharias
where we were troubleshooting his I2C bus problems. I just wanted to
make sure that the same problem doesn't happen again, i.e. developers
don't set getscl to NULL in the hope that it will help in any way.

I don't know of that many pieces of hardware driven by i2c-algo-bit and
not having a bidirectional SCL line. In fact I only know of the
i2c-parport, i2c-parport-light and i2c-gpio drivers doing this, and
then again, only for some of the supported devices. So I'm not sure
there is much point in spending a lot of time on this.

Or, to make it clearer, you can spend as much time as _you_ want on
this, but I won't. I'm busy enough as is.

-- 
Jean Delvare
--
To unsubscribe from this list: send the line "unsubscribe linux-i2c" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux GPIO]     [Linux SPI]     [Linux Hardward Monitoring]     [LM Sensors]     [Linux USB Devel]     [Linux Media]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux