Hi Dmitry, Thank you for the patch. On Sun, Aug 27, 2023 at 12:54:29AM +0300, Dmitry Baryshkov wrote: > The SK-ATM0700D4-Plug is an extension board (provided by the same > manufacturer, [1]) which can be connected to the SK-IMX53 panel kit. The > panel can be connected either using the RGB parallel bus or using the > LVDS connector (recommended). Add DT files describing this "shield", > both RGB and LVDS connections. Shouldn't these be implemented as overlays ? > [1] http://starterkit.ru/html/index.php?name=shop&op=view&id=64 > > Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@xxxxxxxxxx> > --- > arch/arm/boot/dts/nxp/imx/Makefile | 2 + > .../nxp/imx/imx53-sk-imx53-atm0700d4-lvds.dts | 97 +++++++++++++++ > .../nxp/imx/imx53-sk-imx53-atm0700d4-rgb.dts | 112 ++++++++++++++++++ > .../dts/nxp/imx/imx53-sk-imx53-atm0700d4.dtsi | 45 +++++++ > 4 files changed, 256 insertions(+) > create mode 100644 arch/arm/boot/dts/nxp/imx/imx53-sk-imx53-atm0700d4-lvds.dts > create mode 100644 arch/arm/boot/dts/nxp/imx/imx53-sk-imx53-atm0700d4-rgb.dts > create mode 100644 arch/arm/boot/dts/nxp/imx/imx53-sk-imx53-atm0700d4.dtsi > > diff --git a/arch/arm/boot/dts/nxp/imx/Makefile b/arch/arm/boot/dts/nxp/imx/Makefile > index 3629e343d322..7532ed6468a0 100644 > --- a/arch/arm/boot/dts/nxp/imx/Makefile > +++ b/arch/arm/boot/dts/nxp/imx/Makefile > @@ -47,6 +47,8 @@ dtb-$(CONFIG_SOC_IMX53) += \ > imx53-qsb.dtb \ > imx53-qsrb.dtb \ > imx53-sk-imx53.dtb \ > + imx53-sk-imx53-atm0700d4-lvds.dtb \ > + imx53-sk-imx53-atm0700d4-rgb.dtb \ > imx53-smd.dtb \ > imx53-tx53-x03x.dtb \ > imx53-tx53-x13x.dtb \ > diff --git a/arch/arm/boot/dts/nxp/imx/imx53-sk-imx53-atm0700d4-lvds.dts b/arch/arm/boot/dts/nxp/imx/imx53-sk-imx53-atm0700d4-lvds.dts > new file mode 100644 > index 000000000000..b1c1e7c759b3 > --- /dev/null > +++ b/arch/arm/boot/dts/nxp/imx/imx53-sk-imx53-atm0700d4-lvds.dts > @@ -0,0 +1,97 @@ > +// SPDX-License-Identifier: GPL-2.0+ > +// > +// Copyright 2023 Linaro Ltd. > + > +/dts-v1/; > + > +#include <dt-bindings/pwm/pwm.h> > +#include "imx53-sk-imx53-atm0700d4.dtsi" > + > +/ { > + lvds-decoder { > + compatible = "ti,sn65lvds94", "lvds-decoder"; > + > + ports { > + #address-cells = <1>; > + #size-cells = <0>; > + > + port@0 { > + reg = <0>; > + > + lvds_decoder_in: endpoint { > + remote-endpoint = <&lvds0_out>; > + }; > + }; > + > + port@1 { > + reg = <1>; > + > + lvds_decoder_out: endpoint { > + remote-endpoint = <&panel_rgb_in>; > + }; > + }; > + }; > + }; > +}; > + > +&iomuxc { > + pinctrl_lvds0: lvds0grp { > + /* LVDS pins only have pin mux configuration */ > + fsl,pins = < > + MX53_PAD_LVDS0_CLK_P__LDB_LVDS0_CLK 0x80000000 > + MX53_PAD_LVDS0_TX0_P__LDB_LVDS0_TX0 0x80000000 > + MX53_PAD_LVDS0_TX1_P__LDB_LVDS0_TX1 0x80000000 > + MX53_PAD_LVDS0_TX2_P__LDB_LVDS0_TX2 0x80000000 > + MX53_PAD_LVDS0_TX3_P__LDB_LVDS0_TX3 0x80000000 > + >; > + }; > + > + pinctrl_spi_gpio: spigrp { > + fsl,pins = < > + MX53_PAD_EIM_A22__GPIO2_16 0x1f4 > + MX53_PAD_EIM_A21__GPIO2_17 0x1f4 > + MX53_PAD_EIM_A16__GPIO2_22 0x1f4 > + MX53_PAD_EIM_A18__GPIO2_20 0x1f4 > + >; > + }; > +}; > + > +&ldb { > + pinctrl-names = "default"; > + pinctrl-0 = <&pinctrl_lvds0>; > + status = "okay"; > + > + lvds0: lvds-channel@0 { > + reg = <0>; > + fsl,data-mapping = "spwg"; > + fsl,data-width = <24>; > + status = "okay"; > + > + port@2 { > + reg = <2>; > + > + lvds0_out: endpoint { > + remote-endpoint = <&lvds_decoder_in>; > + }; > + }; > + }; > +}; > + > +&panel_rgb_in { > + remote-endpoint = <&lvds_decoder_out>; > +}; > + > +&spi_ts { > + pinctrl-0 = <&pinctrl_spi_gpio>; > + pinctrl-names = "default"; > + > + sck-gpios = <&gpio2 16 GPIO_ACTIVE_HIGH>; > + miso-gpios = <&gpio2 22 GPIO_ACTIVE_HIGH>; > + mosi-gpios = <&gpio2 17 GPIO_ACTIVE_HIGH>; > + cs-gpios = <&gpio2 20 GPIO_ACTIVE_HIGH>; > +}; > + > +&touchscreen { > + interrupts-extended = <&gpio3 22 IRQ_TYPE_EDGE_BOTH>; > + pendown-gpio = <&gpio3 22 GPIO_ACTIVE_LOW>; > +}; > diff --git a/arch/arm/boot/dts/nxp/imx/imx53-sk-imx53-atm0700d4-rgb.dts b/arch/arm/boot/dts/nxp/imx/imx53-sk-imx53-atm0700d4-rgb.dts > new file mode 100644 > index 000000000000..2559ada7e401 > --- /dev/null > +++ b/arch/arm/boot/dts/nxp/imx/imx53-sk-imx53-atm0700d4-rgb.dts > @@ -0,0 +1,112 @@ > +// SPDX-License-Identifier: GPL-2.0+ > +// > +// Copyright 2023 Linaro Ltd. > + > +/dts-v1/; > + > +#include <dt-bindings/pwm/pwm.h> > +#include "imx53-sk-imx53-atm0700d4.dtsi" > + > +/ { > + display: disp0 { > + compatible = "fsl,imx-parallel-display"; > + interface-pix-fmt = "rgb24"; > + pinctrl-0 = <&pinctrl_rgb24>; > + pinctrl-names = "default"; > + > + #address-cells = <1>; > + #size-cells = <0>; > + > + port@0 { > + reg = <0>; > + > + display0_in: endpoint { > + remote-endpoint = <&ipu_di0_disp0>; > + }; > + }; > + > + port@1 { > + reg = <1>; > + > + display_out: endpoint { > + remote-endpoint = <&panel_rgb_in>; > + }; > + }; > + }; > + > +}; > + > +&iomuxc { > + pinctrl_rgb24: rgb24grp { > + fsl,pins = < > + MX53_PAD_DI0_DISP_CLK__IPU_DI0_DISP_CLK 0x5 > + MX53_PAD_DI0_PIN15__IPU_DI0_PIN15 0x5 > + MX53_PAD_DI0_PIN2__IPU_DI0_PIN2 0x5 > + MX53_PAD_DI0_PIN3__IPU_DI0_PIN3 0x5 > + MX53_PAD_DISP0_DAT0__IPU_DISP0_DAT_0 0x5 > + MX53_PAD_DISP0_DAT1__IPU_DISP0_DAT_1 0x5 > + MX53_PAD_DISP0_DAT2__IPU_DISP0_DAT_2 0x5 > + MX53_PAD_DISP0_DAT3__IPU_DISP0_DAT_3 0x5 > + MX53_PAD_DISP0_DAT4__IPU_DISP0_DAT_4 0x5 > + MX53_PAD_DISP0_DAT5__IPU_DISP0_DAT_5 0x5 > + MX53_PAD_DISP0_DAT6__IPU_DISP0_DAT_6 0x5 > + MX53_PAD_DISP0_DAT7__IPU_DISP0_DAT_7 0x5 > + MX53_PAD_DISP0_DAT8__IPU_DISP0_DAT_8 0x5 > + MX53_PAD_DISP0_DAT9__IPU_DISP0_DAT_9 0x5 > + MX53_PAD_DISP0_DAT10__IPU_DISP0_DAT_10 0x5 > + MX53_PAD_DISP0_DAT11__IPU_DISP0_DAT_11 0x5 > + MX53_PAD_DISP0_DAT12__IPU_DISP0_DAT_12 0x5 > + MX53_PAD_DISP0_DAT13__IPU_DISP0_DAT_13 0x5 > + MX53_PAD_DISP0_DAT14__IPU_DISP0_DAT_14 0x5 > + MX53_PAD_DISP0_DAT15__IPU_DISP0_DAT_15 0x5 > + MX53_PAD_DISP0_DAT16__IPU_DISP0_DAT_16 0x5 > + MX53_PAD_DISP0_DAT17__IPU_DISP0_DAT_17 0x5 > + MX53_PAD_DISP0_DAT18__IPU_DISP0_DAT_18 0x5 > + MX53_PAD_DISP0_DAT19__IPU_DISP0_DAT_19 0x5 > + MX53_PAD_DISP0_DAT20__IPU_DISP0_DAT_20 0x5 > + MX53_PAD_DISP0_DAT21__IPU_DISP0_DAT_21 0x5 > + MX53_PAD_DISP0_DAT22__IPU_DISP0_DAT_22 0x5 > + MX53_PAD_DISP0_DAT23__IPU_DISP0_DAT_23 0x5 > + >; > + }; > + > + pinctrl_spi_gpio: spigrp { > + fsl,pins = < > + MX53_PAD_SD1_DATA1__GPIO1_17 0x1f4 > + MX53_PAD_GPIO_7__GPIO1_7 0x1f4 > + MX53_PAD_PATA_DATA3__GPIO2_3 0x1f4 > + MX53_PAD_PATA_DATA8__GPIO2_8 0x1f4 > + >; > + }; > +}; > + > +&ipu_di0_disp0 { > + remote-endpoint = <&display0_in>; > +}; > + > +&panel { > + enable-gpios = <&gpio1 9 GPIO_ACTIVE_HIGH>; > +}; > + > +&panel_rgb_in { > + remote-endpoint = <&display_out>; > +}; > + > +&pwm1 { > + status = "disabled"; > +}; > + > +&spi_ts { > + pinctrl-0 = <&pinctrl_spi_gpio>; > + pinctrl-names = "default"; > + > + sck-gpios = <&gpio1 7 GPIO_ACTIVE_HIGH>; > + mosi-gpios = <&gpio2 3 GPIO_ACTIVE_HIGH>; > + miso-gpios = <&gpio1 17 GPIO_ACTIVE_HIGH>; > + cs-gpios = <&gpio2 8 GPIO_ACTIVE_HIGH>; > +}; > + > +&touchscreen { > + interrupts-extended = <&gpio2 6 IRQ_TYPE_EDGE_BOTH>; > + pendown-gpio = <&gpio2 6 GPIO_ACTIVE_LOW>; > +}; > diff --git a/arch/arm/boot/dts/nxp/imx/imx53-sk-imx53-atm0700d4.dtsi b/arch/arm/boot/dts/nxp/imx/imx53-sk-imx53-atm0700d4.dtsi > new file mode 100644 > index 000000000000..e395004e80e6 > --- /dev/null > +++ b/arch/arm/boot/dts/nxp/imx/imx53-sk-imx53-atm0700d4.dtsi > @@ -0,0 +1,45 @@ > +// SPDX-License-Identifier: GPL-2.0+ > +// > +// Copyright 2023 Linaro Ltd. > + > +/dts-v1/; > + > +#include <dt-bindings/pwm/pwm.h> > +#include "imx53-sk-imx53.dts" > + > +/ { > + panel: panel-rgb { > + compatible = "powertip,ph800480t013-idf02"; > + > + port { > + panel_rgb_in: endpoint { > + }; > + }; > + }; > + > + spi_ts: spi { > + compatible = "spi-gpio"; > + #address-cells = <0x1>; > + #size-cells = <0x0>; > + > + num-chipselects = <1>; > + > + touchscreen: touchscreen@0 { > + reg = <0>; > + compatible = "ti,ads7843"; > + spi-max-frequency = <300000>; > + > + ti,vref-mv = /bits/ 16 <3300>; > + ti,x-plate-ohms = /bits/ 16 <450>; > + ti,y-plate-ohms = /bits/ 16 <250>; > + ti,debounce-tol = /bits/ 16 <10>; > + ti,debounce-rep = /bits/ 16 <0>; > + touchscreen-size-x = <4096>; > + touchscreen-size-y = <4096>; > + touchscreen-swapped-x-y; > + touchscreen-max-pressure = <100>; > + > + wakeup-source; > + }; > + }; > +}; -- Regards, Laurent Pinchart