From: Hermes Wu <Hermes.wu@ite.com.tw>
Add device tree binding documentation for the ITE IT6162 MIPI DSI to
HDMI 2.0 bridge chip. The IT6162 is an I2C-controlled bridge that
supports the following configurations:
- Single MIPI DSI input: up to 4K @ 30Hz
- Dual MIPI DSI input (combined): up to 4K @ 60Hz
The chip also supports up to 8-channel audio output via 4 I2S data
channels.
Signed-off-by: Hermes Wu <Hermes.wu@ite.com.tw>
---
Changes in v3:
- Fix lane-polarities: remove $ref redefinition, allow via video-interfaces.yaml
- Improve ite,support-hdcp description to clarify FW-based HDCP behavior
- Remove descriptions repeating schema constraints
- Remove stray comment in ports required section
- Fix data-lanes spacing in example: <1 2 3 4>
- Add missing newline at end of file
- Add missing change log that Reviewed-by tag was drop in V2.
Changes in V2:
- Drop Reviewed-by tag due to DT bindings changed.
- Add property "ite,spport-hdcp" to enable HDCP
- Add property "lane-polarities" and "clock-noncontinuous" for DSI
setting
---
.../bindings/display/bridge/ite,it6162.yaml | 178 +++++++++++++++++++++
1 file changed, 178 insertions(+)
diff --git a/Documentation/devicetree/bindings/display/bridge/ite,it6162.yaml b/Documentation/devicetree/bindings/display/bridge/ite,it6162.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..b33fd140a9932cff3ede342298488988d337477f
--- /dev/null
+++ b/Documentation/devicetree/bindings/display/bridge/ite,it6162.yaml
@@ -0,0 +1,178 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/display/bridge/ite,it6162.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: ITE IT6162 MIPI DSI to HDMI 2.0 Bridge
+
+maintainers:
+ - Hermes Wu <Hermes.Wu@ite.com.tw>
+
+description: |
+ The ITE IT6162 is a high-performance, low-power HDMI bridge that converts
+ 2 MIPI DSI signals to 1 HDMI 2.0 output. It supports dual MIPI D-PHY 2.0
+ links up to 10 Gbps each (20 Gbps total), compatible with DSI-2 v2.0.
+
+ The HDMI transmitter supports resolutions up to 4Kx2K@60Hz and is compliant
+ with HDMI 2.0 specifications.
+
+ For audio, it supports up to 8-channel LPCM via I2S (multi-line or TDM mode),
+ with optional S/PDIF or DSD (for SACD). Audio sampling rates up to 192 kHz
+ are supported.
+
+allOf:
+ - $ref: /schemas/sound/dai-common.yaml#
+
+properties:
+ compatible:
+ const: ite,it6162
+
+ reg:
+ maxItems: 1
+
+ interrupts:
+ maxItems: 1
+
+ reset-gpios:
+ maxItems: 1
+
+ ivdd-supply:
+ description: Core voltage supply
+
+ ovdd-supply:
+ description: I/O voltage supply
+
+ ovdd1833-supply:
+ description: Flexible I/O voltage supply (1.8V domain)
+
+ "#sound-dai-cells":
+ const: 0
+
+ ite,support-hdcp:
+ description: >
+ Enables FW-based HDCP 1.4 and 2.3 negotiation. When absent, the
+ bridge firmware will not attempt HDCP authentication regardless
+ of sink capability.
+ type: boolean
+
+ ports:
+ $ref: /schemas/graph.yaml#/properties/ports
+
+ properties:
+ port@0:
+ $ref: /schemas/graph.yaml#/$defs/port-base
+ unevaluatedProperties: false
+ description: Input port for MIPI DSI-0
+
+ properties:
+ endpoint:
+ $ref: /schemas/media/video-interfaces.yaml#
+ unevaluatedProperties: false
+ properties:
+ data-lanes: true
+ lane-polarities: true
+ clock-noncontinuous: true
+ required:
+ - data-lanes
+
+ port@1:
+ $ref: /schemas/graph.yaml#/$defs/port-base
+ unevaluatedProperties: false
+ description: Input port for MIPI DSI-1
+
+ properties:
+ endpoint:
+ $ref: /schemas/media/video-interfaces.yaml#
+ unevaluatedProperties: false
+ properties:
+ data-lanes: true
+ lane-polarities: true
+ clock-noncontinuous: true
+ required:
+ - data-lanes
+
+ port@2:
+ $ref: /schemas/graph.yaml#/properties/port
+ description: Audio input port
+
+ port@3:
+ $ref: /schemas/graph.yaml#/properties/port
+ description: HDMI output port
+
+ required:
+ - port@1
+
+required:
+ - compatible
+ - reg
+ - interrupts
+ - ports
+
+unevaluatedProperties: false
+
+examples:
+ - |
+ #include <dt-bindings/gpio/gpio.h>
+ #include <dt-bindings/interrupt-controller/irq.h>
+
+ i2c {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ bridge@58 {
+ compatible = "ite,it6162";
+ reg = <0x58>;
+
+ #sound-dai-cells = <0>;
+
+ interrupt-parent = <&pio>;
+ interrupts = <128 IRQ_TYPE_LEVEL_LOW>;
+
+ pinctrl-names = "default";
+ pinctrl-0 = <&it6162_pins>;
+
+ reset-gpios = <&pio 127 GPIO_ACTIVE_LOW>;
+
+ ivdd-supply = <&pp1000_hdmi_x>;
+ ovdd-supply = <&pp3300_vio28_x>;
+ ovdd1833-supply = <&pp1800_vcamio_x>;
+
+ ite,support-hdcp;
+
+ ports {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ port@0 {
+ reg = <0>;
+ it6162_dsi0: endpoint {
+ data-lanes = <1 2 3 4>;
+ remote-endpoint = <&dsi_0_out>;
+ };
+ };
+
+ port@1 {
+ reg = <1>;
+ it6162_dsi1: endpoint {
+ data-lanes = <1 2 3 4>;
+ remote-endpoint = <&dsi_1_out>;
+ };
+ };
+
+ port@2 {
+ reg = <2>;
+ it6162_audio_in: endpoint {
+ remote-endpoint = <&i2s0_out>;
+ };
+ };
+
+ port@3 {
+ reg = <3>;
+ it6162_hdmi_out: endpoint {
+ remote-endpoint = <&hdmi_connector_in>;
+ };
+ };
+ };
+ };
+ };
--
2.34.1
On Fri, Mar 13, 2026 at 02:16:00PM +0800, Hermes Wu wrote: > + required: > + - port@1 > + > +required: > + - compatible > + - reg > + - interrupts > + - ports Your driver clearly marks supplies and gpio as required. Probably much more, so all this is just not matching ABI you wrote. Best regards, Krzysztof
On Fri, Mar 13, 2026 at 02:16:00PM +0800, Hermes Wu wrote: > Add device tree binding documentation for the ITE IT6162 MIPI DSI to > HDMI 2.0 bridge chip. The IT6162 is an I2C-controlled bridge that > supports the following configurations: > > - Single MIPI DSI input: up to 4K @ 30Hz > - Dual MIPI DSI input (combined): up to 4K @ 60Hz > > The chip also supports up to 8-channel audio output via 4 I2S data > channels. > > Signed-off-by: Hermes Wu <Hermes.wu@ite.com.tw> > --- > Changes in v3: > - Fix lane-polarities: remove $ref redefinition, allow via video-interfaces.yaml > - Improve ite,support-hdcp description to clarify FW-based HDCP behavior > - Remove descriptions repeating schema constraints > - Remove stray comment in ports required section > - Fix data-lanes spacing in example: <1 2 3 4> > - Add missing newline at end of file > - Add missing change log that Reviewed-by tag was drop in V2. > > Changes in V2: > - Drop Reviewed-by tag due to DT bindings changed. > - Add property "ite,spport-hdcp" to enable HDCP > - Add property "lane-polarities" and "clock-noncontinuous" for DSI > setting > --- > .../bindings/display/bridge/ite,it6162.yaml | 178 +++++++++++++++++++++ > 1 file changed, 178 insertions(+) > > diff --git a/Documentation/devicetree/bindings/display/bridge/ite,it6162.yaml b/Documentation/devicetree/bindings/display/bridge/ite,it6162.yaml > new file mode 100644 > index 0000000000000000000000000000000000000000..b33fd140a9932cff3ede342298488988d337477f > --- /dev/null > +++ b/Documentation/devicetree/bindings/display/bridge/ite,it6162.yaml > @@ -0,0 +1,178 @@ > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/display/bridge/ite,it6162.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: ITE IT6162 MIPI DSI to HDMI 2.0 Bridge > + > +maintainers: > + - Hermes Wu <Hermes.Wu@ite.com.tw> > + > +description: | > + The ITE IT6162 is a high-performance, low-power HDMI bridge that converts > + 2 MIPI DSI signals to 1 HDMI 2.0 output. It supports dual MIPI D-PHY 2.0 > + links up to 10 Gbps each (20 Gbps total), compatible with DSI-2 v2.0. > + > + The HDMI transmitter supports resolutions up to 4Kx2K@60Hz and is compliant > + with HDMI 2.0 specifications. > + > + For audio, it supports up to 8-channel LPCM via I2S (multi-line or TDM mode), > + with optional S/PDIF or DSD (for SACD). Audio sampling rates up to 192 kHz > + are supported. > + > +allOf: > + - $ref: /schemas/sound/dai-common.yaml# > + > +properties: > + compatible: > + const: ite,it6162 > + > + reg: > + maxItems: 1 > + > + interrupts: > + maxItems: 1 > + > + reset-gpios: > + maxItems: 1 > + > + ivdd-supply: > + description: Core voltage supply > + > + ovdd-supply: > + description: I/O voltage supply > + > + ovdd1833-supply: > + description: Flexible I/O voltage supply (1.8V domain) > + > + "#sound-dai-cells": > + const: 0 > + > + ite,support-hdcp: I don't see how this property varies per board, since it is always the same chip with the same firmware. Drop property. > + description: > Drop > > + Enables FW-based HDCP 1.4 and 2.3 negotiation. When absent, the > + bridge firmware will not attempt HDCP authentication regardless > + of sink capability. > + type: boolean > + > + ports: > + $ref: /schemas/graph.yaml#/properties/ports > + > + properties: > + port@0: > + $ref: /schemas/graph.yaml#/$defs/port-base > + unevaluatedProperties: false > + description: Input port for MIPI DSI-0 > + > + properties: > + endpoint: > + $ref: /schemas/media/video-interfaces.yaml# > + unevaluatedProperties: false > + properties: > + data-lanes: true > + lane-polarities: true > + clock-noncontinuous: true Drop all three. Why did you add them? > + required: > + - data-lanes > + > + port@1: > + $ref: /schemas/graph.yaml#/$defs/port-base > + unevaluatedProperties: false > + description: Input port for MIPI DSI-1 > + > + properties: > + endpoint: > + $ref: /schemas/media/video-interfaces.yaml# > + unevaluatedProperties: false > + properties: > + data-lanes: true > + lane-polarities: true > + clock-noncontinuous: true Drop all three > + required: > + - data-lanes > + > + port@2: > + $ref: /schemas/graph.yaml#/properties/port > + description: Audio input port > + > + port@3: > + $ref: /schemas/graph.yaml#/properties/port > + description: HDMI output port > + > + required: > + - port@1 > + > +required: > + - compatible > + - reg > + - interrupts > + - ports Best regards, Krzysztof
On Fri, Mar 13, 2026 at 02:16:00PM +0800, Hermes Wu via B4 Relay wrote:
> From: Hermes Wu <Hermes.wu@ite.com.tw>
>
> Add device tree binding documentation for the ITE IT6162 MIPI DSI to
> HDMI 2.0 bridge chip. The IT6162 is an I2C-controlled bridge that
> supports the following configurations:
>
> - Single MIPI DSI input: up to 4K @ 30Hz
> - Dual MIPI DSI input (combined): up to 4K @ 60Hz
>
> The chip also supports up to 8-channel audio output via 4 I2S data
> channels.
>
> Signed-off-by: Hermes Wu <Hermes.wu@ite.com.tw>
> ---
> Changes in v3:
> - Fix lane-polarities: remove $ref redefinition, allow via video-interfaces.yaml
> - Improve ite,support-hdcp description to clarify FW-based HDCP behavior
> - Remove descriptions repeating schema constraints
> - Remove stray comment in ports required section
> - Fix data-lanes spacing in example: <1 2 3 4>
> - Add missing newline at end of file
> - Add missing change log that Reviewed-by tag was drop in V2.
>
> Changes in V2:
> - Drop Reviewed-by tag due to DT bindings changed.
> - Add property "ite,spport-hdcp" to enable HDCP
> - Add property "lane-polarities" and "clock-noncontinuous" for DSI
> setting
> ---
> .../bindings/display/bridge/ite,it6162.yaml | 178 +++++++++++++++++++++
> 1 file changed, 178 insertions(+)
>
> diff --git a/Documentation/devicetree/bindings/display/bridge/ite,it6162.yaml b/Documentation/devicetree/bindings/display/bridge/ite,it6162.yaml
> new file mode 100644
> index 0000000000000000000000000000000000000000..b33fd140a9932cff3ede342298488988d337477f
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/display/bridge/ite,it6162.yaml
> @@ -0,0 +1,178 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/display/bridge/ite,it6162.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: ITE IT6162 MIPI DSI to HDMI 2.0 Bridge
> +
> +maintainers:
> + - Hermes Wu <Hermes.Wu@ite.com.tw>
> +
> +description: |
> + The ITE IT6162 is a high-performance, low-power HDMI bridge that converts
> + 2 MIPI DSI signals to 1 HDMI 2.0 output. It supports dual MIPI D-PHY 2.0
> + links up to 10 Gbps each (20 Gbps total), compatible with DSI-2 v2.0.
> +
> + The HDMI transmitter supports resolutions up to 4Kx2K@60Hz and is compliant
> + with HDMI 2.0 specifications.
> +
> + For audio, it supports up to 8-channel LPCM via I2S (multi-line or TDM mode),
> + with optional S/PDIF or DSD (for SACD). Audio sampling rates up to 192 kHz
> + are supported.
> +
> + ite,support-hdcp;
Can it be detected / read from HW?
> +
> + ports {
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + port@0 {
> + reg = <0>;
Emty lines before subnodes.
> + it6162_dsi0: endpoint {
> + data-lanes = <1 2 3 4>;
Thies doesn't quite make sense on the sink side. Should it be set
instead on the source (DSI host) side? At least there it would make more
sense, especially if the host allows lane remapping.
> + remote-endpoint = <&dsi_0_out>;
> + };
> + };
> +
> + port@1 {
> + reg = <1>;
> + it6162_dsi1: endpoint {
> + data-lanes = <1 2 3 4>;
> + remote-endpoint = <&dsi_1_out>;
> + };
> + };
> +
> + port@2 {
> + reg = <2>;
> + it6162_audio_in: endpoint {
> + remote-endpoint = <&i2s0_out>;
> + };
> + };
> +
> + port@3 {
> + reg = <3>;
> + it6162_hdmi_out: endpoint {
> + remote-endpoint = <&hdmi_connector_in>;
> + };
> + };
> + };
> + };
> + };
>
> --
> 2.34.1
>
>
--
With best wishes
Dmitry
© 2016 - 2026 Red Hat, Inc.