public inbox for devicetree@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2 0/2] Convert et8ek8 and omap3isp bindings to DT schema
@ 2025-12-24 21:59 Alex Tran
  2025-12-24 21:59 ` [PATCH v2 1/2] media: dt-bindings: i2c: toshiba,et8ek8: Convert " Alex Tran
  2025-12-24 21:59 ` [PATCH v2 2/2] media: dt-bindings: ti,omap3isp: " Alex Tran
  0 siblings, 2 replies; 10+ messages in thread
From: Alex Tran @ 2025-12-24 21:59 UTC (permalink / raw)
  To: Mauro Carvalho Chehab, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Pavel Machek, Sakari Ailus, Laurent Pinchart
  Cc: Pavel Machek, linux-media, devicetree, linux-kernel, Alex Tran

This patch series converts the dt-bindings for media components
toshiba,et8ek8 and ti,omap3isp from the TXT to YAML schema.

The series is composed of:
Patch 1: Converts the Toshiba ET8EK8 sensor binding and updates
the MAINTAINERS file under the NOKIA N900 CAMERA SUPPORT accordingly.
Patch 2: Converts the TI OMAP 3 ISP binding.

Changes in v2:
- Dropped obvious et8ek8 clocks description.
- lens-focus and flash-leds: fixed schema reference to
  video-interface-devices.yaml using allOf.
- Dropped pointless et8ek8 remote-endpoint property.
- Dropped obvious omap3isp interrupts/iommus description.
- Removed standard property omap3isp descriptions.
- Completed examples for et8ek8 and omap3isp.

Signed-off-by: Alex Tran <alex.t.tran@gmail.com>
---
Alex Tran (2):
      media: dt-bindings: i2c: toshiba,et8ek8: Convert to DT schema
      media: dt-bindings: ti,omap3isp: Convert to DT schema

 .../bindings/media/i2c/toshiba,et8ek8.txt          |  55 ------
 .../bindings/media/i2c/toshiba,et8ek8.yaml         |  88 ++++++++++
 .../devicetree/bindings/media/ti,omap3isp.txt      |  71 --------
 .../devicetree/bindings/media/ti,omap3isp.yaml     | 189 +++++++++++++++++++++
 MAINTAINERS                                        |   1 +
 5 files changed, 278 insertions(+), 126 deletions(-)
---
base-commit: fa084c35afa13ab07a860ef0936cd987f9aa0460
change-id: 20251221-dt-bindings-et8ek8-omap3isp-2a5d6e4171b7

Best regards,
-- 
Alex Tran <alex.t.tran@gmail.com>


^ permalink raw reply	[flat|nested] 10+ messages in thread

* [PATCH v2 1/2] media: dt-bindings: i2c: toshiba,et8ek8: Convert to DT schema
  2025-12-24 21:59 [PATCH v2 0/2] Convert et8ek8 and omap3isp bindings to DT schema Alex Tran
