[i2c] [patch 2.6.24-rc1-git] i2c-algo-bit, don't yield()
Jean Delvare
khali at linux-fr.org
Tue Nov 20 22:09:03 CET 2007
Hi David,
On Sun, 18 Nov 2007 18:06:07 -0800, David Brownell wrote:
> The codes aren't part of any on-the-wire protocol, they're just
> in the programming interface. That's why I suggested a new file.
Good point.
>
> Another option being Documentation/DocBook/kernel-api.tmpl in the
> i2c-specific section. That has distinct advantages, although for
> some reason many people seem to overlook that documentation.
DocBook is fine with me.
> > > seems compatible with the driver model probe code, where both that
> > > and -ENXIO are treated as "normal" errors not worthy of diagnostics.
> > >
> > > Likewise, a standard code is needed for arbitration lost. It could
> > > be reported any time master transmit mode is used, not just in the
> > > send-an-address stage. Maybe -EAGAIN would suit, it already has
> > > the right kind of message; or -EBUSY, or -EALREADY.
> >
> > I think -EAGAIN is more suitable, as it is a temporary error, while
> > -EBUSY suggests a permanent one.
>
> OK. Of course, auditing drivers to make sure they report the right
> values there will take quite a long time. One place to start would
> be making sure these codes aren't used to mean something different.
>
> That's something Mr. Grep could help us with; it'd be a bit easier
> to make be sure of that than to be sure that for example ENODEV
> comes back from a probe failure despite convoluted error paths.
Agreed. We'll do our best, and if we miss something, we'll wait for
users to complain.
--
Jean Delvare
More information about the i2c
mailing list