[PATCH 1/2] i2c: add binding to prevent device detection

From: Vincent Whitchurch
Date: Tue Apr 05 2022 - 20:17:52 EST


When drivers with ->detect callbacks are loaded, the I2C core does a
bunch of transactions to try to probe for these devices, regardless of
whether they are specified in the devicetree or not. (This only happens
on I2C controllers whose drivers enable the I2C_CLASS* flags, but this
is the case for generic drivers like i2c-gpio.)

These kinds of transactions are unnecessary on systems where the
devicetree specifies all the devices on the I2C bus, so add a property
to allow them to be disabled.

Signed-off-by: Vincent Whitchurch <vincent.whitchurch@xxxxxxxx>
---
Documentation/devicetree/bindings/i2c/i2c.txt | 4 ++++
1 file changed, 4 insertions(+)

diff --git a/Documentation/devicetree/bindings/i2c/i2c.txt b/Documentation/devicetree/bindings/i2c/i2c.txt
index fc3dd7ec0445..5f7bdf4851e8 100644
--- a/Documentation/devicetree/bindings/i2c/i2c.txt
+++ b/Documentation/devicetree/bindings/i2c/i2c.txt
@@ -72,6 +72,10 @@ wants to support one of the below features, it should adapt these bindings.
this information to adapt power management to keep the arbitration awake
all the time, for example. Can not be combined with 'single-master'.

+- no-detect
+ states that the system should not attempt to automatically detect
+ devices which are not explicitly specified as child nodes.
+
- pinctrl
add extra pinctrl to configure SCL/SDA pins to GPIO function for bus
recovery, call it "gpio" or "recovery" (deprecated) state
--
2.34.1