@ 2025-12-24 21:59 ` Alex Tran
  2025-12-25  8:40   ` Krzysztof Kozlowski
  2025-12-24 21:59 ` [PATCH v2 2/2] media: dt-bindings: ti,omap3isp: " Alex Tran
  1 sibling, 1 reply; 10+ messages in thread
From: Alex Tran @ 2025-12-24 21:59 UTC (permalink / raw)
  To: Mauro Carvalho Chehab, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Pavel Machek, Sakari Ailus, Laurent Pinchart
  Cc: Pavel Machek, linux-media, devicetree, linux-kernel, Alex Tran

Convert binding for toshiba,et8ek8 from TXT to YAML format.
Update MAINTAINERS file accordingly. The binding references
video-interface-devices.yaml to inherit flash-leds and
lens-focus properties.

Signed-off-by: Alex Tran <alex.t.tran@gmail.com>
---
 .../bindings/media/i2c/toshiba,et8ek8.txt          | 55 --------------
 .../bindings/media/i2c/toshiba,et8ek8.yaml         | 88 ++++++++++++++++++++++
 MAINTAINERS                                        |  1 +
 3 files changed, 89 insertions(+), 55 deletions(-)

diff --git a/Documentation/devicetree/bindings/media/i2c/toshiba,et8ek8.txt b/Documentation/devicetree/bindings/media/i2c/toshiba,et8ek8.txt
deleted file mode 100644
index 8d8e40c5687283d2f582895542cc9b765983d025..0000000000000000000000000000000000000000
--- a/Documentation/devicetree/bindings/media/i2c/toshiba,et8ek8.txt
+++ /dev/null
@@ -1,55 +0,0 @@
-Toshiba et8ek8 5MP sensor
-
-Toshiba et8ek8 5MP sensor is an image sensor found in Nokia N900 device
-
-More detailed documentation can be found in
-Documentation/devicetree/bindings/media/video-interfaces.txt .
-
-
-Mandatory properties
---------------------
-
-- compatible: "toshiba,et8ek8"
-- reg: I2C address (0x3e, or an alternative address)
-- vana-supply: Analogue voltage supply (VANA), 2.8 volts
-- clocks: External clock to the sensor
-- reset-gpios: XSHUTDOWN GPIO. The XSHUTDOWN signal is active low. The sensor
-  is in hardware standby mode when the signal is in the low state.
-
-
-Optional properties
--------------------
-
-- flash-leds: See ../video-interfaces.txt
-- lens-focus: See ../video-interfaces.txt
-
-
-Endpoint node mandatory properties
-----------------------------------
-
-- remote-endpoint: A phandle to the bus receiver's endpoint node.
-
-
-Example
--------
-
-&i2c3 {
-	clock-frequency = <400000>;
-
-	cam1: camera@3e {
-		compatible = "toshiba,et8ek8";
-		reg = <0x3e>;
-		vana-supply = <&vaux4>;
-
-		clocks = <&isp 0>;
-		assigned-clocks = <&isp 0>;
-		assigned-clock-rates = <9600000>;
-
-		reset-gpio = <&gpio4 6 GPIO_ACTIVE_HIGH>; /* 102 */
-		port {
-			csi_cam1: endpoint {
-				remote-endpoint = <&csi_out1>;
-			};
-		};
-	};
-};
diff --git a/Documentation/devicetree/bindings/media/i2c/toshiba,et8ek8.yaml b/Documentation/devicetree/bindings/media/i2c/toshiba,et8ek8.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..78e07955a2ed75c97612259644593fee90235c64
--- /dev/null
+++ b/Documentation/devicetree/bindings/media/i2c/toshiba,et8ek8.yaml
@@ -0,0 +1,88 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/media/i2c/toshiba,et8ek8.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Toshiba et8ek8 5MP sensor
+
+maintainers:
+  - Pavel Machek <pavel@ucw.cz>
+  - Sakari Ailus <sakari.ailus@iki.fi>
+
+description:
+  Toshiba et8ek8 5MP sensor is an image sensor found in Nokia N900 device
+
+allOf:
+  - $ref: /schemas/media/video-interface-devices.yaml#
+
+properties:
+  compatible:
+    const: toshiba,et8ek8
+
+  reg:
+    description:
+      I2C address (0x3e, or an alternative address)
+    maxItems: 1
+
+  vana-supply:
+    description:
+      Analogue voltage supply (VANA), 2.8 volts
+
+  clocks:
+    maxItems: 1
+
+  reset-gpios:
+    description:
+      XSHUTDOWN GPIO. The XSHUTDOWN signal is active low. The sensor
+      is in hardware standby mode when the signal is in the low state.
+    maxItems: 1
+
+  flash-leds: true
+  lens-focus: true
+
+  port:
+    $ref: /schemas/graph.yaml#/$defs/port-base
+    additionalProperties: false
+
+    properties:
+      endpoint:
+        $ref: /schemas/media/video-interfaces.yaml#
+        unevaluatedProperties: false
+
+required:
+  - compatible
+  - reg
+  - vana-supply
+  - clocks
+  - reset-gpios
+  - port
+
+additionalProperties: false
+
+examples:
+  - |
+    #include <dt-bindings/gpio/gpio.h>
+
+    i2c {
+        #address-cells = <1>;
+        #size-cells = <0>;
+
+        camera@3e {
+            compatible = "toshiba,et8ek8";
+            reg = <0x3e>;
+            vana-supply = <&vaux4>;
+            clocks = <&isp 0>;
+            assigned-clocks = <&isp 0>;
+            assigned-clock-rates = <9600000>;
+            reset-gpios = <&gpio4 6 GPIO_ACTIVE_HIGH>;
+            flash-leds = <&led>;
+            lens-focus = <&vcm>;
+
+            port {
+                csi_cam1: endpoint {
+                    remote-endpoint = <&csi_out1>;
+                };
+            };
+        };
+    };
diff --git a/MAINTAINERS b/MAINTAINERS
index dc731d37c8feeff25613c59fe9c929927dadaa7e..50722537d5483611eea3c8af6c68ae0ec5e4aee8 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -18582,6 +18582,7 @@ M:	Sakari Ailus <sakari.ailus@iki.fi>
 L:	linux-media@vger.kernel.org
 S:	Maintained
 F:	Documentation/devicetree/bindings/media/i2c/adi,ad5820.yaml
+F:	Documentation/devicetree/bindings/media/i2c/toshiba,et8ek8.yaml
 F:	drivers/media/i2c/ad5820.c
 F:	drivers/media/i2c/et8ek8
 

-- 
2.51.0


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [PATCH v2 2/2] media: dt-bindings: ti,omap3isp: Convert to DT schema
  2025-12-24 21:59 [PATCH v2 0/2] Convert et8ek8 and omap3isp bindings to DT schema Alex Tran
  2025-12-24 21:59 ` [PATCH v2 1/2] media: dt-bindings: i2c: toshiba,et8ek8: Convert " Alex Tran
