All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v5 0/3] dt-bindings: display: ti,tpd12s015: convert, and fix what the conversion exposed
@ 2026-10-12  8:52 ` Quchaosheng
  0 siblings, 0 replies; 7+ messages in thread
From: Quchaosheng @ 2026-10-12  8:52 UTC (permalink / raw)
  To: Laurent Pinchart, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
	Tomi Valkeinen
  Cc: dri-devel, devicetree, linux-omap, linux-kernel, Chaosheng Qu

From: Chaosheng Qu <quchaosheng000406@163.com>

v5 of the tpd12s015 conversion.

  [1/3] converts ti,tpd12s015.txt to DT schema.

  [2/3] drops two gpio entries from omap5-igep0050.dts that nothing reads:
        the binding and both drivers describe three gpios, and the extra
        two have no pinctrl group and no other consumer in the tree.

  [3/3] drops the unit-address from the tpd12s015 endpoints on
        am5729-beagleboneai and am57xx-idk, which carry one without a
        matching reg property.

Patches 2 and 3 remove warnings that the bare conversion leaves behind:

  am5729-beagleboneai:  241 -> 237 dtbs_check warnings
  omap5-igep0050:       188 -> 186 dtbs_check warnings

with no new warnings in either file.

Changes in v5:
 - ports: use "$ref: /schemas/graph.yaml#/properties/port" and drop the
   unevaluatedProperties lines.  Neither port carries anything beyond the
   graph properties.  Reported by Rob.
 - description: drop the "|" block scalar.
 - no other change from v4.

The sashiko finding that gpios lacks "minItems: 3" is not valid.  Rob
explained that dt-schema makes the two bounds equal when only one of them
is given, so "maxItems: 3" already means exactly three.

Eduard Bostina posted the same conversion on 2026-07-30,
<20260730092245.52034-1-egbostina@gmail.com>.  If his series is the one to
carry this, say so and I will drop mine.

Chaosheng Qu (3):
  dt-bindings: display: ti,tpd12s015: Convert to DT schema
  ARM: dts: ti/omap: drop the two unused gpios from the igep0050 hdmi
    encoder
  ARM: dts: ti/omap: drop unit-address from tpd12s015 endpoints

 .../bindings/display/ti/ti,tpd12s015.txt      | 44 ----------
 .../bindings/display/ti/ti,tpd12s015.yaml     | 88 +++++++++++++++++++
 .../boot/dts/ti/omap/am5729-beagleboneai.dts  |  4 +-
 .../boot/dts/ti/omap/am57xx-idk-common.dtsi   |  4 +-
 arch/arm/boot/dts/ti/omap/omap5-igep0050.dts  |  4 +-
 5 files changed, 93 insertions(+), 51 deletions(-)
 delete mode 100644 Documentation/devicetree/bindings/display/ti/ti,tpd12s015.txt
 create mode 100644 Documentation/devicetree/bindings/display/ti/ti,tpd12s015.yaml

-- 
2.43.0


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

* [PATCH v5 0/3] dt-bindings: display: ti, tpd12s015: convert, and fix what the conversion exposed
@ 2026-10-12  8:52 ` Quchaosheng
  0 siblings, 0 replies; 7+ messages in thread
From: Quchaosheng @ 2026-10-12  8:52 UTC (permalink / raw)
  To: Laurent Pinchart, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
	Tomi Valkeinen
  Cc: dri-devel, devicetree, linux-omap, linux-kernel, Chaosheng Qu

From: Chaosheng Qu <quchaosheng000406@163.com>

v5 of the tpd12s015 conversion.

  [1/3] converts ti,tpd12s015.txt to DT schema.

  [2/3] drops two gpio entries from omap5-igep0050.dts that nothing reads:
        the binding and both drivers describe three gpios, and the extra
        two have no pinctrl group and no other consumer in the tree.

  [3/3] drops the unit-address from the tpd12s015 endpoints on
        am5729-beagleboneai and am57xx-idk, which carry one without a
        matching reg property.

