Message ID | 20250415-pasemi-fixes-v2-0-c543bf53151a@svenpeter.dev (mailing list archive) |
---|---|
Headers | show |
Series | Apple/PASemi i2c error recovery fixes | expand |
On Tue, Apr 15, 2025 at 11:37 AM Sven Peter via B4 Relay <devnull+sven.svenpeter.dev@kernel.org> wrote: > > Hi, > > This series adds a few fixes/improvements to the error recovery for > Apple/PASemi i2c controllers. > The patches have been in our downstream tree and were originally used > to debug a rare glitch caused by clock strechting but are useful in > general. We haven't seen the controller misbehave since adding these. > > Best, > > Sven > > Signed-off-by: Sven Peter <sven@svenpeter.dev> > --- > Changes in v2: > - Added commit to use the correct include (bits.h instead of bitfield.h) > - Added commit to sort includes > - Moved timeout explanations to code instead of just the commit log > - Made timeout recovery also work correctly in the interrupt case when > waiting for the condition failed > - Used readx_poll_timeout instead of open-coded alternative > - Link to v1: https://lore.kernel.org/r/20250222-pasemi-fixes-v1-0-d7ea33d50c5e@svenpeter.dev > > --- > Hector Martin (3): > i2c: pasemi: Improve error recovery > i2c: pasemi: Enable the unjam machine > i2c: pasemi: Log bus reset causes > > Sven Peter (3): > i2c: pasemi: Use correct bits.h include > i2c: pasemi: Sort includes alphabetically > i2c: pasemi: Improve timeout handling > > drivers/i2c/busses/i2c-pasemi-core.c | 114 ++++++++++++++++++++++++++++------- > drivers/i2c/busses/i2c-pasemi-pci.c | 10 +-- > 2 files changed, 96 insertions(+), 28 deletions(-) > --- > base-commit: 0af2f6be1b4281385b618cb86ad946eded089ac8 > change-id: 20250220-pasemi-fixes-916cb77404ba > The series looks good to me, especially the new patches. Reviewed-by: Neal Gompa <neal@gompa.dev>
Hi, This series adds a few fixes/improvements to the error recovery for Apple/PASemi i2c controllers. The patches have been in our downstream tree and were originally used to debug a rare glitch caused by clock strechting but are useful in general. We haven't seen the controller misbehave since adding these. Best, Sven Signed-off-by: Sven Peter <sven@svenpeter.dev> --- Changes in v2: - Added commit to use the correct include (bits.h instead of bitfield.h) - Added commit to sort includes - Moved timeout explanations to code instead of just the commit log - Made timeout recovery also work correctly in the interrupt case when waiting for the condition failed - Used readx_poll_timeout instead of open-coded alternative - Link to v1: https://lore.kernel.org/r/20250222-pasemi-fixes-v1-0-d7ea33d50c5e@svenpeter.dev --- Hector Martin (3): i2c: pasemi: Improve error recovery i2c: pasemi: Enable the unjam machine i2c: pasemi: Log bus reset causes Sven Peter (3): i2c: pasemi: Use correct bits.h include i2c: pasemi: Sort includes alphabetically i2c: pasemi: Improve timeout handling drivers/i2c/busses/i2c-pasemi-core.c | 114 ++++++++++++++++++++++++++++------- drivers/i2c/busses/i2c-pasemi-pci.c | 10 +-- 2 files changed, 96 insertions(+), 28 deletions(-) --- base-commit: 0af2f6be1b4281385b618cb86ad946eded089ac8 change-id: 20250220-pasemi-fixes-916cb77404ba Best regards,