@ 2025-12-24 21:59 ` Alex Tran
  2025-12-25  8:44   ` Krzysztof Kozlowski
  1 sibling, 1 reply; 10+ messages in thread
From: Alex Tran @ 2025-12-24 21:59 UTC (permalink / raw)
  To: Mauro Carvalho Chehab, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Pavel Machek, Sakari Ailus, Laurent Pinchart
  Cc: Pavel Machek, linux-media, devicetree, linux-kernel, Alex Tran

Convert binding for ti,omap3isp from TXT to YAML format.

Signed-off-by: Alex Tran <alex.t.tran@gmail.com>
---
 .../devicetree/bindings/media/ti,omap3isp.txt      |  71 --------
 .../devicetree/bindings/media/ti,omap3isp.yaml     | 189 +++++++++++++++++++++
 2 files changed, 189 insertions(+), 71 deletions(-)

diff --git a/Documentation/devicetree/bindings/media/ti,omap3isp.txt b/Documentation/devicetree/bindings/media/ti,omap3isp.txt
deleted file mode 100644
index ac23de8556412c52710f46c3ea015d2976c96dad..0000000000000000000000000000000000000000
--- a/Documentation/devicetree/bindings/media/ti,omap3isp.txt
+++ /dev/null
@@ -1,71 +0,0 @@
-OMAP 3 ISP Device Tree bindings
-===============================
-
-The DT definitions can be found in include/dt-bindings/media/omap3-isp.h.
-
-Required properties
-===================
-
-compatible	: must contain "ti,omap3-isp"
-
-reg		: the two registers sets (physical address and length) for the
-		  ISP. The first set contains the core ISP registers up to
-		  the end of the SBL block. The second set contains the
-		  CSI PHYs and receivers registers.
-interrupts	: the ISP interrupt specifier
-iommus		: phandle and IOMMU specifier for the IOMMU that serves the ISP
-syscon		: the phandle and register offset to the Complex I/O or CSI-PHY
-		  register
-ti,phy-type	: 0 -- OMAP3ISP_PHY_TYPE_COMPLEX_IO (e.g. 3430)
-		  1 -- OMAP3ISP_PHY_TYPE_CSIPHY (e.g. 3630)
-#clock-cells	: Must be 1 --- the ISP provides two external clocks,
-		  cam_xclka and cam_xclkb, at indices 0 and 1,
-		  respectively. Please find more information on common
-		  clock bindings in ../clock/clock-bindings.txt.
-
-Port nodes (optional)
----------------------
-
-More documentation on these bindings is available in
-video-interfaces.txt in the same directory.
-
-reg		: The interface:
-		  0 - parallel (CCDC)
-		  1 - CSIPHY1 -- CSI2C / CCP2B on 3630;
-		      CSI1 -- CSIb on 3430
-		  2 - CSIPHY2 -- CSI2A / CCP2B on 3630;
-		      CSI2 -- CSIa on 3430
-
-Optional properties
-===================
-
-vdd-csiphy1-supply : voltage supply of the CSI-2 PHY 1
-vdd-csiphy2-supply : voltage supply of the CSI-2 PHY 2
-
-Endpoint nodes
---------------
-
-lane-polarities	: lane polarity (required on CSI-2)
-		  0 -- not inverted; 1 -- inverted
-data-lanes	: an array of data lanes from 1 to 3. The length can
-		  be either 1 or 2. (required on CSI-2)
-clock-lanes	: the clock lane (from 1 to 3). (required on CSI-2)
-
-
-Example
-=======
-
-		isp@480bc000 {
-			compatible = "ti,omap3-isp";
-			reg = <0x480bc000 0x12fc
-			       0x480bd800 0x0600>;
-			interrupts = <24>;
-			iommus = <&mmu_isp>;
-			syscon = <&scm_conf 0x2f0>;
-			ti,phy-type = <OMAP3ISP_PHY_TYPE_CSIPHY>;
-			#clock-cells = <1>;
-			ports {
-				#address-cells = <1>;
-				#size-cells = <0>;
-			};
-		};
diff --git a/Documentation/devicetree/bindings/media/ti,omap3isp.yaml b/Documentation/devicetree/bindings/media/ti,omap3isp.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..6137ac1e1c4432b9cc3102c5aa569e0c9930df42
--- /dev/null
+++ b/Documentation/devicetree/bindings/media/ti,omap3isp.yaml
@@ -0,0 +1,189 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/media/ti,omap3isp.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Texas Instruments OMAP 3 Image Signal Processor (ISP)
+
+maintainers:
+  - Laurent Pinchart <laurent.pinchart@ideasonboard.com>
+  - Sakari Ailus <sakari.ailus@iki.fi>
+
+description:
+  The OMAP 3 ISP is an image signal processor present in OMAP 3 SoCs.
+
+properties:
+  compatible:
+    const: ti,omap3-isp
+
+  reg:
+    items:
+      - description: Core ISP registers up to the end of the SBL block
+      - description: CSI PHYs and receivers registers
+
+  interrupts:
+    maxItems: 1
+
+  iommus:
+    maxItems: 1
+
+  syscon:
+    $ref: /schemas/types.yaml#/definitions/phandle-array
+    items:
+      - items:
+          - description: phandle to System Control Module
+          - description: register offset to Complex I/O or CSI-PHY register
+    description:
+      Phandle and register offset to the Complex I/O or CSI-PHY register
+
+  ti,phy-type:
+    $ref: /schemas/types.yaml#/definitions/uint32
+    enum: [0, 1]
+    description:
+      0 - OMAP3ISP_PHY_TYPE_COMPLEX_IO (e.g. OMAP 3430)
+      1 - OMAP3ISP_PHY_TYPE_CSIPHY (e.g. OMAP 3630)
+
+  '#clock-cells':
+    const: 1
+    description:
+      The ISP provides two external clocks, cam_xclka and cam_xclkb,
+      at indices 0 and 1 respectively.
+
+  vdd-csiphy1-supply:
+    description: Voltage supply of the CSI-2 PHY 1
+
+  vdd-csiphy2-supply:
+    description: Voltage supply of the CSI-2 PHY 2
+
+  ports:
+    $ref: /schemas/graph.yaml#/properties/ports
+
+    properties:
+      port@0:
+        $ref: /schemas/graph.yaml#/$defs/port-base
+        unevaluatedProperties: false
+        description: Parallel (CCDC) interface
+
+        properties:
+          endpoint:
+            $ref: /schemas/media/video-interfaces.yaml#
+            unevaluatedProperties: false
+
+      port@1:
+        $ref: /schemas/graph.yaml#/$defs/port-base
+        unevaluatedProperties: false
+        description: |
+          CSIPHY1 interface:
+            OMAP 3630: CSI2C / CCP2B
+            OMAP 3430: CSI1 (CSIb)
+
+        properties:
+          endpoint:
+            $ref: /schemas/media/video-interfaces.yaml#
+            unevaluatedProperties: false
+
+            properties:
+              lane-polarities:
+                minItems: 2
+                maxItems: 3
+
+              data-lanes:
+                minItems: 1
+                maxItems: 2
+                items:
+                  minimum: 1
+                  maximum: 3
+
+              clock-lanes:
+                minimum: 1
+                maximum: 3
+
+      port@2:
+        $ref: /schemas/graph.yaml#/$defs/port-base
+        unevaluatedProperties: false
+        description: |
+          CSIPHY2 interface:
+            OMAP 3630: CSI2A / CCP2B
+            OMAP 3430: CSI2 (CSIa)
+
+        properties:
+          endpoint:
+            $ref: /schemas/media/video-interfaces.yaml#
+            unevaluatedProperties: false
+
+            properties:
+              lane-polarities:
+                minItems: 2
+                maxItems: 3
+
+              data-lanes:
+                minItems: 1
+                maxItems: 2
+                items:
+                  minimum: 1
+                  maximum: 3
+
+              clock-lanes:
+                minimum: 1
+                maximum: 3
+
+required:
+  - compatible
+  - reg
+  - interrupts
+  - iommus
+  - syscon
+  - ti,phy-type
+  - '#clock-cells'
+
+additionalProperties: false
+
+examples:
+  - |
+    #include <dt-bindings/media/omap3-isp.h>
+
+    isp@480bc000 {
+        compatible = "ti,omap3-isp";
+        reg = <0x480bc000 0x12fc>,
+              <0x480bd800 0x0600>;
+        interrupts = <24>;
+        iommus = <&mmu_isp>;
+        syscon = <&scm_conf 0x2f0>;
+        ti,phy-type = <OMAP3ISP_PHY_TYPE_CSIPHY>;
+        #clock-cells = <1>;
+        vdd-csiphy1-supply = <&vaux2>;
+        vdd-csiphy2-supply = <&vaux2>;
+
+        ports {
+            #address-cells = <1>;
+            #size-cells = <0>;
+
+            port@0 {
+              reg = <0>;
+              parallel_ep: endpoint {
+                remote-endpoint = <&parallel>;
+              };
+            };
+
+            port@1 {
+              reg = <1>;
+              csi1_ep: endpoint {
+                remote-endpoint = <&smia_1>;
+                clock-lanes = <1>;
+                data-lanes = <2>;
+                lane-polarities = <0 0>;
+              };
+            };
+
+            port@2 {
+              reg = <2>;
+              csi2a_ep: endpoint {
+                remote-endpoint = <&smia_2>;
+                clock-lanes = <2>;
+                data-lanes = <1 3>;
+                lane-polarities = <1 1 1>;
+              };
+            };
+        };
+    };