Patches 2 and 3 remove warnings that the bare conversion leaves behind:

  am5729-beagleboneai:  241 -> 237 dtbs_check warnings
  omap5-igep0050:       188 -> 186 dtbs_check warnings

with no new warnings in either file.

Changes in v5:
 - ports: use "$ref: /schemas/graph.yaml#/properties/port" and drop the
   unevaluatedProperties lines.  Neither port carries anything beyond the
   graph properties.  Reported by Rob.
 - description: drop the "|" block scalar.
 - no other change from v4.

The sashiko finding that gpios lacks "minItems: 3" is not valid.  Rob
explained that dt-schema makes the two bounds equal when only one of them
is given, so "maxItems: 3" already means exactly three.

Eduard Bostina posted the same conversion on 2026-07-30,
<20260730092245.52034-1-egbostina@gmail.com>.  If his series is the one to
carry this, say so and I will drop mine.

Chaosheng Qu (3):
  dt-bindings: display: ti,tpd12s015: Convert to DT schema
  ARM: dts: ti/omap: drop the two unused gpios from the igep0050 hdmi
    encoder
  ARM: dts: ti/omap: drop unit-address from tpd12s015 endpoints

 .../bindings/display/ti/ti,tpd12s015.txt      | 44 ----------
 .../bindings/display/ti/ti,tpd12s015.yaml     | 88 +++++++++++++++++++
 .../boot/dts/ti/omap/am5729-beagleboneai.dts  |  4 +-
 .../boot/dts/ti/omap/am57xx-idk-common.dtsi   |  4 +-
 arch/arm/boot/dts/ti/omap/omap5-igep0050.dts  |  4 +-
 5 files changed, 93 insertions(+), 51 deletions(-)
 delete mode 100644 Documentation/devicetree/bindings/display/ti/ti,tpd12s015.txt
 create mode 100644 Documentation/devicetree/bindings/display/ti/ti,tpd12s015.yaml

-- 
2.43.0


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

* [PATCH v5 1/3] dt-bindings: display: ti,tpd12s015: Convert to DT schema
  2026-10-12  8:52 ` [PATCH v5 0/3] dt-bindings: display: ti, tpd12s015: " Quchaosheng
@ 2026-10-12  8:52   ` Quchaosheng
  -1 siblings, 0 replies; 7+ messages in thread
From: Quchaosheng @ 2026-10-12  8:52 UTC (permalink / raw)
  To: Laurent Pinchart, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
	Tomi Valkeinen
  Cc: dri-devel, devicetree, linux-omap, linux-kernel, Chaosheng Qu

From: Chaosheng Qu <quchaosheng000406@163.com>

Convert the TPD12S015 HDMI level shifter binding to DT schema.

The TI TPD12S015 is an HDMI companion chip that combines a level shifter
and ESD protection circuitry. Document the two ports it exposes between
the HDMI transmitter and the connector.

The tpd12s016 is software compatible with the tpd12s015 and is listed as
a fallback compatible by am57xx-idk-common.dtsi, so accept it as a
fallback of "ti,tpd12s015". The driver matches on "ti,tpd12s015" only, so
a board using the tpd12s016 must list both compatibles.

The ports carry no properties beyond the graph ones, so each port takes
the plain graph port schema.

Assisted-by: LLM
Signed-off-by: Chaosheng Qu <quchaosheng000406@163.com>
---
 .../bindings/display/ti/ti,tpd12s015.txt      | 44 ----------
 .../bindings/display/ti/ti,tpd12s015.yaml     | 88 +++++++++++++++++++
 2 files changed, 88 insertions(+), 44 deletions(-)
 delete mode 100644 Documentation/devicetree/bindings/display/ti/ti,tpd12s015.txt
 create mode 100644 Documentation/devicetree/bindings/display/ti/ti,tpd12s015.yaml

