[PATCH v6 1/2] dt-bindings: i2c: add bus-reset-gpios property

From: Chris Packham
Date: Tue Nov 14 2023 - 22:58:09 EST


Add bus-reset-gpios and bus-reset-duration-us properties to the binding
description for i2c busses. These can be used to describe hardware where
a common reset GPIO is connected to all downstream devices on and I2C
bus. This reset will be asserted then released before the downstream
devices on the bus are probed.

Signed-off-by: Chris Packham <chris.packham@xxxxxxxxxxxxxxxxxxx>
---

Notes:
I expect the first reaction to this will be a request to convert the
binding to dtschema. I can attempt such a conversion but given it's one
of the more core bindings I expect others may have strong opinions. I
didn't want to start a conversion without hearing those opinions (or if
I could get away without doing the conversion). It's also likely to spin
off a whole lot of work to bring existing device trees into line.

Changes in v6:
- Retarget changes at the i2c core instead of an individual driver
Changes in v5:
- Rename reset-gpios and reset-duration-us to bus-reset-gpios and
bus-reset-duration-us as requested by Wolfram
Changes in v4:
- Add r-by from Krzysztof
Changes in v3:
- Rename reset-delay-us to reset-duration-us to better reflect its
purpose
- Add default: for reset-duration-us
- Add description: for reset-gpios
Changes in v2:
- Update commit message
- Add reset-delay-us property

Documentation/devicetree/bindings/i2c/i2c.txt | 8 ++++++++
1 file changed, 8 insertions(+)

diff --git a/Documentation/devicetree/bindings/i2c/i2c.txt b/Documentation/devicetree/bindings/i2c/i2c.txt
index fc3dd7ec0445..3f95d71b9985 100644
--- a/Documentation/devicetree/bindings/i2c/i2c.txt
+++ b/Documentation/devicetree/bindings/i2c/i2c.txt
@@ -99,6 +99,14 @@ wants to support one of the below features, it should adapt these bindings.
indicates that the system is accessible via this bus as an endpoint for
MCTP over I2C transport.

+- bus-reset-gpios:
+ GPIO pin providing a common reset for all downstream devices. This GPIO
+ will be asserted then released before the downstream devices are probed.
+
+- bus-reset-duration-us:
+ Reset duration in us.
+ default: 1
+
Required properties (per child device)
--------------------------------------

--
2.42.0