-- 
2.51.0


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* Re: [PATCH v2 1/2] media: dt-bindings: i2c: toshiba,et8ek8: Convert to DT schema
  2025-12-24 21:59 ` [PATCH v2 1/2] media: dt-bindings: i2c: toshiba,et8ek8: Convert " Alex Tran
@ 2025-12-25  8:40   ` Krzysztof Kozlowski
  2025-12-25  8:57     ` Alex Tran
  0 siblings, 1 reply; 10+ messages in thread
From: Krzysztof Kozlowski @ 2025-12-25  8:40 UTC (permalink / raw)
  To: Alex Tran, Mauro Carvalho Chehab, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Pavel Machek, Sakari Ailus,
	Laurent Pinchart
  Cc: Pavel Machek, linux-media, devicetree, linux-kernel

On 24/12/2025 22:59, Alex Tran wrote:
> +
> +  reset-gpios:
> +    description:
> +      XSHUTDOWN GPIO. The XSHUTDOWN signal is active low. The sensor
> +      is in hardware standby mode when the signal is in the low state.
> +    maxItems: 1
> +
> +  flash-leds: true
> +  lens-focus: true

No, where did you find this syntax. I do not see how you carefully fixed
it. You need proper schema for these.

Best regards,
Krzysztof

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH v2 2/2] media: dt-bindings: ti,omap3isp: Convert to DT schema
  2025-12-24 21:59 ` [PATCH v2 2/2] media: dt-bindings: ti,omap3isp: " Alex Tran