diff --git a/Documentation/devicetree/bindings/display/ti/ti,tpd12s015.txt b/Documentation/devicetree/bindings/display/ti/ti,tpd12s015.txt
deleted file mode 100644
index 26e6d32e3f20..000000000000
--- a/Documentation/devicetree/bindings/display/ti/ti,tpd12s015.txt
+++ /dev/null
@@ -1,44 +0,0 @@
-TPD12S015 HDMI level shifter and ESD protection chip
-====================================================
-
-Required properties:
-- compatible: "ti,tpd12s015"
-
-Optional properties:
-- gpios: CT CP HPD, LS OE and HPD gpios
-
-Required nodes:
-- Video port 0 for HDMI input
-- Video port 1 for HDMI output
-
-Example
--------
-
-tpd12s015: encoder@1 {
-	compatible = "ti,tpd12s015";
-
-	gpios = <&gpio2 28 GPIO_ACTIVE_HIGH>,	/* 60, CT CP HPD */
-		<&gpio2 9 GPIO_ACTIVE_HIGH>,	/* 41, LS OE */
-		<&gpio2 31 GPIO_ACTIVE_HIGH>;	/* 63, HPD */
-
-	ports {
-		#address-cells = <1>;
-		#size-cells = <0>;
-
-		port@0 {
-			reg = <0>;
-
-			tpd12s015_in: endpoint@0 {
-				remote-endpoint = <&hdmi_out>;
-			};
-		};
-
-		port@1 {
-			reg = <1>;
-
-			tpd12s015_out: endpoint@0 {
-				remote-endpoint = <&hdmi_connector_in>;
-			};
-		};
-	};
-};
diff --git a/Documentation/devicetree/bindings/display/ti/ti,tpd12s015.yaml b/Documentation/devicetree/bindings/display/ti/ti,tpd12s015.yaml
new file mode 100644
index 000000000000..5955f2e6421c
--- /dev/null
+++ b/Documentation/devicetree/bindings/display/ti/ti,tpd12s015.yaml
@@ -0,0 +1,88 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/display/ti/ti,tpd12s015.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: TI TPD12S015 HDMI level shifter and ESD protection chip
+
+maintainers:
+  - Tomi Valkeinen <tomi.valkeinen@ideasonboard.com>
+
+description:
+  The TPD12S015 is an HDMI companion chip that combines a level shifter and
+  ESD protection circuitry. It sits between an HDMI transmitter and the HDMI
+  connector, and provides control over the level shifter enable and the
+  hot-plug detect signals.
+
+properties:
+  compatible:
+    oneOf:
+      - const: ti,tpd12s015
+      - items:
+          - const: ti,tpd12s016
+          - const: ti,tpd12s015
+
+  gpios:
+    description:
+      The CT CP HPD, LS OE and HPD GPIOs, in that order. The first controls
+      the level shifter, the second enables the level shifter outputs and
+      the third reads the hot-plug detect line.
+    maxItems: 3
+
+  ports:
+    $ref: /schemas/graph.yaml#/properties/ports
+
+    properties:
+      port@0:
+        $ref: /schemas/graph.yaml#/properties/port
+        description: HDMI input from the transmitter.
+
+      port@1:
+        $ref: /schemas/graph.yaml#/properties/port
+        description: HDMI output to the connector.
+
+    required:
+      - port@0
+      - port@1
+
+required:
+  - compatible
+  - ports
+
+additionalProperties: false
+
+examples:
+  - |
+    #include <dt-bindings/gpio/gpio.h>
+
+    encoder1 {
+        compatible = "ti,tpd12s015";
+
+        gpios = <&gpio2 28 GPIO_ACTIVE_HIGH>,    /* 60, CT CP HPD */
+                <&gpio2 9 GPIO_ACTIVE_HIGH>,    /* 41, LS OE */
+                <&gpio2 31 GPIO_ACTIVE_HIGH>;    /* 63, HPD */
+
+        ports {
+            #address-cells = <1>;
+            #size-cells = <0>;
+
+            port@0 {
+                reg = <0>;
+
+                tpd12s015_in: endpoint {
+                    remote-endpoint = <&hdmi_out>;
+                };
+            };
+
+            port@1 {
+                reg = <1>;
+
+                tpd12s015_out: endpoint {
+                    remote-endpoint = <&hdmi_connector_in>;
+                };
+            };
+        };
+    };
+
+...
-- 
2.43.0


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

