[PATCH 00/18] i2c: remove printout on handled timeouts
Wolfram Sang
wsa+renesas at sang-engineering.com
Wed Apr 24 02:00:53 PDT 2024
Hi Andy,
On Wed, Apr 24, 2024 at 03:08:14AM +0300, Andy Shevchenko wrote:
> Wed, Apr 10, 2024 at 01:24:14PM +0200, Wolfram Sang kirjoitti:
> > While working on another cleanup series, I stumbled over the fact that
> > some drivers print an error on I2C or SMBus related timeouts. This is
> > wrong because it may be an expected state. The client driver on top
> > knows this, so let's keep error handling on this level and remove the
> > prinouts from controller drivers.
> >
> > Looking forward to comments,
>
> I do not see an equivalent change in I²C core.
There shouldn't be. The core neither knows if it is okay or not. The
client driver knows.
> IIRC in our case (DW or i801 or iSMT) we often have this message as the only
Often? How often?
> one that points to the issues (on non-debug level), it will be much harder to
> debug for our customers with this going away.
The proper fix is to print the error in the client driver. Maybe this
needs a helper for client drivers which they can use like:
i2c_report_error(client, retval, flags);
The other thing which is also more helpful IMO is that we have
trace_events for __i2c_transfer. There, you can see what was happening
on the bus before the timeout. It can easily be that, if device X
times out, it was because of the transfer before to device Y which locks
up the bus. A simple "Bus timed out" message will not help you a lot
there.
And, keep in mind the false positives I mentioned in the coverletter.
All the best,
Wolfram
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20240424/a030c939/attachment.sig>
More information about the linux-arm-kernel
mailing list