@ 2025-12-25  8:44   ` Krzysztof Kozlowski
  0 siblings, 0 replies; 10+ messages in thread
From: Krzysztof Kozlowski @ 2025-12-25  8:44 UTC (permalink / raw)
  To: Alex Tran, Mauro Carvalho Chehab, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Pavel Machek, Sakari Ailus,
	Laurent Pinchart
  Cc: Pavel Machek, linux-media, devicetree, linux-kernel

On 24/12/2025 22:59, Alex Tran wrote:
> +
> +examples:
> +  - |
> +    #include <dt-bindings/media/omap3-isp.h>
> +
> +    isp@480bc000 {
> +        compatible = "ti,omap3-isp";
> +        reg = <0x480bc000 0x12fc>,
> +              <0x480bd800 0x0600>;
> +        interrupts = <24>;
> +        iommus = <&mmu_isp>;
> +        syscon = <&scm_conf 0x2f0>;
> +        ti,phy-type = <OMAP3ISP_PHY_TYPE_CSIPHY>;
> +        #clock-cells = <1>;
> +        vdd-csiphy1-supply = <&vaux2>;
> +        vdd-csiphy2-supply = <&vaux2>;
> +
> +        ports {
> +            #address-cells = <1>;
> +            #size-cells = <0>;
> +
> +            port@0 {
> +              reg = <0>;
> +              parallel_ep: endpoint {
> +                remote-endpoint = <&parallel>;

Messed indentation.

> +              };
> +            };
> +
> 


Best regards,
Krzysztof

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH v2 1/2] media: dt-bindings: i2c: toshiba,et8ek8: Convert to DT schema
  2025-12-25  8:40   ` Krzysztof Kozlowski