* [PATCH v5 1/3] dt-bindings: display: ti, tpd12s015: Convert to DT schema
@ 2026-10-12  8:52   ` Quchaosheng
  0 siblings, 0 replies; 7+ messages in thread
From: Quchaosheng @ 2026-10-12  8:52 UTC (permalink / raw)
  To: Laurent Pinchart, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
	Tomi Valkeinen
  Cc: dri-devel, devicetree, linux-omap, linux-kernel, Chaosheng Qu

From: Chaosheng Qu <quchaosheng000406@163.com>

Convert the TPD12S015 HDMI level shifter binding to DT schema.

The TI TPD12S015 is an HDMI companion chip that combines a level shifter
and ESD protection circuitry. Document the two ports it exposes between
the HDMI transmitter and the connector.

The tpd12s016 is software compatible with the tpd12s015 and is listed as
a fallback compatible by am57xx-idk-common.dtsi, so accept it as a
fallback of "ti,tpd12s015". The driver matches on "ti,tpd12s015" only, so
a board using the tpd12s016 must list both compatibles.

The ports carry no properties beyond the graph ones, so each port takes
the plain graph port schema.

Assisted-by: LLM
Signed-off-by: Chaosheng Qu <quchaosheng000406@163.com>
---
 .../bindings/display/ti/ti,tpd12s015.txt      | 44 ----------
 .../bindings/display/ti/ti,tpd12s015.yaml     | 88 +++++++++++++++++++
 2 files changed, 88 insertions(+), 44 deletions(-)
 delete mode 100644 Documentation/devicetree/bindings/display/ti/ti,tpd12s015.txt
 create mode 100644 Documentation/devicetree/bindings/display/ti/ti,tpd12s015.yaml

diff --git a/Documentation/devicetree/bindings/display/ti/ti,tpd12s015.txt b/Documentation/devicetree/bindings/display/ti/ti,tpd12s015.txt
deleted file mode 100644
index 26e6d32e3f20..000000000000
--- a/Documentation/devicetree/bindings/display/ti/ti,tpd12s015.txt
+++ /dev/null
@@ -1,44 +0,0 @@
-TPD12S015 HDMI level shifter and ESD protection chip
-====================================================
-
-Required properties:
-- compatible: "ti,tpd12s015"
-
-Optional properties:
-- gpios: CT CP HPD, LS OE and HPD gpios
-
-Required nodes:
-- Video port 0 for HDMI input
-- Video port 1 for HDMI output
-
-Example
--------
-
-tpd12s015: encoder@1 {
-	compatible = "ti,tpd12s015";
-
-	gpios = <&gpio2 28 GPIO_ACTIVE_HIGH>,	/* 60, CT CP HPD */
-		<&gpio2 9 GPIO_ACTIVE_HIGH>,	/* 41, LS OE */
-		<&gpio2 31 GPIO_ACTIVE_HIGH>;	/* 63, HPD */
-
-	ports {
-		#address-cells = <1>;
-		#size-cells = <0>;
-
-		port@0 {
-			reg = <0>;
-
-			tpd12s015_in: endpoint@0 {
-				remote-endpoint = <&hdmi_out>;
-			};
-		};
-
-		port@1 {
-			reg = <1>;
-
-			tpd12s015_out: endpoint@0 {
-				remote-endpoint = <&hdmi_connector_in>;
-			};
-		};
-	};
-};
diff --git a/Documentation/devicetree/bindings/display/ti/ti,tpd12s015.yaml b/Documentation/devicetree/bindings/display/ti/ti,tpd12s015.yaml
new file mode 100644
index 000000000000..5955f2e6421c
--- /dev/null
+++ b/Documentation/devicetree/bindings/display/ti/ti,tpd12s015.yaml
@@ -0,0 +1,88 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/display/ti/ti,tpd12s015.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: TI TPD12S015 HDMI level shifter and ESD protection chip
+
+maintainers:
+  - Tomi Valkeinen <tomi.valkeinen@ideasonboard.com>
+
+description:
+  The TPD12S015 is an HDMI companion chip that combines a level shifter and
+  ESD protection circuitry. It sits between an HDMI transmitter and the HDMI
+  connector, and provides control over the level shifter enable and the
+  hot-plug detect signals.
+
+properties:
+  compatible:
+    oneOf:
+      - const: ti,tpd12s015
+      - items:
+          - const: ti,tpd12s016
+          - const: ti,tpd12s015
+
+  gpios:
+    description:
+      The CT CP HPD, LS OE and HPD GPIOs, in that order. The first controls
+      the level shifter, the second enables the level shifter outputs and
+      the third reads the hot-plug detect line.
+    maxItems: 3
+
+  ports:
+    $ref: /schemas/graph.yaml#/properties/ports
+
+    properties:
+      port@0:
+        $ref: /schemas/graph.yaml#/properties/port
+        description: HDMI input from the transmitter.
+
+      port@1:
+        $ref: /schemas/graph.yaml#/properties/port
+        description: HDMI output to the connector.
+
+    required:
+      - port@0
+      - port@1
+
+required:
+  - compatible
+  - ports
+
+additionalProperties: false
+
+examples:
+  - |
+    #include <dt-bindings/gpio/gpio.h>
+
+    encoder1 {
+        compatible = "ti,tpd12s015";
+
+        gpios = <&gpio2 28 GPIO_ACTIVE_HIGH>,    /* 60, CT CP HPD */
+                <&gpio2 9 GPIO_ACTIVE_HIGH>,    /* 41, LS OE */
+                <&gpio2 31 GPIO_ACTIVE_HIGH>;    /* 63, HPD */
+
+        ports {
+            #address-cells = <1>;
+            #size-cells = <0>;
+
+            port@0 {
+                reg = <0>;
+
+                tpd12s015_in: endpoint {
+                    remote-endpoint = <&hdmi_out>;
+                };
+            };
+
+            port@1 {
+                reg = <1>;
+
+                tpd12s015_out: endpoint {
+                    remote-endpoint = <&hdmi_connector_in>;
+                };
+            };
+        };
+    };
+
+...
-- 
2.43.0


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

* [PATCH v5 2/3] ARM: dts: ti/omap: drop the two unused gpios from the igep0050 hdmi encoder
  2026-10-12  8:52 ` [PATCH v5 0/3] dt-bindings: display: ti, tpd12s015: " Quchaosheng
  (?)
  (?)
