[PATCH v2] i2c: cadence: Fix regression with bus recovery

Wolfram Sang wsa at kernel.org
Thu Dec 1 14:42:02 PST 2022


On Mon, Nov 28, 2022 at 10:51:58AM +0000, carsten.haitzler at foss.arm.com wrote:
> From: Carsten Haitzler <carsten.haitzler at arm.com>
> 
> Commit "i2c: cadence: Add standard bus recovery support" breaks for i2c
> devices that have no pinctrl defined. There is no requirement for this
> to exist in the DT. This has worked perfectly well without this before in
> at least 1 real usage case on hardware (Mali Komeda DPU, Cadence i2c to
> talk to a tda99xx phy). Adding the requirement to have pinctrl set up in
> the device tree (or otherwise be found) is a regression where the whole
> i2c device is lost entirely (in this case dropping entire devices which
> then leads to the drm display stack unable to find the phy for display
> output, thus having no drm display device and so on down the chain).
> 
> This converts the above commit to an enhancement if pinctrl can be found
> for the i2c device, providing a timeout on read with recovery, but if not,
> do what used to be done rather than a fatal loss of a device.
> 
> This restores the mentioned display devices to their working state again.
> 
> Fixes: 58b924241d0a ("i2c: cadence: Add standard bus recovery support")
> Signed-off-by: Carsten Haitzler <carsten.haitzler at arm.com>

Fixed this checkpatch check:

CHECK: Unbalanced braces around else statement
#55: FILE: drivers/i2c/busses/i2c-cadence.c:1272:
+	} else

and applied to for-current, thanks!

-------------- 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/20221201/e8db3bca/attachment-0001.sig>


More information about the linux-arm-kernel mailing list