@ 2025-12-25  8:57     ` Alex Tran
  2025-12-25  9:08       ` Krzysztof Kozlowski
  0 siblings, 1 reply; 10+ messages in thread
From: Alex Tran @ 2025-12-25  8:57 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: Mauro Carvalho Chehab, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Pavel Machek, Sakari Ailus, Laurent Pinchart,
	Pavel Machek, linux-media, devicetree, linux-kernel

On Thu, Dec 25, 2025 at 12:40 AM Krzysztof Kozlowski <krzk@kernel.org> wrote:
>
> On 24/12/2025 22:59, Alex Tran wrote:
> > +
> > +  reset-gpios:
> > +    description:
> > +      XSHUTDOWN GPIO. The XSHUTDOWN signal is active low. The sensor
> > +      is in hardware standby mode when the signal is in the low state.
> > +    maxItems: 1
> > +
> > +  flash-leds: true
> > +  lens-focus: true
>
> No, where did you find this syntax. I do not see how you carefully fixed
> it. You need proper schema for these.
>
> Best regards,
> Krzysztof

I saw it used under sony,imx214.yaml and mipi-ccs.yaml. I thought referencing
video-interface-devices.yaml in this schema was correct because the flash-leds
and lens-focus properties are both specified in that file.

--
Yours,
Alex Tran

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH v2 1/2] media: dt-bindings: i2c: toshiba,et8ek8: Convert to DT schema
  2025-12-25  8:57     ` Alex Tran
@ 2025-12-25  9:08       ` Krzysztof Kozlowski
  2025-12-27 11:12         ` Laurent Pinchart
  0 siblings, 1 reply; 10+ messages in thread
From: Krzysztof Kozlowski @ 2025-12-25  9:08 UTC (permalink / raw)
  To: Alex Tran
  Cc: Mauro Carvalho Chehab, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Pavel Machek, Sakari Ailus, Laurent Pinchart,
	Pavel Machek, linux-media, devicetree, linux-kernel

On 25/12/2025 09:57, Alex Tran wrote:
> On Thu, Dec 25, 2025 at 12:40 AM Krzysztof Kozlowski <krzk@kernel.org> wrote:
>>
>> On 24/12/2025 22:59, Alex Tran wrote:
>>> +
>>> +  reset-gpios:
>>> +    description:
>>> +      XSHUTDOWN GPIO. The XSHUTDOWN signal is active low. The sensor
>>> +      is in hardware standby mode when the signal is in the low state.
>>> +    maxItems: 1
>>> +
>>> +  flash-leds: true
>>> +  lens-focus: true
>>
>> No, where did you find this syntax. I do not see how you carefully fixed
>> it. You need proper schema for these.
>>
>> Best regards,
>> Krzysztof
> 
> I saw it used under sony,imx214.yaml and mipi-ccs.yaml. I thought referencing
> video-interface-devices.yaml in this schema was correct because the flash-leds
> and lens-focus properties are both specified in that file.

Ah, so you wanted to reference video-inteface-devices in top-level?
Wasn't this already before? If that was missing then that's another
thing to fix.

And then you need to use unevaluatedProperties: false. flash-leds needs
constraints, number of items. lens-focus you simply remove.

Best regards,
Krzysztof

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH v2 1/2] media: dt-bindings: i2c: toshiba,et8ek8: Convert to DT schema
  2025-12-25  9:08       ` Krzysztof Kozlowski