@ 2026-10-12  8:52 ` Quchaosheng
  -1 siblings, 0 replies; 7+ messages in thread
From: Quchaosheng @ 2026-10-12  8:52 UTC (permalink / raw)
  To: Laurent Pinchart, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
	Tomi Valkeinen
  Cc: dri-devel, devicetree, linux-omap, linux-kernel, Chaosheng Qu

From: Chaosheng Qu <quchaosheng000406@163.com>

omap5-igep0050.dts gives the tpd12s015 node five gpios. The binding, the
DRM driver and the fbdev driver all describe three: CT CP HPD, LS OE and
HPD. Nothing in the file references the extra two, there is no pinctrl
group for them and no other consumer in the tree.

Drop them so the node matches what the hardware and the drivers actually
use.

Assisted-by: LLM
Signed-off-by: Chaosheng Qu <quchaosheng000406@163.com>
---
 arch/arm/boot/dts/ti/omap/omap5-igep0050.dts | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/arch/arm/boot/dts/ti/omap/omap5-igep0050.dts b/arch/arm/boot/dts/ti/omap/omap5-igep0050.dts
index 0368e32f67e7..8e8325936cda 100644
--- a/arch/arm/boot/dts/ti/omap/omap5-igep0050.dts
+++ b/arch/arm/boot/dts/ti/omap/omap5-igep0050.dts
@@ -102,9 +102,7 @@ OMAP5_IOPAD(0x086, PIN_INPUT | MUX_MODE6)	/* gpio4_118 */
 &tpd12s015 {
 	gpios = <&tca6416 11 0>,	/* TCA6416 P01, CT_CP_HDP */
 		<&tca6416 12 0>,	/* TCA6416 P00, LS_OE*/
-		<&gpio7 1 0>,		/* 193, HPD */
-		<&gpio7 2 0>,		/* 194, SCL */
-		<&gpio7 3 0>;		/* 195, SDA */
+		<&gpio7 1 0>;		/* 193, HPD */
 };
 
 &twl6040 {
-- 
2.43.0


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

* [PATCH v5 3/3] ARM: dts: ti/omap: drop unit-address from tpd12s015 endpoints
  2026-10-12  8:52 ` [PATCH v5 0/3] dt-bindings: display: ti, tpd12s015: " Quchaosheng
                   ` (2 preceding siblings ...)
  (?)
@ 2026-10-12  8:52 ` Quchaosheng
  -1 siblings, 0 replies; 7+ messages in thread
