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]

 



On Tue, Dec 07, 2010 at 04:29:33PM +0100, Jean Delvare wrote:
> 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.

Hmm, something to think about.
 
> > 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.

yes, sounds good.
 
> 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.

I was talking all hardware, not just ones integrated with this specific
driver. Not to worry, this is just rambling on.

-- 
Ben

Q:      What's a light-year?
A:      One-third less calories than a regular year.

--
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