[PATCH 0/2] i2c: Introduce I2C bus extensions

Herve Codina
2025-04-01T08:10:59Z

Hi,

An I2C bus can be wired to the connector and allows an add-on board to
connect additional I2C devices to this bus.

Those additional I2C devices could be described as sub-nodes of the I2C
bus controller node however for hotplug connectors described via device
tree overlays there is additional level of indirection, which is needed
to decouple the overlay and the base tree.

This decoupling is performed thanks to the I2C bus extension feature
which is introduced and detailed in patch 2 of this series.

The implementation related to I2C bus extension has been already
proposed as an RFC in Linux [0]. The missing part in this RFC was the
binding.

This binding related to I2C controller is not available in the Linux
repository but in dt-schema repository and so, this series update the
I2C controller binding to introduce the feature:
- Patch 1 is a fix avoid a wrong matching I2C bus node name.
- Patch 2 is the I2C bus extension itself.

[0] https://lore.kernel.org/all/20250205173918.600037-1-herve.codina@bootlin.com/

Best regards,
Hervé Codina

Herve Codina (2):
schemas: i2c: Avoid extra characters in i2c nodename pattern
schemas: i2c: Introduce I2C bus extensions

dtschema/schemas/i2c/i2c-controller.yaml | 69 +++++++++++++++++++++++-
1 file changed, 68 insertions(+), 1 deletion(-)

--
2.49.0