From: Quchaosheng @ 2026-10-12  8:52 UTC (permalink / raw)
  To: Laurent Pinchart, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
	Tomi Valkeinen
  Cc: dri-devel, devicetree, linux-omap, linux-kernel, Chaosheng Qu

From: Chaosheng Qu <quchaosheng000406@163.com>

The endpoints under the tpd12s015 ports on am5729-beagleboneai and
am57xx-idk carry a unit-address without a matching reg property, which
dtc warns about:

  Warning (unit_address_vs_reg): .../endpoint@0: node has a unit name,
  but no reg or ranges property

Drop the unit-address.

Assisted-by: LLM
Signed-off-by: Chaosheng Qu <quchaosheng000406@163.com>
---
 arch/arm/boot/dts/ti/omap/am5729-beagleboneai.dts | 4 ++--
 arch/arm/boot/dts/ti/omap/am57xx-idk-common.dtsi  | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/arch/arm/boot/dts/ti/omap/am5729-beagleboneai.dts b/arch/arm/boot/dts/ti/omap/am5729-beagleboneai.dts
index 76bfb364777e..f40017a0e414 100644
--- a/arch/arm/boot/dts/ti/omap/am5729-beagleboneai.dts
+++ b/arch/arm/boot/dts/ti/omap/am5729-beagleboneai.dts
@@ -168,7 +168,7 @@ ports {
 			port@0 {
 				reg = <0x0>;
 
-				hdmi_encoder_in: endpoint@0 {
+				hdmi_encoder_in: endpoint {
 					remote-endpoint = <&hdmi_out>;
 				};
 			};
@@ -176,7 +176,7 @@ hdmi_encoder_in: endpoint@0 {
 			port@1 {
 				reg = <0x1>;
 
-				hdmi_encoder_out: endpoint@0 {
+				hdmi_encoder_out: endpoint {
 					remote-endpoint = <&hdmi_connector_in>;
 				};
 			};
diff --git a/arch/arm/boot/dts/ti/omap/am57xx-idk-common.dtsi b/arch/arm/boot/dts/ti/omap/am57xx-idk-common.dtsi
index 5eccff3bb4b6..4e8a5820b05c 100644
--- a/arch/arm/boot/dts/ti/omap/am57xx-idk-common.dtsi
+++ b/arch/arm/boot/dts/ti/omap/am57xx-idk-common.dtsi
@@ -135,7 +135,7 @@ ports {
 			port@0 {
 				reg = <0>;
 
-				tpd12s015_in: endpoint@0 {
+				tpd12s015_in: endpoint {
 					remote-endpoint = <&hdmi_out>;
 				};
 			};
@@ -143,7 +143,7 @@ tpd12s015_in: endpoint@0 {
 			port@1 {
 				reg = <1>;
 
-				tpd12s015_out: endpoint@0 {
+				tpd12s015_out: endpoint {
 					remote-endpoint = <&hdmi_connector_in>;
 				};
 			};
-- 
2.43.0


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

* Re: [PATCH v5 1/3] dt-bindings: display: ti,tpd12s015: Convert to DT schema
  2026-10-12  8:52   ` [PATCH v5 1/3] dt-bindings: display: ti, tpd12s015: " Quchaosheng
  (?)
@ 2026-10-12  9:02   ` sashiko-bot
  -1 siblings, 0 replies; 7+ messages in thread
From: sashiko-bot @ 2026-10-12  9:02 UTC (permalink / raw)
  To: Quchaosheng; +Cc: dri-devel, robh, conor+dt, devicetree

Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:
- [Medium] dt-bindings: display: ti,tpd12s015: missing minItems and required for gpios
--

commit fc9c522935b9c669ac75f93cec8daaa7860a7102
Author: Chaosheng Qu <quchaosheng000406@163.com>

dt-bindings: display: ti,tpd12s015: Convert to DT schema
    
Convert the TPD12S015 HDMI level shifter binding to DT schema.
The TI TPD12S015 is an HDMI companion chip that combines a level shifter
and ESD protection circuitry. Document the two ports it exposes between
the HDMI transmitter and the connector.

> diff --git a/Documentation/devicetree/bindings/display/ti/ti,tpd12s015.yaml b/Documentation/devicetree/bindings/display/ti/ti,tpd12s015.yaml
> new file mode 100644
> index 0000000000000..5955f2e6421c6
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/display/ti/ti,tpd12s015.yaml
[ ... ]
> +  gpios:
> +    description:
> +      The CT CP HPD, LS OE and HPD GPIOs, in that order. The first controls
> +      the level shifter, the second enables the level shifter outputs and
> +      the third reads the hot-plug detect line.
> +    maxItems: 3
> +
> +  ports:

[Severity: Medium]
Is it possible this schema should enforce a minimum item count and require the
gpios property?

If a device tree omits gpios or provides fewer than 3 items, the schema
validation will pass because it only defines maxItems: 3 and omits gpios from
the required list.

However, the driver unequivocally requires the third GPIO item (index 2).
If absent, the probe fails:

drivers/gpu/drm/bridge/ti-tpd12s015.c:tpd12s015_probe() {
    ...
	gpio = devm_gpiod_get_index(&pdev->dev, NULL, 2, GPIOD_IN);
	if (IS_ERR(gpio))
		return PTR_ERR(gpio);
    ...
}

Should the schema enforce minItems: 3 and add gpios to the required list to
match the driver's mandatory requirement?

Additionally, due to a preexisting bug in the driver, if this probe aborts it
will leak the tpd->bridge.next_bridge module reference.

-- 
Sashiko AI review · https://sashiko.dev/#/patchset/20261012085237.377612-2-quchaosheng000406@163.com?part=1

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

end of thread, other threads:[~2026-10-13  7:53 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-10-12  8:52 [PATCH v5 0/3] dt-bindings: display: ti,tpd12s015: convert, and fix what the conversion exposed Quchaosheng
2026-10-12  8:52 ` [PATCH v5 0/3] dt-bindings: display: ti, tpd12s015: " Quchaosheng
2026-10-12  8:52 ` [PATCH v5 1/3] dt-bindings: display: ti,tpd12s015: Convert to DT schema Quchaosheng
2026-10-12  8:52   ` [PATCH v5 1/3] dt-bindings: display: ti, tpd12s015: " Quchaosheng
2026-10-12  9:02   ` [PATCH v5 1/3] dt-bindings: display: ti,tpd12s015: " sashiko-bot
2026-10-12  8:52 ` [PATCH v5 2/3] ARM: dts: ti/omap: drop the two unused gpios from the igep0050 hdmi encoder Quchaosheng
2026-10-12  8:52 ` [PATCH v5 3/3] ARM: dts: ti/omap: drop unit-address from tpd12s015 endpoints Quchaosheng

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.