From 9ea91adb929cb49a2cc8dc32dd9bd6c639ca2757 Mon Sep 17 00:00:00 2001 From: Emanuele Ghidoli Date: Mon, 20 Mar 2023 17:05:28 +0100 Subject: colibri-imx8x: move to one overlay per accessory Move the existing overlays to dtsi files and include them into one accessory dts. Provide data-mapping timings appropriately for each machine instead of the hardcoding and use a single overlay per SoC to avoid code duplication. Related-to: ELB-4754 Signed-off-by: Emanuele Ghidoli --- overlays/Makefile | 11 ++- overlays/colibri-imx8x_ad7879_overlay.dts | 17 ----- overlays/colibri-imx8x_ad7879_overlay.dtsi | 14 ++++ .../colibri-imx8x_atmel-mxt-adapter_overlay.dts | 37 ---------- .../colibri-imx8x_atmel-mxt-adapter_overlay.dtsi | 27 ++++++++ .../colibri-imx8x_atmel-mxt-connector_overlay.dts | 21 ------ .../colibri-imx8x_atmel-mxt-connector_overlay.dtsi | 15 ++++ overlays/colibri-imx8x_display-lcdif_overlay.dts | 49 ------------- overlays/colibri-imx8x_dsihdmi_overlay.dts | 6 +- ...i-imx8x_panel-cap-touch-10inch-lvds_overlay.dts | 22 ++++++ ...imx8x_panel-cap-touch-7inch_adapter_overlay.dts | 22 ++++++ ...colibri-imx8x_panel-cap-touch-7inch_overlay.dts | 19 +++++ ...colibri-imx8x_panel-res-touch-7inch_overlay.dts | 21 ++++++ .../colibri-imx8x_parallel-rgb-lvds_overlay.dts | 81 ---------------------- .../colibri-imx8x_parallel-rgb-lvds_overlay.dtsi | 63 +++++++++++++++++ overlays/colibri-imx8x_parallel-rgb_overlay.dts | 49 ------------- overlays/colibri-imx8x_parallel-rgb_overlay.dtsi | 42 +++++++++++ overlays/colibri-imx8x_vga-640x480_overlay.dts | 20 ++++++ overlays/display-dpi-lt170410_overlay.dtsi | 32 +++++++++ overlays/display-fullhd_overlay.dtsi | 28 ++++++++ overlays/display-lt161010_overlay.dtsi | 27 ++++++++ overlays/display-lt170410_overlay.dtsi | 30 ++++++++ overlays/display-vga-640x480_overlay.dtsi | 30 ++++++++ 23 files changed, 422 insertions(+), 261 deletions(-) delete mode 100644 overlays/colibri-imx8x_ad7879_overlay.dts create mode 100644 overlays/colibri-imx8x_ad7879_overlay.dtsi delete mode 100644 overlays/colibri-imx8x_atmel-mxt-adapter_overlay.dts create mode 100644 overlays/colibri-imx8x_atmel-mxt-adapter_overlay.dtsi delete mode 100644 overlays/colibri-imx8x_atmel-mxt-connector_overlay.dts create mode 100644 overlays/colibri-imx8x_atmel-mxt-connector_overlay.dtsi delete mode 100644 overlays/colibri-imx8x_display-lcdif_overlay.dts create mode 100644 overlays/colibri-imx8x_panel-cap-touch-10inch-lvds_overlay.dts create mode 100644 overlays/colibri-imx8x_panel-cap-touch-7inch_adapter_overlay.dts create mode 100644 overlays/colibri-imx8x_panel-cap-touch-7inch_overlay.dts create mode 100644 overlays/colibri-imx8x_panel-res-touch-7inch_overlay.dts delete mode 100644 overlays/colibri-imx8x_parallel-rgb-lvds_overlay.dts create mode 100644 overlays/colibri-imx8x_parallel-rgb-lvds_overlay.dtsi delete mode 100644 overlays/colibri-imx8x_parallel-rgb_overlay.dts create mode 100644 overlays/colibri-imx8x_parallel-rgb_overlay.dtsi create mode 100644 overlays/colibri-imx8x_vga-640x480_overlay.dts create mode 100644 overlays/display-dpi-lt170410_overlay.dtsi create mode 100644 overlays/display-fullhd_overlay.dtsi create mode 100644 overlays/display-lt161010_overlay.dtsi create mode 100644 overlays/display-lt170410_overlay.dtsi create mode 100644 overlays/display-vga-640x480_overlay.dtsi diff --git a/overlays/Makefile b/overlays/Makefile index 0c16417..7386810 100644 --- a/overlays/Makefile +++ b/overlays/Makefile @@ -30,15 +30,14 @@ dtb-y += apalis-imx8_panel-lvds-dual-channel-1080p_overlay.dtbo dtb-y += apalis-imx8_resistive-touch_overlay.dtbo dtb-y += apalis-imx8_spi1_spidev_overlay.dtbo dtb-y += apalis-imx8_spi2_spidev_overlay.dtbo -dtb-y += colibri-imx8x_ad7879_overlay.dtbo -dtb-y += colibri-imx8x_atmel-mxt-adapter_overlay.dtbo -dtb-y += colibri-imx8x_atmel-mxt-connector_overlay.dtbo dtb-y += colibri-imx8x_disable-cm40-uart_overlay.dtbo -dtb-y += colibri-imx8x_display-lcdif_overlay.dtbo dtb-y += colibri-imx8x_dsihdmi_overlay.dtbo dtb-y += colibri-imx8x_ov5640_overlay.dtbo -dtb-y += colibri-imx8x_parallel-rgb-lvds_overlay.dtbo -dtb-y += colibri-imx8x_parallel-rgb_overlay.dtbo +dtb-y += colibri-imx8x_panel-cap-touch-7inch_overlay.dtbo +dtb-y += colibri-imx8x_panel-cap-touch-7inch_adapter_overlay.dtbo +dtb-y += colibri-imx8x_panel-res-touch-7inch_overlay.dtbo +dtb-y += colibri-imx8x_panel-cap-touch-10inch-lvds_overlay.dtbo +dtb-y += colibri-imx8x_vga-640x480_overlay.dtbo dtb-y += colibri-imx8x_spidev_overlay.dtbo dtb-y += display-dpi-lt170410_overlay.dtbo dtb-y += display-edt5.7_overlay.dtbo diff --git a/overlays/colibri-imx8x_ad7879_overlay.dts b/overlays/colibri-imx8x_ad7879_overlay.dts deleted file mode 100644 index 0f6bad8..0000000 --- a/overlays/colibri-imx8x_ad7879_overlay.dts +++ /dev/null @@ -1,17 +0,0 @@ -// SPDX-License-Identifier: GPL-2.0-or-later OR MIT -/* - * Copyright 2020-2021 Toradex - */ - -// Enable the resistive touch controller (AD7879) on the module - -/dts-v1/; -/plugin/; - -/ { - compatible = "toradex,colibri-imx8x"; -}; - -&ad7879_ts { - status = "okay"; -}; diff --git a/overlays/colibri-imx8x_ad7879_overlay.dtsi b/overlays/colibri-imx8x_ad7879_overlay.dtsi new file mode 100644 index 0000000..582f1df --- /dev/null +++ b/overlays/colibri-imx8x_ad7879_overlay.dtsi @@ -0,0 +1,14 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT +/* + * Copyright 2020-2021 Toradex + */ + +// Enable the resistive touch controller (AD7879) on the module + +&ad7879_ts { + status = "okay"; +}; + +&i2c1 { + status = "okay"; +}; diff --git a/overlays/colibri-imx8x_atmel-mxt-adapter_overlay.dts b/overlays/colibri-imx8x_atmel-mxt-adapter_overlay.dts deleted file mode 100644 index 4b21c6a..0000000 --- a/overlays/colibri-imx8x_atmel-mxt-adapter_overlay.dts +++ /dev/null @@ -1,37 +0,0 @@ -// SPDX-License-Identifier: GPL-2.0-or-later OR MIT -/* - * Copyright 2020-2021 Toradex - */ - -// Atmel MXT touchscreen for Capacitive Touch Adapter. -// Supports the 7 inch and 10 inch capacitive touch displays orderable at Toradex. - -/dts-v1/; -/plugin/; - -#include "dt-bindings/interrupt-controller/irq.h" -#include "dt-bindings/gpio/gpio.h" - -/ { - compatible = "toradex,colibri-imx8x"; -}; - -&atmel_mxt_ts { - pinctrl-0 = <&pinctrl_atmel_adap>; - interrupt-parent = <&lsio_gpio0>; - interrupts = <21 IRQ_TYPE_EDGE_FALLING>; /* SODIMM 28 */ - reset-gpios = <&lsio_gpio0 22 GPIO_ACTIVE_LOW>; /* SODIMM 30 */ - status = "okay"; -}; - -&i2c1 { - status = "okay"; -}; - -&pwm0 { - status = "disabled"; -}; - -&pwm1 { - status = "disabled"; -}; diff --git a/overlays/colibri-imx8x_atmel-mxt-adapter_overlay.dtsi b/overlays/colibri-imx8x_atmel-mxt-adapter_overlay.dtsi new file mode 100644 index 0000000..3733961 --- /dev/null +++ b/overlays/colibri-imx8x_atmel-mxt-adapter_overlay.dtsi @@ -0,0 +1,27 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT +/* + * Copyright 2020-2021 Toradex + */ + +// Atmel MXT capacitive touch controller for 7" and 10.1" displays +// orderable at Toradex. Compatible with a Capacitive Touch Adapter. + +&atmel_mxt_ts { + pinctrl-0 = <&pinctrl_atmel_adap>; + interrupt-parent = <&lsio_gpio0>; + interrupts = <21 IRQ_TYPE_EDGE_FALLING>; /* SODIMM 28 */ + reset-gpios = <&lsio_gpio0 22 GPIO_ACTIVE_LOW>; /* SODIMM 30 */ + status = "okay"; +}; + +&i2c1 { + status = "okay"; +}; + +&lsio_pwm0 { + status = "disabled"; +}; + +&lsio_pwm1 { + status = "disabled"; +}; \ No newline at end of file diff --git a/overlays/colibri-imx8x_atmel-mxt-connector_overlay.dts b/overlays/colibri-imx8x_atmel-mxt-connector_overlay.dts deleted file mode 100644 index 1dfa586..0000000 --- a/overlays/colibri-imx8x_atmel-mxt-connector_overlay.dts +++ /dev/null @@ -1,21 +0,0 @@ -// SPDX-License-Identifier: GPL-2.0-or-later OR MIT -/* - * Copyright 2020-2021 Toradex - */ - -// Atmel MXT touchscreen for boards with TS connector. Supports the 7 inch and 10 inch display orderable at Toradex. - -/dts-v1/; -/plugin/; - -/ { - compatible = "toradex,colibri-imx8x"; -}; - -&atmel_mxt_ts { - status = "okay"; -}; - -&i2c1 { - status = "okay"; -}; diff --git a/overlays/colibri-imx8x_atmel-mxt-connector_overlay.dtsi b/overlays/colibri-imx8x_atmel-mxt-connector_overlay.dtsi new file mode 100644 index 0000000..ba54d36 --- /dev/null +++ b/overlays/colibri-imx8x_atmel-mxt-connector_overlay.dtsi @@ -0,0 +1,15 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT +/* + * Copyright 2020-2021 Toradex + */ + +// Atmel MXT capacitive touch controller for the 7" and 10.1" displays +// orderable at Toradex. Compatible with a Capacitive Touch Connector. + +&atmel_mxt_ts { + status = "okay"; +}; + +&i2c1 { + status = "okay"; +}; diff --git a/overlays/colibri-imx8x_display-lcdif_overlay.dts b/overlays/colibri-imx8x_display-lcdif_overlay.dts deleted file mode 100644 index 0976a22..0000000 --- a/overlays/colibri-imx8x_display-lcdif_overlay.dts +++ /dev/null @@ -1,49 +0,0 @@ -// SPDX-License-Identifier: GPL-2.0-or-later OR MIT -/* - * Copyright 2020-2021 Toradex - */ - -// Enable the parallel RGB interface on Colibri iMX8X using DPU-enabled driver - -/dts-v1/; -/plugin/; - -/ { - compatible = "toradex,colibri-imx8x"; -}; - -&adma_pwm { - status = "okay"; -}; - -&adma_pwm_lpcg { - status = "okay"; -}; - -&backlight { - status = "okay"; -}; - -&display_lcdif { - status = "okay"; - #address-cells = <1>; - #size-cells = <0>; - - port@1 { - reg = <1>; - - display_lcdif_out: endpoint { - remote-endpoint = <&lcd_panel_in>; - }; - }; -}; - -&panel_dpi { - status = "okay"; - - port { - lcd_panel_in: endpoint { - remote-endpoint = <&display_lcdif_out>; - }; - }; -}; diff --git a/overlays/colibri-imx8x_dsihdmi_overlay.dts b/overlays/colibri-imx8x_dsihdmi_overlay.dts index 2b7335c..afc9079 100644 --- a/overlays/colibri-imx8x_dsihdmi_overlay.dts +++ b/overlays/colibri-imx8x_dsihdmi_overlay.dts @@ -11,6 +11,10 @@ compatible = "toradex,colibri-imx8x"; }; +&hdmi_connector { + status = "okay"; +}; + &i2c0_mipi_lvds0 { status = "okay"; }; @@ -29,4 +33,4 @@ &pca9540_switch { status = "okay"; -}; +}; \ No newline at end of file diff --git a/overlays/colibri-imx8x_panel-cap-touch-10inch-lvds_overlay.dts b/overlays/colibri-imx8x_panel-cap-touch-10inch-lvds_overlay.dts new file mode 100644 index 0000000..7d84d2a --- /dev/null +++ b/overlays/colibri-imx8x_panel-cap-touch-10inch-lvds_overlay.dts @@ -0,0 +1,22 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT +/* + * Copyright 2023 Toradex + */ + +// Enable the parallel RGB interface on the Colibri iMX8X which communicate, +// through X1 SODIMM connector, with the LVDS transceiver on the Iris v2.0A +// connected with a capacitive touch 10.1" LVDS display. + +#include +#include + +/dts-v1/; +/plugin/; + +/ { + compatible = "toradex,colibri-imx8x"; +}; + +#include "colibri-imx8x_atmel-mxt-connector_overlay.dtsi" +#include "colibri-imx8x_parallel-rgb-lvds_overlay.dtsi" +#include "display-dpi-lt170410_overlay.dtsi" diff --git a/overlays/colibri-imx8x_panel-cap-touch-7inch_adapter_overlay.dts b/overlays/colibri-imx8x_panel-cap-touch-7inch_adapter_overlay.dts new file mode 100644 index 0000000..17daeda --- /dev/null +++ b/overlays/colibri-imx8x_panel-cap-touch-7inch_adapter_overlay.dts @@ -0,0 +1,22 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT +/* + * Copyright 2023 Toradex + */ + +// Enable the parallel RGB interface on the Colibri iMX8X with a +// connected capacitive touch 7" display, touch connected with +// a separate adapter pcb. + +#include +#include + +/dts-v1/; +/plugin/; + +/ { + compatible = "toradex,colibri-imx8x"; +}; + +#include "colibri-imx8x_atmel-mxt-adapter_overlay.dtsi" +#include "colibri-imx8x_parallel-rgb_overlay.dtsi" +#include "display-lt161010_overlay.dtsi" diff --git a/overlays/colibri-imx8x_panel-cap-touch-7inch_overlay.dts b/overlays/colibri-imx8x_panel-cap-touch-7inch_overlay.dts new file mode 100644 index 0000000..8154996 --- /dev/null +++ b/overlays/colibri-imx8x_panel-cap-touch-7inch_overlay.dts @@ -0,0 +1,19 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT +/* + * Copyright 2023 Toradex + */ + +// Enable the parallel RGB interface on the Colibri iMX8X with a +// connected capacitive touch 7" display, touch connected to a +// dedicated connector e.g. as present on Iris v2.0A. + +/dts-v1/; +/plugin/; + +/ { + compatible = "toradex,colibri-imx8x"; +}; + +#include "colibri-imx8x_atmel-mxt-connector_overlay.dtsi" +#include "colibri-imx8x_parallel-rgb_overlay.dtsi" +#include "display-lt161010_overlay.dtsi" diff --git a/overlays/colibri-imx8x_panel-res-touch-7inch_overlay.dts b/overlays/colibri-imx8x_panel-res-touch-7inch_overlay.dts new file mode 100644 index 0000000..4f7a377 --- /dev/null +++ b/overlays/colibri-imx8x_panel-res-touch-7inch_overlay.dts @@ -0,0 +1,21 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT +/* + * Copyright 2023 Toradex + */ + +// Enable the parallel RGB interface on the Colibri iMX8X with a +// connected resistive touch 7" display. + +#include +#include + +/dts-v1/; +/plugin/; + +/ { + compatible = "toradex,colibri-imx8x"; +}; + +#include "colibri-imx8x_ad7879_overlay.dtsi" +#include "colibri-imx8x_parallel-rgb_overlay.dtsi" +#include "display-lt161010_overlay.dtsi" diff --git a/overlays/colibri-imx8x_parallel-rgb-lvds_overlay.dts b/overlays/colibri-imx8x_parallel-rgb-lvds_overlay.dts deleted file mode 100644 index 40a20c2..0000000 --- a/overlays/colibri-imx8x_parallel-rgb-lvds_overlay.dts +++ /dev/null @@ -1,81 +0,0 @@ -// SPDX-License-Identifier: GPL-2.0-or-later OR MIT -/* - * Copyright 2021 Toradex - */ - -// Enable the parallel RGB interface on Colibri iMX8X and the LVDS tranceiver on Iris v2.0 - -#include - -/dts-v1/; -/plugin/; -/ { - compatible = "toradex,colibri-imx8x"; -}; - -&adma_pwm { - status = "okay"; -}; - -&adma_pwm_lpcg { - status = "okay"; -}; - -&backlight { - status = "okay"; -}; - -&display_lcdif { - status = "okay"; - - #address-cells = <1>; - #size-cells = <0>; - - port@1 { - reg = <1>; - - display_lcdfif_out: endpoint { - remote-endpoint = <&lcd_panel_in>; - }; - }; -}; - -/* Need to be disabled due to overlapped pins SODIMM_55, SODIMM_63 */ -&flexcan2 { - status = "disabled"; -}; - -&lsio_gpio1 { - /* - * This switches the LVDS transceiver to the single-channel - * output mode. - */ - LVDS_MODE { - gpio-hog; - gpios = <18 GPIO_ACTIVE_HIGH>; - output-high; - line-name = "LVDS_MODE"; - }; -}; - -&lsio_gpio3 { - /* This turns the LVDS transceiver on */ - LVDS_PWRDWN { - gpio-hog; - gpios = <18 GPIO_ACTIVE_HIGH>; - output-high; - line-name = "LVDS_PWRDWN"; - }; -}; - -&panel_dpi { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_lvds_converter>; - status = "okay"; - - port { - lcd_panel_in: endpoint { - remote-endpoint = <&display_lcdfif_out>; - }; - }; -}; diff --git a/overlays/colibri-imx8x_parallel-rgb-lvds_overlay.dtsi b/overlays/colibri-imx8x_parallel-rgb-lvds_overlay.dtsi new file mode 100644 index 0000000..f7fc663 --- /dev/null +++ b/overlays/colibri-imx8x_parallel-rgb-lvds_overlay.dtsi @@ -0,0 +1,63 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT +/* + * Copyright 2021 Toradex + */ + +// Enable the parallel RGB interface on Colibri iMX8X and the LVDS tranceiver on Iris v2.0 + +&adma_pwm { + status = "okay"; +}; + +&adma_pwm_lpcg { + status = "okay"; +}; + +&backlight { + status = "okay"; +}; + +&display_lcdif { + status = "okay"; + + #address-cells = <1>; + #size-cells = <0>; + + port@1 { + reg = <1>; + + display_lcdfif_out: endpoint { + remote-endpoint = <&lcd_panel_in>; + }; + }; +}; + +/* Need to be disabled due to overlapped pins SODIMM_55, SODIMM_63 */ +&flexcan2 { + status = "disabled"; +}; + +&lsio_gpio1 { + /* + * This switches the LVDS transceiver to the single-channel + * output mode. + */ + LVDS_MODE { + gpio-hog; + gpios = <18 GPIO_ACTIVE_HIGH>; + output-high; + line-name = "LVDS_MODE"; + }; +}; + +&panel_dpi { + pinctrl-names = "default"; + status = "okay"; + + data-mapping = "bgr666"; + port { + lcd_panel_in: endpoint { + remote-endpoint = <&display_lcdfif_out>; + }; + }; +}; diff --git a/overlays/colibri-imx8x_parallel-rgb_overlay.dts b/overlays/colibri-imx8x_parallel-rgb_overlay.dts deleted file mode 100644 index 3c5a938..0000000 --- a/overlays/colibri-imx8x_parallel-rgb_overlay.dts +++ /dev/null @@ -1,49 +0,0 @@ -// SPDX-License-Identifier: GPL-2.0-or-later OR MIT -/* - * Copyright 2020-2021 Toradex - */ - -// Enable the parallel RGB interface on Colibri iMX8X - -/dts-v1/; -/plugin/; - -/ { - compatible = "toradex,colibri-imx8x"; -}; - -&adma_lcdif { - status = "okay"; - #address-cells = <1>; - #size-cells = <0>; - - port@0 { - reg = <0>; - - adma_lcdif_out: endpoint { - remote-endpoint = <&lcd_panel_in>; - }; - }; -}; - -&adma_pwm { - status = "okay"; -}; - -&adma_pwm_lpcg { - status = "okay"; -}; - -&backlight { - status = "okay"; -}; - -&panel_dpi { - status = "okay"; - - port { - lcd_panel_in: endpoint { - remote-endpoint = <&adma_lcdif_out>; - }; - }; -}; diff --git a/overlays/colibri-imx8x_parallel-rgb_overlay.dtsi b/overlays/colibri-imx8x_parallel-rgb_overlay.dtsi new file mode 100644 index 0000000..00f8668 --- /dev/null +++ b/overlays/colibri-imx8x_parallel-rgb_overlay.dtsi @@ -0,0 +1,42 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT +/* + * Copyright 2021-2022 Toradex + */ + +// Enable the parallel RGB interface on the Colibri iMX8X. +&adma_lcdif { + status = "okay"; + #address-cells = <1>; + #size-cells = <0>; + + port@0 { + reg = <0>; + + adma_lcdif_out: endpoint { + remote-endpoint = <&lcd_panel_in>; + }; + }; +}; + +&adma_pwm { + status = "okay"; +}; + +&adma_pwm_lpcg { + status = "okay"; +}; + +&backlight { + status = "okay"; +}; + +&panel_dpi { + status = "okay"; + + data-mapping = "bgr666"; + port { + lcd_panel_in: endpoint { + remote-endpoint = <&adma_lcdif_out>; + }; + }; +}; diff --git a/overlays/colibri-imx8x_vga-640x480_overlay.dts b/overlays/colibri-imx8x_vga-640x480_overlay.dts new file mode 100644 index 0000000..2f9db17 --- /dev/null +++ b/overlays/colibri-imx8x_vga-640x480_overlay.dts @@ -0,0 +1,20 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT +/* + * Copyright 2022 Toradex + */ + +// Enable the parallel RGB interface on the Colibri iMX8X and the +// video DAC providing analog RGB on the VGA connector. + +#include +#include + +/dts-v1/; +/plugin/; + +/ { + compatible = "toradex,colibri-imx8x"; +}; + +#include "colibri-imx8x_parallel-rgb_overlay.dtsi" +#include "display-vga-640x480_overlay.dtsi" diff --git a/overlays/display-dpi-lt170410_overlay.dtsi b/overlays/display-dpi-lt170410_overlay.dtsi new file mode 100644 index 0000000..62680bf --- /dev/null +++ b/overlays/display-dpi-lt170410_overlay.dtsi @@ -0,0 +1,32 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT +/* + * Copyright 2020-2022 Toradex + */ + +// LT170410 panel with a resolution of 1280x800 pixel. + +&panel_dpi { + compatible = "panel-dpi"; + status = "okay"; + + width-mm = <217>; + height-mm = <136>; + + panel-timing { + clock-frequency = <68930000>; + + hactive = <1280>; + hback-porch = <64>; + hfront-porch = <64>; + hsync-len = <40>; + vactive = <800>; + vback-porch = <5>; + vfront-porch = <5>; + vsync-len = <6>; + + de-active = <1>; + hsync-active = <0>; + vsync-active = <0>; + pixelclk-active = <0>; + }; +}; diff --git a/overlays/display-fullhd_overlay.dtsi b/overlays/display-fullhd_overlay.dtsi new file mode 100644 index 0000000..3519f16 --- /dev/null +++ b/overlays/display-fullhd_overlay.dtsi @@ -0,0 +1,28 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT +/* + * Copyright 2020-2022 Toradex + */ + +// FullHD VGA monitor in mode 1920x1080p60. Standard: SMPTE 274M + +&panel_dpi { + compatible = "panel-dpi"; + status = "okay"; + + /* for 0.15mm pixels */ + width-mm = <288>; + height-mm = <162>; + + panel-timing { + clock-frequency = <148500000>; + hactive = <1920>; + hback-porch = <148>; + hfront-porch = <88>; + hsync-len = <44>; + vactive = <1080>; + vback-porch = <36>; + vfront-porch = <4>; + vsync-len = <5>; + pixelclk-active = <0>; + }; +}; diff --git a/overlays/display-lt161010_overlay.dtsi b/overlays/display-lt161010_overlay.dtsi new file mode 100644 index 0000000..63fb1b2 --- /dev/null +++ b/overlays/display-lt161010_overlay.dtsi @@ -0,0 +1,27 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT +/* + * Copyright 2020-2022 Toradex + */ + +// LT161010 panel with a resolution of 800x480 pixel. + +&panel_dpi { + compatible = "panel-dpi"; + status = "okay"; + + width-mm = <154>; + height-mm = <86>; + + panel-timing { + clock-frequency = <33230769>; + hactive = <800>; + vactive = <480>; + hsync-len = <128>; + hfront-porch = <40>; + hback-porch = <88>; + vsync-len = <1>; + vfront-porch = <10>; + vback-porch = <33>; + pixelclk-active = <1>; + }; +}; diff --git a/overlays/display-lt170410_overlay.dtsi b/overlays/display-lt170410_overlay.dtsi new file mode 100644 index 0000000..b505109 --- /dev/null +++ b/overlays/display-lt170410_overlay.dtsi @@ -0,0 +1,30 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT +/* + * Copyright 2022 Toradex + */ + +// LT170410 panel with a resolution of 1280x800 pixel. + +&panel_lvds { + status = "okay"; + + data-mapping = "vesa-24"; + width-mm = <217>; + height-mm = <136>; + + panel-timing { + clock-frequency = <68930000>; + hactive = <1280>; + vactive = <800>; + hback-porch = <64>; + hfront-porch = <64>; + vback-porch = <5>; + vfront-porch = <5>; + hsync-len = <40>; + vsync-len = <6>; + + hsync-active = <0>; + vsync-active = <0>; + pixelclk-active = <0>; + }; +}; diff --git a/overlays/display-vga-640x480_overlay.dtsi b/overlays/display-vga-640x480_overlay.dtsi new file mode 100644 index 0000000..ab533cb --- /dev/null +++ b/overlays/display-vga-640x480_overlay.dtsi @@ -0,0 +1,30 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT +/* + * Copyright 2022 Toradex + */ + +// VGA Signal 640x480@60Hz Industry standard timing + +&panel_dpi { + compatible = "panel-dpi"; + status = "okay"; + + /* for 0.3mm pixels */ + width-mm = <192>; + height-mm = <144>; + + panel-timing { + clock-frequency = <25175000>; + hactive = <640>; + vactive = <480>; + hsync-len = <96>; + hfront-porch = <16>; + hback-porch = <48>; + vsync-len = <2>; + vfront-porch = <10>; + vback-porch = <33>; + hsync-active = <0>; + vsync-active = <0>; + pixelclk-active = <0>; + }; +}; -- cgit v1.2.3