* [PATCH 0/3] arm64: dts: imx93-11x11-evk: Add DY1212W-4856 LVDS panel
@ 2026-05-13 10:02 Liu Ying
2026-05-13 10:02 ` [PATCH 1/3] dt-bindings: soc: imx: fsl,imx93-media-blk-ctrl: Allow LVDS Display Bridge child node Liu Ying
` (2 more replies)
0 siblings, 3 replies; 5+ messages in thread
From: Liu Ying @ 2026-05-13 10:02 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Frank Li,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam, Peng Fan
Cc: devicetree, imx, linux-arm-kernel, linux-kernel, Liu Ying
Hi,
This patch series aims to add DY1212W-4856 [1] LVDS panel to i.MX93 11x11
EVK board.
Patch 1 allows LVDS Display Bridge (LDB) child node in i.MX93 mediamix
blk-ctrl DT binding.
Patch 2 adds LDB child node to mediamix blk-ctrl node in imx93.dtsi.
Patch 3 adds a DT overlay to support the DY1212W-4856 LVDS panel on
i.MX93 11x11 EVK board.
[1] https://www.nxp.com/design/design-center/development-boards-and-designs/dy1212w-4856-tft-lcd-panel-with-lvds-interface:DY1212W-4856
Signed-off-by: Liu Ying <victor.liu@nxp.com>
---
Liu Ying (3):
dt-bindings: soc: imx: fsl,imx93-media-blk-ctrl: Allow LVDS Display Bridge child node
arm64: dts: imx93: Add LVDS Display Bridge support
arm64: dts: imx93-11x11-evk: Add DY1212W-4856 LVDS panel
.../bindings/soc/imx/fsl,imx93-media-blk-ctrl.yaml | 38 ++++++++++
arch/arm64/boot/dts/freescale/Makefile | 4 ++
.../freescale/imx93-11x11-evk-dy1212w-4856.dtso | 81 ++++++++++++++++++++++
arch/arm64/boot/dts/freescale/imx93.dtsi | 37 ++++++++++
4 files changed, 160 insertions(+)
---
base-commit: e98d21c170b01ddef366f023bbfcf6b31509fa83
change-id: 20260513-imx93-ldb-c5a4194e41ce
Best regards,
--
Regards,
Liu Ying
^ permalink raw reply [flat|nested] 5+ messages in thread* [PATCH 1/3] dt-bindings: soc: imx: fsl,imx93-media-blk-ctrl: Allow LVDS Display Bridge child node 2026-05-13 10:02 [PATCH 0/3] arm64: dts: imx93-11x11-evk: Add DY1212W-4856 LVDS panel Liu Ying @ 2026-05-13 10:02 ` Liu Ying 2026-05-13 10:29 ` Marco Felsch 2026-05-13 10:02 ` [PATCH 2/3] arm64: dts: imx93: Add LVDS Display Bridge support Liu Ying 2026-05-13 10:02 ` [PATCH 3/3] arm64: dts: imx93-11x11-evk: Add DY1212W-4856 LVDS panel Liu Ying 2 siblings, 1 reply; 5+ messages in thread From: Liu Ying @ 2026-05-13 10:02 UTC (permalink / raw) To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Frank Li, Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam, Peng Fan Cc: devicetree, imx, linux-arm-kernel, linux-kernel, Liu Ying i.MX93 SoC mediamix blk-ctrl contains one LDB_CTRL register and one LVDS register which control video output through a LVDS interface. Allow the LVDS Display Bridge(LDB) child node and add the child node to example. Signed-off-by: Liu Ying <victor.liu@nxp.com> --- .../bindings/soc/imx/fsl,imx93-media-blk-ctrl.yaml | 38 ++++++++++++++++++++++ 1 file changed, 38 insertions(+) diff --git a/Documentation/devicetree/bindings/soc/imx/fsl,imx93-media-blk-ctrl.yaml b/Documentation/devicetree/bindings/soc/imx/fsl,imx93-media-blk-ctrl.yaml index d828c2e82965..ab563b457e07 100644 --- a/Documentation/devicetree/bindings/soc/imx/fsl,imx93-media-blk-ctrl.yaml +++ b/Documentation/devicetree/bindings/soc/imx/fsl,imx93-media-blk-ctrl.yaml @@ -26,6 +26,12 @@ properties: reg: maxItems: 1 + '#address-cells': + const: 1 + + '#size-cells': + const: 1 + '#power-domain-cells': const: 1 @@ -92,6 +98,11 @@ properties: - compatible - ports + bridge@20: + type: object + $ref: /schemas/display/bridge/fsl,ldb.yaml# + unevaluatedProperties: false + allOf: - if: properties: @@ -163,6 +174,8 @@ examples: <&clk IMX93_CLK_MIPI_DSI_GATE>; clock-names = "apb", "axi", "nic", "disp", "cam", "pxp", "lcdif", "isi", "csi", "dsi"; + #address-cells = <1>; + #size-cells = <1>; #power-domain-cells = <1>; dpi-bridge { @@ -190,4 +203,29 @@ examples: }; }; }; + + bridge@20 { + compatible = "fsl,imx93-ldb"; + reg = <0x20 0x4>, <0x24 0x4>; + reg-names = "ldb", "lvds"; + clocks = <&clk IMX93_CLK_LVDS_GATE>; + clock-names = "ldb"; + + ports { + #address-cells = <1>; + #size-cells = <0>; + + port@0 { + reg = <0>; + + endpoint { + remote-endpoint = <&lcdif_to_ldb>; + }; + }; + + port@1 { + reg = <1>; + }; + }; + }; }; -- 2.43.0 ^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [PATCH 1/3] dt-bindings: soc: imx: fsl,imx93-media-blk-ctrl: Allow LVDS Display Bridge child node 2026-05-13 10:02 ` [PATCH 1/3] dt-bindings: soc: imx: fsl,imx93-media-blk-ctrl: Allow LVDS Display Bridge child node Liu Ying @ 2026-05-13 10:29 ` Marco Felsch 0 siblings, 0 replies; 5+ messages in thread From: Marco Felsch @ 2026-05-13 10:29 UTC (permalink / raw) To: Liu Ying Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Frank Li, Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam, Peng Fan, devicetree, linux-kernel, linux-arm-kernel, imx Hi Liu, can we please wait for the outcome of this dicussion: https://lore.kernel.org/all/uyh5s6g7bvuufnhfjrmungp5dbyllxfrgfzaxno22knpxxojmj@qqvh75ezblpp/ before we're going further? Regards, Marco On 26-05-13, Liu Ying wrote: > i.MX93 SoC mediamix blk-ctrl contains one LDB_CTRL register and one LVDS > register which control video output through a LVDS interface. Allow the > LVDS Display Bridge(LDB) child node and add the child node to example. > > Signed-off-by: Liu Ying <victor.liu@nxp.com> > --- > .../bindings/soc/imx/fsl,imx93-media-blk-ctrl.yaml | 38 ++++++++++++++++++++++ > 1 file changed, 38 insertions(+) > > diff --git a/Documentation/devicetree/bindings/soc/imx/fsl,imx93-media-blk-ctrl.yaml b/Documentation/devicetree/bindings/soc/imx/fsl,imx93-media-blk-ctrl.yaml > index d828c2e82965..ab563b457e07 100644 > --- a/Documentation/devicetree/bindings/soc/imx/fsl,imx93-media-blk-ctrl.yaml > +++ b/Documentation/devicetree/bindings/soc/imx/fsl,imx93-media-blk-ctrl.yaml > @@ -26,6 +26,12 @@ properties: > reg: > maxItems: 1 > > + '#address-cells': > + const: 1 > + > + '#size-cells': > + const: 1 > + > '#power-domain-cells': > const: 1 > > @@ -92,6 +98,11 @@ properties: > - compatible > - ports > > + bridge@20: > + type: object > + $ref: /schemas/display/bridge/fsl,ldb.yaml# > + unevaluatedProperties: false > + > allOf: > - if: > properties: > @@ -163,6 +174,8 @@ examples: > <&clk IMX93_CLK_MIPI_DSI_GATE>; > clock-names = "apb", "axi", "nic", "disp", "cam", > "pxp", "lcdif", "isi", "csi", "dsi"; > + #address-cells = <1>; > + #size-cells = <1>; > #power-domain-cells = <1>; > > dpi-bridge { > @@ -190,4 +203,29 @@ examples: > }; > }; > }; > + > + bridge@20 { > + compatible = "fsl,imx93-ldb"; > + reg = <0x20 0x4>, <0x24 0x4>; > + reg-names = "ldb", "lvds"; > + clocks = <&clk IMX93_CLK_LVDS_GATE>; > + clock-names = "ldb"; > + > + ports { > + #address-cells = <1>; > + #size-cells = <0>; > + > + port@0 { > + reg = <0>; > + > + endpoint { > + remote-endpoint = <&lcdif_to_ldb>; > + }; > + }; > + > + port@1 { > + reg = <1>; > + }; > + }; > + }; > }; > > -- > 2.43.0 > > > -- #gernperDu #CallMeByMyFirstName Pengutronix e.K. | | Steuerwalder Str. 21 | https://www.pengutronix.de/ | 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-9 | ^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCH 2/3] arm64: dts: imx93: Add LVDS Display Bridge support 2026-05-13 10:02 [PATCH 0/3] arm64: dts: imx93-11x11-evk: Add DY1212W-4856 LVDS panel Liu Ying 2026-05-13 10:02 ` [PATCH 1/3] dt-bindings: soc: imx: fsl,imx93-media-blk-ctrl: Allow LVDS Display Bridge child node Liu Ying @ 2026-05-13 10:02 ` Liu Ying 2026-05-13 10:02 ` [PATCH 3/3] arm64: dts: imx93-11x11-evk: Add DY1212W-4856 LVDS panel Liu Ying 2 siblings, 0 replies; 5+ messages in thread From: Liu Ying @ 2026-05-13 10:02 UTC (permalink / raw) To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Frank Li, Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam, Peng Fan Cc: devicetree, imx, linux-arm-kernel, linux-kernel, Liu Ying Add LVDS Display Bridge(LDB) child node to mediamix blk-ctrl node so that video could be output through a LVDS interface. Signed-off-by: Liu Ying <victor.liu@nxp.com> --- arch/arm64/boot/dts/freescale/imx93.dtsi | 37 ++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) diff --git a/arch/arm64/boot/dts/freescale/imx93.dtsi b/arch/arm64/boot/dts/freescale/imx93.dtsi index b9abe143cb56..79fb4a15b733 100644 --- a/arch/arm64/boot/dts/freescale/imx93.dtsi +++ b/arch/arm64/boot/dts/freescale/imx93.dtsi @@ -178,6 +178,7 @@ &lcdif { port { lcdif_to_ldb: endpoint@1 { reg = <1>; + remote-endpoint = <&ldb_from_lcdif>; }; lcdif_to_dsi: endpoint@2 { @@ -186,6 +187,42 @@ lcdif_to_dsi: endpoint@2 { }; }; +&media_blk_ctrl { + #address-cells = <1>; + #size-cells = <1>; + + lvds_bridge: bridge@20 { + compatible = "fsl,imx93-ldb"; + reg = <0x20 0x4>, <0x24 0x4>; + reg-names = "ldb", "lvds"; + clocks = <&clk IMX93_CLK_LVDS_GATE>; + clock-names = "ldb"; + assigned-clocks = <&clk IMX93_CLK_MEDIA_LDB>; + assigned-clock-parents = <&clk IMX93_CLK_VIDEO_PLL>; + status = "disabled"; + + ports { + #address-cells = <1>; + #size-cells = <0>; + + port@0 { + reg = <0>; + + ldb_from_lcdif: endpoint { + remote-endpoint = <&lcdif_to_ldb>; + }; + }; + + port@1 { + reg = <1>; + + ldb_lvds_ch0: endpoint { + }; + }; + }; + }; +}; + &src { mlmix: power-domain@44461800 { compatible = "fsl,imx93-src-slice"; -- 2.43.0 ^ permalink raw reply related [flat|nested] 5+ messages in thread
* [PATCH 3/3] arm64: dts: imx93-11x11-evk: Add DY1212W-4856 LVDS panel 2026-05-13 10:02 [PATCH 0/3] arm64: dts: imx93-11x11-evk: Add DY1212W-4856 LVDS panel Liu Ying 2026-05-13 10:02 ` [PATCH 1/3] dt-bindings: soc: imx: fsl,imx93-media-blk-ctrl: Allow LVDS Display Bridge child node Liu Ying 2026-05-13 10:02 ` [PATCH 2/3] arm64: dts: imx93: Add LVDS Display Bridge support Liu Ying @ 2026-05-13 10:02 ` Liu Ying 2 siblings, 0 replies; 5+ messages in thread From: Liu Ying @ 2026-05-13 10:02 UTC (permalink / raw) To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Frank Li, Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam, Peng Fan Cc: devicetree, imx, linux-arm-kernel, linux-kernel, Liu Ying DY1212W-4856 [1] is a 12.1" (WXGA) TFT LCD panel with LVDS interface. The panel's 40-pin connector allows it to be directly connected to i.MX93 11x11 EVK board. Link: https://www.nxp.com/design/design-center/development-boards-and-designs/dy1212w-4856-tft-lcd-panel-with-lvds-interface:DY1212W-4856 [1] Signed-off-by: Liu Ying <victor.liu@nxp.com> --- arch/arm64/boot/dts/freescale/Makefile | 4 ++ .../freescale/imx93-11x11-evk-dy1212w-4856.dtso | 81 ++++++++++++++++++++++ 2 files changed, 85 insertions(+) diff --git a/arch/arm64/boot/dts/freescale/Makefile b/arch/arm64/boot/dts/freescale/Makefile index d1bb303962db..42f655986987 100644 --- a/arch/arm64/boot/dts/freescale/Makefile +++ b/arch/arm64/boot/dts/freescale/Makefile @@ -467,6 +467,10 @@ dtb-$(CONFIG_ARCH_MXC) += imx93-9x9-qsb-i3c.dtb dtb-$(CONFIG_ARCH_MXC) += imx93-9x9-qsb-ontat-kd50g21-40nt-a1.dtb dtb-$(CONFIG_ARCH_MXC) += imx93-11x11-evk.dtb + +imx93-11x11-evk-dy1212w-4856-dtbs += imx93-11x11-evk.dtb imx93-11x11-evk-dy1212w-4856.dtbo +dtb-$(CONFIG_ARCH_MXC) += imx93-11x11-evk-dy1212w-4856.dtb + dtb-$(CONFIG_ARCH_MXC) += imx93-11x11-frdm.dtb imx93-11x11-frdm-pixpaper-dtbs += imx93-11x11-frdm.dtb imx93-11x11-frdm-pixpaper.dtbo diff --git a/arch/arm64/boot/dts/freescale/imx93-11x11-evk-dy1212w-4856.dtso b/arch/arm64/boot/dts/freescale/imx93-11x11-evk-dy1212w-4856.dtso new file mode 100644 index 000000000000..35f7c5699e3a --- /dev/null +++ b/arch/arm64/boot/dts/freescale/imx93-11x11-evk-dy1212w-4856.dtso @@ -0,0 +1,81 @@ +// SPDX-License-Identifier: (GPL-2.0+ OR MIT) +/* + * Copyright 2026 NXP + */ + +/dts-v1/; +/plugin/; + +#include <dt-bindings/clock/imx93-clock.h> + +&{/} { + panel-lvds { + compatible = "boe,ev121wxm-n10-1850"; + backlight = <&backlight_lvds>; + power-supply = <&buck4>; + + panel-timing { + /* + * Set clock frequency to 71142858Hz to accommodate + * IMX93_CLK_VIDEO_PLL rate at 498000000Hz in a rate + * table. + */ + clock-frequency = <71142858>; + hactive = <1280>; + vactive = <800>; + hfront-porch = <48>; + hback-porch = <80>; + hsync-len = <32>; + vfront-porch = <3>; + vback-porch = <14>; + vsync-len = <6>; + }; + + port { + panel_lvds_in: endpoint { + remote-endpoint = <&ldb_lvds_ch0>; + }; + }; + }; +}; + +&backlight_lvds { + status = "okay"; +}; + +&lcdif { + status = "okay"; +}; + +&lvds_bridge { + status = "okay"; + + ports { + #address-cells = <1>; + #size-cells = <0>; + + port@1 { + reg = <1>; + + ldb_lvds_ch0: endpoint { + remote-endpoint = <&panel_lvds_in>; + }; + }; + }; +}; + +&media_blk_ctrl { + assigned-clocks = <&clk IMX93_CLK_MEDIA_AXI>, + <&clk IMX93_CLK_MEDIA_APB>, + <&clk IMX93_CLK_MEDIA_DISP_PIX>, + <&clk IMX93_CLK_VIDEO_PLL>; + assigned-clock-parents = <&clk IMX93_CLK_SYS_PLL_PFD1>, + <&clk IMX93_CLK_SYS_PLL_PFD1_DIV2>, + <&clk IMX93_CLK_VIDEO_PLL>; + /* + * Set IMX93_CLK_MEDIA_DISP_PIX rate to 71142858Hz to accommodate + * IMX93_CLK_VIDEO_PLL rate at 498000000Hz in a rate table. + */ + assigned-clock-rates = <400000000>, <133333333>, <71142858>, <498000000>; + status = "okay"; +}; -- 2.43.0 ^ permalink raw reply related [flat|nested] 5+ messages in thread
end of thread, other threads:[~2026-05-13 10:29 UTC | newest] Thread overview: 5+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2026-05-13 10:02 [PATCH 0/3] arm64: dts: imx93-11x11-evk: Add DY1212W-4856 LVDS panel Liu Ying 2026-05-13 10:02 ` [PATCH 1/3] dt-bindings: soc: imx: fsl,imx93-media-blk-ctrl: Allow LVDS Display Bridge child node Liu Ying 2026-05-13 10:29 ` Marco Felsch 2026-05-13 10:02 ` [PATCH 2/3] arm64: dts: imx93: Add LVDS Display Bridge support Liu Ying 2026-05-13 10:02 ` [PATCH 3/3] arm64: dts: imx93-11x11-evk: Add DY1212W-4856 LVDS panel Liu Ying
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox