Re: [PATCH v4 0/3] drm/xe/i2c: alerts and controller enabling modifications
From: Heikki Krogerus
Date: Wed Jul 15 2026 - 06:02:12 EST
Hi Rodrigo,
On Tue, Jul 14, 2026 at 11:54:16AM -0400, Rodrigo Vivi kirjoitti:
> On Mon, Jul 13, 2026 at 05:55:58PM +0200, Heikki Krogerus wrote:
> > Hi,
> >
> > The hardware challenges that these patches address are so severe that I'm
> > marking both of them as fixes. In both cases the GPU may silently end up in
> > unresponsive state (or worse). The second patch has been refactored so that it
> > includes the direct AMC alert handling in Xe instead of the normal alert handler
> > registration. The subject lines were also changed to highlight the fact that
> > these are fixes. Ramesh helped me with the testing and with the implementation
> > for the AMC alert handling.
> >
> > Changed since v2:
> > - Added Fixes tag to both patches.
> > - i2c-designware is no longer supplied with an interrupt so it will be in
> > polling mode (ACCESS_POLLING will be enabled). The IRQ path in hardware can't
> > handle the amount of interrupts the i2c controller generates. Only the
> > interrupts from the SMBus Alert line are left enabled.
> > - The registration of the default smbus alert handler is dropped.
> > - The AMC alerts are handled directly in Xe. All the alerts will cause the
> > device to be declared as wedged at least for now.
> > - Cleanups proposed by Raag.
> >
> > v2: https://lore.kernel.org/lkml/20260625125939.429078-1-heikki.krogerus@xxxxxxxxxxxxxxx/
> >
> > Changed since v1:
> > - Global header for the DesignWare I2C registers which meant a bit of
> > patch refactoring.
> > - Selecting CONFIG_SMBUS in CONFIG_XE and handling smbus in xe_i2c.c instead of
> > separate file.
> > - Storing the alert device to the client array and providing enum for the
> > clients.
> > - Allowing other fields in the IC_ENABLE register to be updated except the
> > Enable bit.
> > - Can't sleep in xe_i2c_disable() so using udelay().
> >
> > v1: https://lore.kernel.org/lkml/20260622114759.3464047-1-heikki.krogerus@xxxxxxxxxxxxxxx/
> >
> > This includes support for the SMBus alerts, and special handling for the
> > IC_ENABLE register.
> >
> > Thanks,
>
>
> Please take a look to Shashiko review and let us know in case of false positives:
> https://sashiko.dev/#/patchset/20260713155601.711389-1-heikki.krogerus%40linux.intel.com
The high ones are false positive.
- The SMBus interrupts are not cleared the same way as the other
interrupts.
- i2c-designware driver does not modify the timings unless it is
supplied a clock device (struct clk).
The rest I'll check and fix as needed together with the modifications
proposed by Raag.
Thanks,
--
heikki