From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 9942A106FD83 for ; Fri, 13 Mar 2026 06:16:40 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id B49E610E02F; Fri, 13 Mar 2026 06:16:36 +0000 (UTC) Authentication-Results: gabe.freedesktop.org; dkim=pass (2048-bit key; unprotected) header.d=kernel.org header.i=@kernel.org header.b="NplAZ1gq"; dkim-atps=neutral Received: from sea.source.kernel.org (sea.source.kernel.org [172.234.252.31]) by gabe.freedesktop.org (Postfix) with ESMTPS id 956B710E02F for ; Fri, 13 Mar 2026 06:16:35 +0000 (UTC) Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by sea.source.kernel.org (Postfix) with ESMTP id 3071543BA4; Fri, 13 Mar 2026 06:16:35 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPS id C5D1AC2BC9E; Fri, 13 Mar 2026 06:16:34 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1773382594; bh=vNpHLDPv+cZHiKujD0Jc7flLZg/tYZ6tG/s2x5Dg7Hs=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=NplAZ1gqhk6l1JT4QVbwUSu6yfYuYKoemTuK2jw09B88B0Ota+wJSR6TXg/+bakcX V13dRgCZ9QSeUWtAkfGl9fYJK8HpC7NZdfTSKLUwHh9+HKNkkiWXXd4RJpWb0CQd6/ 8EGL+rwpJ3I1aV9PVO9PWeWtgVI9jV3hznlZHBKN1ZbWUucoQjRQMOzLNqT63s36Hl Tq4PCehtMZvzVZncaySgW6vVxJ0VPZ909VdbCA9ZBDC6YBgz/nR5p3LW3x7bdWn5Q5 r6PnVcExGEnKqCXRZbGNv/Odhiv5tXXLEQ8va+0tzbYnLb5xqJniDJXrutDAbUg4jm pLnqtI/n2JiyQ== Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id B1923106FD85; Fri, 13 Mar 2026 06:16:34 +0000 (UTC) From: Hermes Wu via B4 Relay Date: Fri, 13 Mar 2026 14:16:00 +0800 Subject: [PATCH v3 1/2] dt-bindings: display: bridge: Add ITE IT6162 MIPI DSI to HDMI bridge MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit Message-Id: <20260313-upstream-6162-v3-1-8497fb7c4406@ite.com.tw> References: <20260313-upstream-6162-v3-0-8497fb7c4406@ite.com.tw> In-Reply-To: <20260313-upstream-6162-v3-0-8497fb7c4406@ite.com.tw> To: Andrzej Hajda , Neil Armstrong , Robert Foss , Laurent Pinchart , Jonas Karlman , Jernej Skrabec , David Airlie , Simona Vetter , Maarten Lankhorst , Maxime Ripard , Thomas Zimmermann , Rob Herring , Krzysztof Kozlowski , Conor Dooley Cc: Pet.Weng@ite.com.tw, Kenneth.Hung@ite.com.tw, Hermes Wu , dri-devel@lists.freedesktop.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Hermes Wu X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1773382593; l=6431; i=Hermes.wu@ite.com.tw; s=20241230; h=from:subject:message-id; bh=hNHRtDu2GpmT1JtbX1jpk1nZ1HBCOUHNGhquoRan+Qs=; b=bIV4PzFrUxunbr8SXkURS85Y6TIxYgmpXo7gd2LfPfJQckSoiTTVmbCR3W+Cq+byGq/uM/LXF u6Y9LL1+nwkCRgUcS5jPyY1t1jmu6x5Ds9+CPidHeSw2Jp5SnCXLld1 X-Developer-Key: i=Hermes.wu@ite.com.tw; a=ed25519; pk=qho5Dawp2WWj9CGyjtJ6/Y10xH8odjRdS6SXDaDAerU= X-Endpoint-Received: by B4 Relay for Hermes.wu@ite.com.tw/20241230 with auth_id=310 X-Original-From: Hermes Wu X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: Hermes.wu@ite.com.tw Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" From: Hermes Wu 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 --- 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 + +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 + #include + + 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