Re: [PATCH v5 2/2] i2c: hisi: Add I2C bus recovery support
From: Jie Zhan
Date: Tue Oct 13 2026 - 10:43:50 EST
On 9/29/2026 8:13 PM, Bowen Yu wrote:
> When the I2C bus is stuck due to a slave device holding SDA low
> (e.g. during an incomplete transfer), the master has no way to recover
> the bus through normal operation. Add bus recovery support using the
> subctrl register to manually toggle SCL and generate clock pulses to
> release the bus.
>
> The recovery is performed via a second register resource (sctrl_base)
> that provides direct control over SCL/SDA lines through mux and
> output-enable bits. After recovery, the I2C controller is reset through
> the ACPI _RST method and reconfigured.
>
> Recovery is only registered when the subctrl resource is provided in
> the firmware description, keeping backward compatibility with existing
> platforms.
>
> Signed-off-by: Bowen Yu <yubowen8@xxxxxxxxxx>
> ---
> drivers/i2c/busses/i2c-hisi.c | 142 ++++++++++++++++++++++++++++++++++
> 1 file changed, 142 insertions(+)
This version looks good to me now. Thanks!
Reviewed-by: Jie Zhan <zhanjie9@xxxxxxxxxxxxx>