@ 2025-12-27 11:12         ` Laurent Pinchart
  2025-12-27 11:23           ` Krzysztof Kozlowski
  0 siblings, 1 reply; 10+ messages in thread
From: Laurent Pinchart @ 2025-12-27 11:12 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: Alex Tran, Mauro Carvalho Chehab, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Pavel Machek, Sakari Ailus,
	Pavel Machek, linux-media, devicetree, linux-kernel

Hi Krzysztof,

On Thu, Dec 25, 2025 at 10:08:47AM +0100, Krzysztof Kozlowski wrote:
> On 25/12/2025 09:57, Alex Tran wrote:
> > On Thu, Dec 25, 2025 at 12:40 AM Krzysztof Kozlowski wrote:
> >> On 24/12/2025 22:59, Alex Tran wrote:
> >>> +
> >>> +  reset-gpios:
> >>> +    description:
> >>> +      XSHUTDOWN GPIO. The XSHUTDOWN signal is active low. The sensor
> >>> +      is in hardware standby mode when the signal is in the low state.
> >>> +    maxItems: 1
> >>> +
> >>> +  flash-leds: true
> >>> +  lens-focus: true
> >>
> >> No, where did you find this syntax. I do not see how you carefully fixed
> >> it. You need proper schema for these.
> >>
> >> Best regards,
> >> Krzysztof
> > 
> > I saw it used under sony,imx214.yaml and mipi-ccs.yaml. I thought referencing
> > video-interface-devices.yaml in this schema was correct because the flash-leds
> > and lens-focus properties are both specified in that file.
> 
> Ah, so you wanted to reference video-inteface-devices in top-level?
> Wasn't this already before? If that was missing then that's another
> thing to fix.
> 
> And then you need to use unevaluatedProperties: false. flash-leds needs
> constraints, number of items. lens-focus you simply remove.

I do have a preference in general for keeping 'additionalProperties:
false' and listing

  lens-focus: true

(with a reference to /schemas/media/video-interface-devices.yaml at the
top level of course).

The reason is that using 'unevaluatedProperties: false' will make all
the properties defined in video-interface-devices.yaml valid, even the
ones that don't apply to this device. This being said, most of the other
properties defined by video-interface-devices.yaml are applicable to
this device (the exceptions being 'leds' and 'led-names'), so I won't
fight for this in this specific case, even if I think it's better as a
general rule.

