Re: [PATCH v3] i2c: imx-lpi2c: mark I2C adapter when hardware is powered down

From: Mukesh Savaliya

Date: Mon May 25 2026 - 01:31:45 EST




On 5/25/2026 8:44 AM, Carlos Song (OSS) wrote:
From: Carlos Song <carlos.song@xxxxxxx>

On some i.MX platforms, certain I2C client drivers keep a periodic
workqueue which continues to trigger I2C transfers.

During system suspend/resume, there exists a time window between:
- suspend_noirq and the system entering suspend
- the system starting to resume and resume_noirq

In this window, the I2C controller resources such as clock and pinctrl
may already be disabled or not yet restored.

If a workqueue triggers an I2C transfer in this period, the driver
attempts to access I2C registers while the hardware resources are
unavailable, which may lead to system hang.

Mark the I2C adapter as suspended during noirq suspend and block new
transfers until resume, ensuring that I2C transfers are only issued
when hardware resources are available.

Fixes: 1ee867e465c1 ("i2c: imx-lpi2c: add target mode support")
Cc: stable@xxxxxxxxxxxxxxx
Signed-off-by: Carlos Song <carlos.song@xxxxxxx>
---

Acked-by: Mukesh Savaliya <mukesh.savaliya@xxxxxxxxxxxxxxxx>