From nobody Tue Feb 10 10:55:04 2026 Received: from metis.whiteo.stw.pengutronix.de (metis.whiteo.stw.pengutronix.de [185.203.201.7]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 327553587B9 for ; Tue, 13 Jan 2026 19:07:39 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=185.203.201.7 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768331260; cv=none; b=eQ1AaVtnKcnzgBGc7OhOxlq0VG396N3RTp+VN9kN5VBEqwuUbNYu7KPUG/yFsHV2ZotMdmGxODzYvOCbPh4aEnJaMcpoWj1utmwPN+EhnDFXWk+XHk44qrYLidUcpZah85+uA1HF23M07DR8dM+tufTMwb+vIJUhzI14IBLkyOY= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768331260; c=relaxed/simple; bh=6GzEO5B1xEnUxV7yC8QlkAoYLKPFxG2WvfwOaqX2bWw=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=TihbSOtMb7TvKe+CHssLZ8c55L1ymreBUJf9vDQeFGEHHx9uQ2LS1W7qNSPzviWNo+yxbvuldApXKksJ9jSQHtZXUSjWc8EwHQMGvgDq7q081YGUAax82+vA8mCKylIIupQugajbKrD6kwpdtKqavmicpELHmvUptS1Wp58tyDE= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=pengutronix.de; spf=pass smtp.mailfrom=pengutronix.de; arc=none smtp.client-ip=185.203.201.7 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=pengutronix.de Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=pengutronix.de Received: from dude02.red.stw.pengutronix.de ([2a0a:edc0:0:1101:1d::28]) by metis.whiteo.stw.pengutronix.de with esmtp (Exim 4.92) (envelope-from ) id 1vfjjn-0008Q2-SD; Tue, 13 Jan 2026 20:07:31 +0100 From: Marco Felsch Date: Tue, 13 Jan 2026 20:07:29 +0100 Subject: [PATCH v8 3/3] arm64: dts: imx93: Add parallel display output nodes Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260113-v6-18-topic-imx93-parallel-display-v8-3-4abccdc473a5@pengutronix.de> References: <20260113-v6-18-topic-imx93-parallel-display-v8-0-4abccdc473a5@pengutronix.de> In-Reply-To: <20260113-v6-18-topic-imx93-parallel-display-v8-0-4abccdc473a5@pengutronix.de> To: Rob Herring , Krzysztof Kozlowski , Conor Dooley , Shawn Guo , Sascha Hauer , Pengutronix Kernel Team , Fabio Estevam , Peng Fan , Liu Ying , Andrzej Hajda , Neil Armstrong , Robert Foss , Laurent Pinchart , Jonas Karlman , Jernej Skrabec , Maarten Lankhorst , Maxime Ripard , Thomas Zimmermann , David Airlie , Simona Vetter Cc: devicetree@vger.kernel.org, imx@lists.linux.dev, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, kernel@pengutronix.de, Marco Felsch X-Mailer: b4 0.14.2 X-SA-Exim-Connect-IP: 2a0a:edc0:0:1101:1d::28 X-SA-Exim-Mail-From: m.felsch@pengutronix.de X-SA-Exim-Scanned: No (on metis.whiteo.stw.pengutronix.de); SAEximRunCond expanded to false X-PTX-Original-Recipient: linux-kernel@vger.kernel.org Add required OF nodes to support the i.MX93 parallel output (DPI) path. On the i.MX93 a single LCDIF is connected to three bridges: DPI, LVDS LDB and the MIPI-DSI whereas the i.MX91 support only the DPI bridge. Map endpoint@0 as DPI bridge output since the i.MX93 TRM (Figure 485. MEDIAMIX block diagram) doesn't mention any port-number <-> bridge combination. Set the MEDIA-AXI and MEDIA-APB clocks to the overdrive (OD) values since the i.MX93 and i.MX91 use the overdrive (OD) clk settings per default. Signed-off-by: Marco Felsch --- arch/arm64/boot/dts/freescale/imx91_93_common.dtsi | 54 ++++++++++++++++++= ++++ arch/arm64/boot/dts/freescale/imx93.dtsi | 12 +++++ 2 files changed, 66 insertions(+) diff --git a/arch/arm64/boot/dts/freescale/imx91_93_common.dtsi b/arch/arm6= 4/boot/dts/freescale/imx91_93_common.dtsi index 7958cef353766a430df5e626ff2403dc05a974b1..5a8813df6bc993d559fb0b20fc7= 42a106bfe6315 100644 --- a/arch/arm64/boot/dts/freescale/imx91_93_common.dtsi +++ b/arch/arm64/boot/dts/freescale/imx91_93_common.dtsi @@ -1122,8 +1122,62 @@ media_blk_ctrl: system-controller@4ac10000 { <&clk IMX93_CLK_MIPI_DSI_GATE>; clock-names =3D "apb", "axi", "nic", "disp", "cam", "pxp", "lcdif", "isi", "csi", "dsi"; + assigned-clocks =3D <&clk IMX93_CLK_MEDIA_AXI>, + <&clk IMX93_CLK_MEDIA_APB>, + <&clk IMX93_CLK_MEDIA_DISP_PIX>; + assigned-clock-parents =3D <&clk IMX93_CLK_SYS_PLL_PFD1>, + <&clk IMX93_CLK_SYS_PLL_PFD1_DIV2>, + <&clk IMX93_CLK_VIDEO_PLL>; + assigned-clock-rates =3D <400000000>, <133333333>; #power-domain-cells =3D <1>; status =3D "disabled"; + + dpi_bridge: dpi-bridge { + compatible =3D "nxp,imx93-pdfc"; + status =3D "disabled"; + + ports { + #address-cells =3D <1>; + #size-cells =3D <0>; + + port@0 { + reg =3D <0>; + + dpi_from_lcdif: endpoint { + remote-endpoint =3D <&lcdif_to_dpi>; + }; + }; + + port@1 { + reg =3D <1>; + + dpi_to_panel: endpoint { + }; + }; + }; + }; + }; + + lcdif: display-controller@4ae30000 { + compatible =3D "fsl,imx93-lcdif"; + reg =3D <0x4ae30000 0x23c>; + interrupts =3D ; + clocks =3D <&clk IMX93_CLK_MEDIA_DISP_PIX>, + <&clk IMX93_CLK_LCDIF_GATE>, + <&clk IMX93_CLK_MEDIA_AXI>; + clock-names =3D "pix", "axi", "disp_axi"; + power-domains =3D <&media_blk_ctrl IMX93_MEDIABLK_PD_LCDIF>; + status =3D "disabled"; + + port { + #address-cells =3D <1>; + #size-cells =3D <0>; + + lcdif_to_dpi: endpoint@0 { + reg =3D <0>; + remote-endpoint =3D <&dpi_from_lcdif>; + }; + }; }; =20 usbotg1: usb@4c100000 { diff --git a/arch/arm64/boot/dts/freescale/imx93.dtsi b/arch/arm64/boot/dts= /freescale/imx93.dtsi index 7b27012dfcb564650882dc8c40e836e797b2fda1..5436b48b30e89eb1f939b398ce1= bf105abe7e34b 100644 --- a/arch/arm64/boot/dts/freescale/imx93.dtsi +++ b/arch/arm64/boot/dts/freescale/imx93.dtsi @@ -150,6 +150,18 @@ l3_cache: l3-cache { }; }; =20 +&lcdif { + port { + lcdif_to_ldb: endpoint@1 { + reg =3D <1>; + }; + + lcdif_to_dsi: endpoint@2 { + reg =3D <2>; + }; + }; +}; + &src { mlmix: power-domain@44461800 { compatible =3D "fsl,imx93-src-slice"; --=20 2.47.3