Regarding flash-leds, none of the existing bindings set a constraint on
the number of items. I'm not sure there are use cases for more than two,
but the number of flash LEDs is not an intrinsic properties of the image
sensor. I think listing

  flash-leds: true

is correct. Sakari may have more information.

-- 
Regards,

Laurent Pinchart

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH v2 1/2] media: dt-bindings: i2c: toshiba,et8ek8: Convert to DT schema
  2025-12-27 11:12         ` Laurent Pinchart
@ 2025-12-27 11:23           ` Krzysztof Kozlowski
  2025-12-27 11:34             ` Laurent Pinchart
  0 siblings, 1 reply; 10+ messages in thread
From: Krzysztof Kozlowski @ 2025-12-27 11:23 UTC (permalink / raw)
  To: Laurent Pinchart
  Cc: Alex Tran, Mauro Carvalho Chehab, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Pavel Machek, Sakari Ailus,
	Pavel Machek, linux-media, devicetree, linux-kernel

On 27/12/2025 12:12, Laurent Pinchart wrote:
> Regarding flash-leds, none of the existing bindings set a constraint on
> the number of items. I'm not sure there are use cases for more than two,
> but the number of flash LEDs is not an intrinsic properties of the image
> sensor. I think listing
> 
>   flash-leds: true
> 
> is correct. Sakari may have more information.
> 

IOW, that's not a pin going from the sensor to the LED but rather final
board/system design? And same sensor could be used that way with
arbitrary number of LEDs?

Best regards,
Krzysztof

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH v2 1/2] media: dt-bindings: i2c: toshiba,et8ek8: Convert to DT schema
  2025-12-27 11:23           ` Krzysztof Kozlowski
@ 2025-12-27 11:34             ` Laurent Pinchart
  0 siblings, 0 replies; 10+ messages in thread
From: Laurent Pinchart @ 2025-12-27 11:34 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: Alex Tran, Mauro Carvalho Chehab, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Pavel Machek, Sakari Ailus,
	Pavel Machek, linux-media, devicetree, linux-kernel

On Sat, Dec 27, 2025 at 12:23:15PM +0100, Krzysztof Kozlowski wrote:
> On 27/12/2025 12:12, Laurent Pinchart wrote:
> > Regarding flash-leds, none of the existing bindings set a constraint on
> > the number of items. I'm not sure there are use cases for more than two,
> > but the number of flash LEDs is not an intrinsic properties of the image
> > sensor. I think listing
> > 
> >   flash-leds: true
> > 
> > is correct. Sakari may have more information.
> 
> IOW, that's not a pin going from the sensor to the LED but rather final
> board/system design? And same sensor could be used that way with
> arbitrary number of LEDs?

Yes, those are LEDs typically controlled by a GPIO of the SoC, not LEDs
tied to a pin of the sensor. No LED, one LED or two LEDs are the most
common cases (the second LED would typically be an indicator LED, to
indicate when the camera is active), but a system could use more than
two at least in theory.

-- 
Regards,

Laurent Pinchart

^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2025-12-27 11:34 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-12-24 21:59 [PATCH v2 0/2] Convert et8ek8 and omap3isp bindings to DT schema Alex Tran
2025-12-24 21:59 ` [PATCH v2 1/2] media: dt-bindings: i2c: toshiba,et8ek8: Convert " Alex Tran
2025-12-25  8:40   ` Krzysztof Kozlowski
2025-12-25  8:57     ` Alex Tran
2025-12-25  9:08       ` Krzysztof Kozlowski
2025-12-27 11:12         ` Laurent Pinchart
2025-12-27 11:23           ` Krzysztof Kozlowski
2025-12-27 11:34             ` Laurent Pinchart
2025-12-24 21:59 ` [PATCH v2 2/2] media: dt-bindings: ti,omap3isp: " Alex Tran
2025-12-25  8:44   ` Krzysztof Kozlowski

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox