Re: [RFC PATCH v2 03/16] dt-bindings: media: i2c: max96717: add support for I2C ATR

Rob Herring
2025-03-11T18:15:28Z

On Sun, Mar 09, 2025 at 10:47:55AM +0200, Cosmin Tanislav wrote:
> MAX96717 is capable of address translation for the connected I2C slaves.
>
> Add support for I2C ATR while keeping I2C gate for compatibility to
> support this usecase.
>
> Signed-off-by: Cosmin Tanislav <demonsingur@gmail.com>
> ---
> .../bindings/media/i2c/maxim,max96717.yaml | 39 +++++++++++++++++++
> 1 file changed, 39 insertions(+)
>
> diff --git a/Documentation/devicetree/bindings/media/i2c/maxim,max96717.yaml b/Documentation/devicetree/bindings/media/i2c/maxim,max96717.yaml
> index 1026678a17a7..dd28cc397674 100644
> --- a/Documentation/devicetree/bindings/media/i2c/maxim,max96717.yaml
> +++ b/Documentation/devicetree/bindings/media/i2c/maxim,max96717.yaml
> @@ -91,6 +91,30 @@ properties:
> incoming GMSL2 link. Therefore, it supports an i2c-gate
> subnode to configure a sensor.
>
> + i2c-alias-pool:
> + maxItems: 2
> +
> + i2c-atr:
> + type: object
> + additionalProperties: false
> +
> + properties:
> + '#address-cells':
> + const: 1
> +
> + '#size-cells':
> + const: 0
> +
> + patternProperties:
> + '^i2c@0':

This allows "i2c@0anything-you-want". Based on reg, you want
'^i2c@[01]$'.

> + $ref: /schemas/i2c/i2c-controller.yaml#
> + unevaluatedProperties: false
> + properties:
> + reg:
> + items:
> + minimum: 0
> + maximum: 1
> +
> required:
> - compatible
> - reg
> @@ -98,6 +122,21 @@ required:
>
> additionalProperties: false
>
> +allOf:
> + - $ref: /schemas/i2c/i2c-atr.yaml#
> +
> + - anyOf:
> + - oneOf:
> + - required: [i2c-atr]
> + - required: [i2c-gate]
> +
> + - not:
> + required: [i2c-atr, i2c-gate]
> +
> +dependentRequired:
> + i2c-atr: [i2c-alias-pool]
> + i2c-alias-pool: [i2c-atr]
> +
> examples:
> - |
> #include <dt-bindings/gpio/gpio.h>
> --
> 2.48.1
>