From: Frank Li <[email protected]> Add lcd panel (waiken,101wx001-wct) support. This panel is only used at imx8dxl evk boards. And evk board only supports one panel.
Signed-off-by: Frank Li <[email protected]> --- Change in v3 - add panel info at overlay file. - add bus-width = <18>, which only connect 18 lines. - rename to waiken,101wx001-wct change in v2 - remove iomux hog (sashiko) - add power-supply --- arch/arm64/boot/dts/freescale/Makefile | 3 + .../dts/freescale/imx8dxl-evk-lcdif-101wx001.dtso | 119 +++++++++++++++++++++ 2 files changed, 122 insertions(+) diff --git a/arch/arm64/boot/dts/freescale/Makefile b/arch/arm64/boot/dts/freescale/Makefile index a80cccf34eb56..b5d5e6bd8ce06 100644 --- a/arch/arm64/boot/dts/freescale/Makefile +++ b/arch/arm64/boot/dts/freescale/Makefile @@ -113,6 +113,9 @@ dtb-$(CONFIG_ARCH_MXC) += imx8dx-colibri-iris-v2.dtb dtb-$(CONFIG_ARCH_MXC) += imx8dx-colibri-iris.dtb dtb-$(CONFIG_ARCH_MXC) += imx8dxl-evk.dtb +imx8dxl-evk-lcdif-101wx001-dtbs += imx8dxl-evk.dtb imx8dxl-evk-lcdif-101wx001.dtbo +dtb-$(CONFIG_ARCH_MXC) += imx8dxl-evk-lcdif-101wx001.dtb + imx8dxl-evk-pcie-ep-dtbs += imx8dxl-evk.dtb imx-pcie0-ep.dtbo dtb-$(CONFIG_ARCH_MXC) += imx8dxl-evk-pcie-ep.dtb DTC_FLAGS_imx8dxl-hummingboard-telematics := -@ diff --git a/arch/arm64/boot/dts/freescale/imx8dxl-evk-lcdif-101wx001.dtso b/arch/arm64/boot/dts/freescale/imx8dxl-evk-lcdif-101wx001.dtso new file mode 100644 index 0000000000000..39abf9b3884ea --- /dev/null +++ b/arch/arm64/boot/dts/freescale/imx8dxl-evk-lcdif-101wx001.dtso @@ -0,0 +1,119 @@ +// SPDX-License-Identifier: (GPL-2.0+ OR MIT) +/* + * Copyright 2026 NXP. + */ + +/dts-v1/; +/plugin/; + +#include <dt-bindings/gpio/gpio.h> +#include <dt-bindings/pinctrl/pads-imx8dxl.h> + +&{/} { + lcd_backlight: backlight { + compatible = "gpio-backlight"; + gpios = <&pca6416_1 5 GPIO_ACTIVE_HIGH>; + }; + + lcd-panel { + compatible = "waiken,101wx001-wct"; + backlight = <&lcd_backlight>; + power-supply = <®_lcd_3v3>; + + port { + panel_in: endpoint { + remote-endpoint = <&lcdif_out>; + }; + }; + }; + + reg_lcd_3v3: regulator-lcd-3v3 { + compatible = "regulator-fixed"; + regulator-name = "lcd3v3"; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + }; +}; + +&acm { + status = "disabled"; +}; + +&adma_lcdif { + pinctrl-0 = <&pinctrl_lcdif>, <&lcd_0_fun>, <&lcd_1_fun>, <&lcd_2_fun>, <&lcd_3_fun>; + pinctrl-names = "default"; + status = "okay"; + + port { + lcdif_out: endpoint { + bus-width = <18>; + remote-endpoint = <&panel_in>; + }; + }; +}; + +&cm40_lpuart { + status = "disabled"; +}; + +&eqos { + status = "disabled"; +}; + +&iomuxc { + pinctrl_lcdif: lcdifgrp { + fsl,pins = < + IMX8DXL_SPI3_SCK_ADMA_LCDIF_D00 0xe8000023 + IMX8DXL_SPI3_SDO_ADMA_LCDIF_D01 0xe8000023 + IMX8DXL_SPI3_SDI_ADMA_LCDIF_D02 0xe8000023 + IMX8DXL_ENET1_RGMII_TXD3_ADMA_LCDIF_D03 0xd0000023 + IMX8DXL_UART1_TX_ADMA_LCDIF_D04 0xe8000023 + IMX8DXL_UART1_RX_ADMA_LCDIF_D05 0xe8000023 + IMX8DXL_UART1_RTS_B_ADMA_LCDIF_D06 0xe8000023 + IMX8DXL_UART1_CTS_B_ADMA_LCDIF_D07 0xe8000023 + IMX8DXL_SPI0_SCK_ADMA_LCDIF_D08 0xe8000023 + IMX8DXL_SPI0_SDI_ADMA_LCDIF_D09 0xe8000023 + IMX8DXL_SPI0_SDO_ADMA_LCDIF_D10 0xe8000023 + IMX8DXL_SPI0_CS1_ADMA_LCDIF_D11 0xe8000023 + IMX8DXL_SPI0_CS0_ADMA_LCDIF_D12 0xe8000023 + IMX8DXL_ADC_IN1_ADMA_LCDIF_D13 0xe8200003 + IMX8DXL_ADC_IN0_ADMA_LCDIF_D14 0xe8200003 + IMX8DXL_ADC_IN3_ADMA_LCDIF_D15 0xe8200003 + IMX8DXL_ADC_IN2_ADMA_LCDIF_D16 0xe8200003 + IMX8DXL_ADC_IN5_ADMA_LCDIF_D17 0xe8200003 + IMX8DXL_SPI3_CS0_ADMA_LCDIF_HSYNC 0xd0000023 + IMX8DXL_SPI3_CS1_ADMA_LCDIF_RESET 0xd0000023 + IMX8DXL_MCLK_IN1_ADMA_LCDIF_EN 0xd0000023 + IMX8DXL_MCLK_IN0_ADMA_LCDIF_VSYNC 0xd0000023 + IMX8DXL_MCLK_OUT0_ADMA_LCDIF_CLK 0xd0000023 + >; + }; +}; + +&lpspi3 { + status = "disabled"; +}; + +&lpuart1 { + status = "disabled"; +}; + +&sai0 { + status = "disabled"; +}; + +&sai1 { + status = "disabled"; +}; + +&wm8960_1 { + status = "disabled"; +}; + +&wm8960_2 { + status = "disabled"; +}; + +&wm8960_3 { + status = "disabled"; +}; -- 2.43.0
