* Re: [PATCH 3/5] dt-bindings: i2c: maxim,max96717: add new properties
2025-02-07 11:29 ` [PATCH 3/5] dt-bindings: i2c: maxim,max96717: add new properties Laurentiu Palcu
@ 2025-02-11 18:46 ` Conor Dooley
2025-02-12 17:42 ` Rob Herring
2025-02-12 17:42 ` Rob Herring (Arm)
2025-02-18 13:54 ` Julien Massot
2 siblings, 1 reply; 9+ messages in thread
From: Conor Dooley @ 2025-02-11 18:46 UTC (permalink / raw)
To: Laurentiu Palcu
Cc: Julien Massot, Mauro Carvalho Chehab, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, devicetree, linux-kernel,
linux-media
[-- Attachment #1: Type: text/plain, Size: 2594 bytes --]
On Fri, Feb 07, 2025 at 01:29:55PM +0200, Laurentiu Palcu wrote:
> Add 'maxim,override-mode' property to allow the user to toggle the pin
> configured chip operation mode and 'maxim,fsync-config' to configure the
> chip for relaying a frame synchronization signal, received from
> deserializer, to the attached sensor. The latter is needed for
> synchronizing the images in multi-sensor setups.
>
> Signed-off-by: Laurentiu Palcu <laurentiu.palcu@oss.nxp.com>
> ---
> .../bindings/media/i2c/maxim,max96717.yaml | 28 +++++++++++++++++++
> 1 file changed, 28 insertions(+)
>
> diff --git a/Documentation/devicetree/bindings/media/i2c/maxim,max96717.yaml b/Documentation/devicetree/bindings/media/i2c/maxim,max96717.yaml
> index d1e8ba6e368ec..fae578d55fd4d 100644
> --- a/Documentation/devicetree/bindings/media/i2c/maxim,max96717.yaml
> +++ b/Documentation/devicetree/bindings/media/i2c/maxim,max96717.yaml
> @@ -42,10 +42,35 @@ properties:
> number must be in range of [0, 10].
>
> gpio-controller: true
> + gpio-reserved-ranges: true
>
> '#clock-cells':
> const: 0
>
> + maxim,override-mode:
> + description: Toggle the operation mode from the pin configured one.
> + type: boolean
type: flag
> + maxim,fsync-config:
> + description:
> + Frame synchronization (FSYNC) is used to align images sent from multiple
> + sources in surround-view applications and is required for concatenation.
> + In FSYNC mode, the deserializer sends a sync signal to each serializer;
> + the serializers then send the signal to the connected sensor.
> + $ref: /schemas/types.yaml#/definitions/uint32-array
> + items:
> + - description: FSYNC RX ID, needs to match the TX ID configured in the deserializer.
> + minimum: 0
> + maximum: 31
> + default: 0
> + - description:
> + Output GPIO pin used for sending the FSYNC to the sensor. The pin, however, needs
> + to be excluded from the gpiochip using the gpio-reserved-ranges property since
> + it will be used exclusively for FSYNC generation.
> + minimum: 0
> + maximum: 10
> + default: 0
> +
> reg:
> maxItems: 1
>
> @@ -113,6 +138,9 @@ examples:
> #gpio-cells = <2>;
> #clock-cells = <0>;
>
> + gpio-reserved-ranges = <0 1>;
> + maxim,fsync-config = <0 0>;
> +
> ports {
> #address-cells = <1>;
> #size-cells = <0>;
> --
> 2.34.1
>
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]
^ permalink raw reply [flat|nested] 9+ messages in thread* Re: [PATCH 3/5] dt-bindings: i2c: maxim,max96717: add new properties
2025-02-11 18:46 ` Conor Dooley
@ 2025-02-12 17:42 ` Rob Herring
2025-02-12 20:11 ` Conor Dooley
0 siblings, 1 reply; 9+ messages in thread
From: Rob Herring @ 2025-02-12 17:42 UTC (permalink / raw)
To: Conor Dooley
Cc: Laurentiu Palcu, Julien Massot, Mauro Carvalho Chehab,
Krzysztof Kozlowski, Conor Dooley, devicetree, linux-kernel,
linux-media
On Tue, Feb 11, 2025 at 06:46:10PM +0000, Conor Dooley wrote:
> On Fri, Feb 07, 2025 at 01:29:55PM +0200, Laurentiu Palcu wrote:
> > Add 'maxim,override-mode' property to allow the user to toggle the pin
> > configured chip operation mode and 'maxim,fsync-config' to configure the
> > chip for relaying a frame synchronization signal, received from
> > deserializer, to the attached sensor. The latter is needed for
> > synchronizing the images in multi-sensor setups.
> >
> > Signed-off-by: Laurentiu Palcu <laurentiu.palcu@oss.nxp.com>
> > ---
> > .../bindings/media/i2c/maxim,max96717.yaml | 28 +++++++++++++++++++
> > 1 file changed, 28 insertions(+)
> >
> > diff --git a/Documentation/devicetree/bindings/media/i2c/maxim,max96717.yaml b/Documentation/devicetree/bindings/media/i2c/maxim,max96717.yaml
> > index d1e8ba6e368ec..fae578d55fd4d 100644
> > --- a/Documentation/devicetree/bindings/media/i2c/maxim,max96717.yaml
> > +++ b/Documentation/devicetree/bindings/media/i2c/maxim,max96717.yaml
> > @@ -42,10 +42,35 @@ properties:
> > number must be in range of [0, 10].
> >
> > gpio-controller: true
> > + gpio-reserved-ranges: true
> >
> > '#clock-cells':
> > const: 0
> >
> > + maxim,override-mode:
> > + description: Toggle the operation mode from the pin configured one.
> > + type: boolean
>
> type: flag
Err, no.
You can do as-is or:
$ref: /schemas/types.yaml#/definitions/flag
I am neutral as to which way. If I wasn't we'd make the meta-schema
enforce one way or the other.
Rob
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH 3/5] dt-bindings: i2c: maxim,max96717: add new properties
2025-02-12 17:42 ` Rob Herring
@ 2025-02-12 20:11 ` Conor Dooley
0 siblings, 0 replies; 9+ messages in thread
From: Conor Dooley @ 2025-02-12 20:11 UTC (permalink / raw)
To: Rob Herring
Cc: Laurentiu Palcu, Julien Massot, Mauro Carvalho Chehab,
Krzysztof Kozlowski, Conor Dooley, devicetree, linux-kernel,
linux-media
[-- Attachment #1: Type: text/plain, Size: 1902 bytes --]
On Wed, Feb 12, 2025 at 11:42:09AM -0600, Rob Herring wrote:
> On Tue, Feb 11, 2025 at 06:46:10PM +0000, Conor Dooley wrote:
> > On Fri, Feb 07, 2025 at 01:29:55PM +0200, Laurentiu Palcu wrote:
> > > Add 'maxim,override-mode' property to allow the user to toggle the pin
> > > configured chip operation mode and 'maxim,fsync-config' to configure the
> > > chip for relaying a frame synchronization signal, received from
> > > deserializer, to the attached sensor. The latter is needed for
> > > synchronizing the images in multi-sensor setups.
> > >
> > > Signed-off-by: Laurentiu Palcu <laurentiu.palcu@oss.nxp.com>
> > > ---
> > > .../bindings/media/i2c/maxim,max96717.yaml | 28 +++++++++++++++++++
> > > 1 file changed, 28 insertions(+)
> > >
> > > diff --git a/Documentation/devicetree/bindings/media/i2c/maxim,max96717.yaml b/Documentation/devicetree/bindings/media/i2c/maxim,max96717.yaml
> > > index d1e8ba6e368ec..fae578d55fd4d 100644
> > > --- a/Documentation/devicetree/bindings/media/i2c/maxim,max96717.yaml
> > > +++ b/Documentation/devicetree/bindings/media/i2c/maxim,max96717.yaml
> > > @@ -42,10 +42,35 @@ properties:
> > > number must be in range of [0, 10].
> > >
> > > gpio-controller: true
> > > + gpio-reserved-ranges: true
> > >
> > > '#clock-cells':
> > > const: 0
> > >
> > > + maxim,override-mode:
> > > + description: Toggle the operation mode from the pin configured one.
> > > + type: boolean
> >
> > type: flag
>
> Err, no.
>
> You can do as-is or:
>
> $ref: /schemas/types.yaml#/definitions/flag
Eh, that's sloppy. I must have been rushing or distracted. Sorry.
> I am neutral as to which way. If I wasn't we'd make the meta-schema
> enforce one way or the other.
I'm biased towards flag, since I've seen confusion about setting the
boolean ones to false to disable them a bunch.
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH 3/5] dt-bindings: i2c: maxim,max96717: add new properties
2025-02-07 11:29 ` [PATCH 3/5] dt-bindings: i2c: maxim,max96717: add new properties Laurentiu Palcu
2025-02-11 18:46 ` Conor Dooley
@ 2025-02-12 17:42 ` Rob Herring (Arm)
2025-02-18 13:54 ` Julien Massot
2 siblings, 0 replies; 9+ messages in thread
From: Rob Herring (Arm) @ 2025-02-12 17:42 UTC (permalink / raw)
To: Laurentiu Palcu
Cc: devicetree, linux-media, Julien Massot, Krzysztof Kozlowski,
Conor Dooley, linux-kernel, Mauro Carvalho Chehab
On Fri, 07 Feb 2025 13:29:55 +0200, Laurentiu Palcu wrote:
> Add 'maxim,override-mode' property to allow the user to toggle the pin
> configured chip operation mode and 'maxim,fsync-config' to configure the
> chip for relaying a frame synchronization signal, received from
> deserializer, to the attached sensor. The latter is needed for
> synchronizing the images in multi-sensor setups.
>
> Signed-off-by: Laurentiu Palcu <laurentiu.palcu@oss.nxp.com>
> ---
> .../bindings/media/i2c/maxim,max96717.yaml | 28 +++++++++++++++++++
> 1 file changed, 28 insertions(+)
>
Reviewed-by: Rob Herring (Arm) <robh@kernel.org>
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH 3/5] dt-bindings: i2c: maxim,max96717: add new properties
2025-02-07 11:29 ` [PATCH 3/5] dt-bindings: i2c: maxim,max96717: add new properties Laurentiu Palcu
2025-02-11 18:46 ` Conor Dooley
2025-02-12 17:42 ` Rob Herring (Arm)
@ 2025-02-18 13:54 ` Julien Massot
2025-03-06 8:24 ` Laurentiu Palcu
2 siblings, 1 reply; 9+ messages in thread
From: Julien Massot @ 2025-02-18 13:54 UTC (permalink / raw)
To: Laurentiu Palcu, Mauro Carvalho Chehab, Rob Herring,
Krzysztof Kozlowski, Conor Dooley
Cc: devicetree, linux-kernel, linux-media
Hi Laurentiu,
Thanks for your patch
On Fri, 2025-02-07 at 13:29 +0200, Laurentiu Palcu wrote:
> Add 'maxim,override-mode' property to allow the user to toggle the pin
> configured chip operation mode and 'maxim,fsync-config' to configure the
> chip for relaying a frame synchronization signal, received from
> deserializer, to the attached sensor. The latter is needed for
> synchronizing the images in multi-sensor setups.
>
> Signed-off-by: Laurentiu Palcu <laurentiu.palcu@oss.nxp.com>
> ---
> .../bindings/media/i2c/maxim,max96717.yaml | 28 +++++++++++++++++++
> 1 file changed, 28 insertions(+)
>
> diff --git a/Documentation/devicetree/bindings/media/i2c/maxim,max96717.yaml
> b/Documentation/devicetree/bindings/media/i2c/maxim,max96717.yaml
> index d1e8ba6e368ec..fae578d55fd4d 100644
> --- a/Documentation/devicetree/bindings/media/i2c/maxim,max96717.yaml
> +++ b/Documentation/devicetree/bindings/media/i2c/maxim,max96717.yaml
> @@ -42,10 +42,35 @@ properties:
> number must be in range of [0, 10].
>
> gpio-controller: true
> + gpio-reserved-ranges: true
>
> '#clock-cells':
> const: 0
>
> + maxim,override-mode:
> + description: Toggle the operation mode from the pin configured one.
> + type: boolean
I understand that this property is intended to flip the GMSL link mode between
pixel and tunnel mode.
What about adding a property 'maxim,tunnel-mode' to the GMSL 'port@1'.
Here the MAX96717 only have one GMSL port but other devices, such as MAX96724 can
have 2 GMSL link and may have each link in different mode.
>
> +
> + maxim,fsync-config:
> + description:
> + Frame synchronization (FSYNC) is used to align images sent from multiple
> + sources in surround-view applications and is required for concatenation.
> + In FSYNC mode, the deserializer sends a sync signal to each serializer;
> + the serializers then send the signal to the connected sensor.
> + $ref: /schemas/types.yaml#/definitions/uint32-array
> + items:
> + - description: FSYNC RX ID, needs to match the TX ID configured in the deserializer.
> + minimum: 0
> + maximum: 31
> + default: 0
> + - description:
> + Output GPIO pin used for sending the FSYNC to the sensor. The pin, however, needs
> + to be excluded from the gpiochip using the gpio-reserved-ranges property since
> + it will be used exclusively for FSYNC generation.
> + minimum: 0
> + maximum: 10
> + default: 0
> +
MAX96717 do not have any knowledge of the frame synchronisation, but this device can forward some
GPIO to/from the deserializer.
GPIO forwarding need some information
- The local GPIO number
- The forwarding direction Rx, Tx, Bi-directionnal
- The GPIO ID on the GMSL link (RX_ID/TX_ID)
Can we add a maxim,forward-gpio property reflecting that instead ?
> reg:
> maxItems: 1
>
> @@ -113,6 +138,9 @@ examples:
> #gpio-cells = <2>;
> #clock-cells = <0>;
>
> + gpio-reserved-ranges = <0 1>;
> + maxim,fsync-config = <0 0>;
> +
> ports {
> #address-cells = <1>;
> #size-cells = <0>;
Regards,
--
Julien
^ permalink raw reply [flat|nested] 9+ messages in thread* Re: [PATCH 3/5] dt-bindings: i2c: maxim,max96717: add new properties
2025-02-18 13:54 ` Julien Massot
@ 2025-03-06 8:24 ` Laurentiu Palcu
2025-03-13 7:41 ` Julien Massot
0 siblings, 1 reply; 9+ messages in thread
From: Laurentiu Palcu @ 2025-03-06 8:24 UTC (permalink / raw)
To: Julien Massot
Cc: Mauro Carvalho Chehab, Rob Herring, Krzysztof Kozlowski,
Conor Dooley, devicetree, linux-kernel, linux-media
Hi,
On Tue, Feb 18, 2025 at 02:54:07PM +0100, Julien Massot wrote:
> Hi Laurentiu,
>
> Thanks for your patch
>
> On Fri, 2025-02-07 at 13:29 +0200, Laurentiu Palcu wrote:
> > Add 'maxim,override-mode' property to allow the user to toggle the pin
> > configured chip operation mode and 'maxim,fsync-config' to configure the
> > chip for relaying a frame synchronization signal, received from
> > deserializer, to the attached sensor. The latter is needed for
> > synchronizing the images in multi-sensor setups.
> >
> > Signed-off-by: Laurentiu Palcu <laurentiu.palcu@oss.nxp.com>
> > ---
> > .../bindings/media/i2c/maxim,max96717.yaml | 28 +++++++++++++++++++
> > 1 file changed, 28 insertions(+)
> >
> > diff --git a/Documentation/devicetree/bindings/media/i2c/maxim,max96717.yaml
> > b/Documentation/devicetree/bindings/media/i2c/maxim,max96717.yaml
> > index d1e8ba6e368ec..fae578d55fd4d 100644
> > --- a/Documentation/devicetree/bindings/media/i2c/maxim,max96717.yaml
> > +++ b/Documentation/devicetree/bindings/media/i2c/maxim,max96717.yaml
> > @@ -42,10 +42,35 @@ properties:
> > number must be in range of [0, 10].
> >
> > gpio-controller: true
> > + gpio-reserved-ranges: true
> >
> > '#clock-cells':
> > const: 0
> >
> > + maxim,override-mode:
> > + description: Toggle the operation mode from the pin configured one.
> > + type: boolean
> I understand that this property is intended to flip the GMSL link mode between
> pixel and tunnel mode.
> What about adding a property 'maxim,tunnel-mode' to the GMSL 'port@1'.
> Here the MAX96717 only have one GMSL port but other devices, such as MAX96724 can
> have 2 GMSL link and may have each link in different mode.
I'm OK with moving the property inside "port@1". But I have some
concerns about the logic. So. 'maxim,tunnel-mode' presence would
indicate that we want to force the functioning mode to "tunnel". But
what if it's absent? Do we use the pin configuration? What if the pin
configuration is "tunnel" and the user wants to override the mode to
"pixel"? In this case 'maxim,tunnel-mode' doesn't really work...
Am I missing something here?
>
> >
> > +
> > + maxim,fsync-config:
> > + description:
> > + Frame synchronization (FSYNC) is used to align images sent from multiple
> > + sources in surround-view applications and is required for concatenation.
> > + In FSYNC mode, the deserializer sends a sync signal to each serializer;
> > + the serializers then send the signal to the connected sensor.
> > + $ref: /schemas/types.yaml#/definitions/uint32-array
> > + items:
> > + - description: FSYNC RX ID, needs to match the TX ID configured in the deserializer.
> > + minimum: 0
> > + maximum: 31
> > + default: 0
> > + - description:
> > + Output GPIO pin used for sending the FSYNC to the sensor. The pin, however, needs
> > + to be excluded from the gpiochip using the gpio-reserved-ranges property since
> > + it will be used exclusively for FSYNC generation.
> > + minimum: 0
> > + maximum: 10
> > + default: 0
> > +
>
> MAX96717 do not have any knowledge of the frame synchronisation, but this device can forward some
> GPIO to/from the deserializer.
Good point.
>
> GPIO forwarding need some information
> - The local GPIO number
> - The forwarding direction Rx, Tx, Bi-directionnal
> - The GPIO ID on the GMSL link (RX_ID/TX_ID)
>
> Can we add a maxim,forward-gpio property reflecting that instead ?
Agreed.
Thanks,
Laurentiu
>
> > reg:
> > maxItems: 1
> >
> > @@ -113,6 +138,9 @@ examples:
> > #gpio-cells = <2>;
> > #clock-cells = <0>;
> >
> > + gpio-reserved-ranges = <0 1>;
> > + maxim,fsync-config = <0 0>;
> > +
> > ports {
> > #address-cells = <1>;
> > #size-cells = <0>;
>
> Regards,
> --
> Julien
^ permalink raw reply [flat|nested] 9+ messages in thread* Re: [PATCH 3/5] dt-bindings: i2c: maxim,max96717: add new properties
2025-03-06 8:24 ` Laurentiu Palcu
@ 2025-03-13 7:41 ` Julien Massot
0 siblings, 0 replies; 9+ messages in thread
From: Julien Massot @ 2025-03-13 7:41 UTC (permalink / raw)
To: Laurentiu Palcu
Cc: Mauro Carvalho Chehab, Rob Herring, Krzysztof Kozlowski,
Conor Dooley, devicetree, linux-kernel, linux-media
Hi Laurentiu,
> > >
> > > + maxim,override-mode:
> > > + description: Toggle the operation mode from the pin configured one.
> > > + type: boolean
> > I understand that this property is intended to flip the GMSL link mode between
> > pixel and tunnel mode.
> > What about adding a property 'maxim,tunnel-mode' to the GMSL 'port@1'.
> > Here the MAX96717 only have one GMSL port but other devices, such as MAX96724 can
> > have 2 GMSL link and may have each link in different mode.
>
> I'm OK with moving the property inside "port@1". But I have some
> concerns about the logic. So. 'maxim,tunnel-mode' presence would
> indicate that we want to force the functioning mode to "tunnel". But
> what if it's absent? Do we use the pin configuration? What if the pin
> configuration is "tunnel" and the user wants to override the mode to
> "pixel"? In this case 'maxim,tunnel-mode' doesn't really work...
> Am I missing something here?
>
>
> What about maxim,gmsl2-mode that could be either TUNNEL or PIXEL, if the
property is missing then just run with the pin configured mode.
Regards,
--
Julien
^ permalink raw reply [flat|nested] 9+ messages in thread