diff options
author | Aishwarya Kothari <aishwarya.kothari@toradex.com> | 2022-09-28 14:11:24 +0200 |
---|---|---|
committer | Max Krummenacher <max.krummenacher@toradex.com> | 2022-10-03 16:23:30 +0200 |
commit | 943af5413b7521723a3a80a11e9e1e438846ac9b (patch) | |
tree | 976dfbd0290d04813b5f5896c9f57ab16c4eb431 /overlays | |
parent | a309fb3c2df3db40c2dd9e4c56c960c3f0a7580c (diff) |
colibri-imx7: 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.
Signed-off-by: Aishwarya Kothari <aishwarya.kothari@toradex.com>
Diffstat (limited to 'overlays')
15 files changed, 223 insertions, 143 deletions
diff --git a/overlays/Makefile b/overlays/Makefile index d93ed09..28d6c2f 100644 --- a/overlays/Makefile +++ b/overlays/Makefile @@ -43,12 +43,12 @@ dtb-y += colibri-imx6ull_panel-cap-touch-10inch-lvds_overlay.dtbo dtb-y += colibri-imx6ull_panel-res-touch-7inch_overlay.dtbo dtb-y += colibri-imx6ull_spidev_overlay.dtbo dtb-y += colibri-imx6ull_vga-640x480_overlay.dtbo -dtb-y += colibri-imx7_ad7879_overlay.dtbo -dtb-y += colibri-imx7_atmel-mxt-adapter_overlay.dtbo -dtb-y += colibri-imx7_atmel-mxt-connector_overlay.dtbo -dtb-y += colibri-imx7_parallel-rgb-lvds-rgb24-single_overlay.dtbo -dtb-y += colibri-imx7_parallel-rgb_overlay.dtbo +dtb-y += colibri-imx7_panel-cap-touch-7inch_overlay.dtbo +dtb-y += colibri-imx7_panel-cap-touch-7inch_adapter_overlay.dtbo +dtb-y += colibri-imx7_panel-cap-touch-10inch-lvds_overlay.dtbo +dtb-y += colibri-imx7_panel-res-touch-7inch_overlay.dtbo dtb-y += colibri-imx7_spidev_overlay.dtbo +dtb-y += colibri-imx7_vga-640x480_overlay.dtbo dtb-y += verdin-imx8mm_spidev_overlay.dtbo dtb-y += verdin-imx8mp_spidev_overlay.dtbo diff --git a/overlays/colibri-imx7_ad7879_overlay.dts b/overlays/colibri-imx7_ad7879_overlay.dts deleted file mode 100644 index c9d06e6..0000000 --- a/overlays/colibri-imx7_ad7879_overlay.dts +++ /dev/null @@ -1,19 +0,0 @@ -// SPDX-License-Identifier: GPL-2.0-or-later OR MIT -/* - * Copyright 2020-2021 Toradex - */ - -// Enable the resistive touch controller (AD7879) on the Colibri iMX7 - -/dts-v1/; -/plugin/; - -/ { - compatible = "toradex,colibri-imx7d", - "toradex,colibri-imx7d-emmc", - "toradex,colibri-imx7s"; -}; - -&ad7879_ts { - status = "okay"; -}; diff --git a/overlays/colibri-imx7_ad7879_overlay.dtsi b/overlays/colibri-imx7_ad7879_overlay.dtsi new file mode 100644 index 0000000..e134ee4 --- /dev/null +++ b/overlays/colibri-imx7_ad7879_overlay.dtsi @@ -0,0 +1,11 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT +/* + * Copyright 2020-2022 Toradex + */ + +// Resistive AD7879 touch controller on the Colibri iMX7 for the 7" +// display orderable at Toradex. + +&ad7879_ts { + status = "okay"; +}; diff --git a/overlays/colibri-imx7_atmel-mxt-adapter_overlay.dts b/overlays/colibri-imx7_atmel-mxt-adapter_overlay.dts deleted file mode 100644 index ac2eaea..0000000 --- a/overlays/colibri-imx7_atmel-mxt-adapter_overlay.dts +++ /dev/null @@ -1,39 +0,0 @@ -// SPDX-License-Identifier: GPL-2.0-or-later OR MIT -/* - * Copyright 2020-2021 Toradex - */ - -// Atmel touchscreen for the 7inch capacitive display orderable at Toradex. Use this devicetree on the Evaluation or Iris board. - -/dts-v1/; -/plugin/; - -#include <dt-bindings/gpio/gpio.h> -#include <dt-bindings/interrupt-controller/irq.h> -#include <imx7d-pinfunc.h> - -/ { - compatible = "toradex,colibri-imx7d", - "toradex,colibri-imx7s", - "toradex,colibri-imx7d-emmc"; -}; - -&atmel_mxt_ts { - pinctrl-0 = <&pinctrl_atmel_adapter>; - interrupt-parent = <&gpio1>; - interrupts = <9 IRQ_TYPE_EDGE_FALLING>; - reset-gpios = <&gpio1 10 GPIO_ACTIVE_LOW>; - status = "okay"; -}; - -&i2c4 { - status = "okay"; -}; - -&pwm2 { - status = "disabled"; -}; - -&pwm3 { - status = "disabled"; -}; diff --git a/overlays/colibri-imx7_atmel-mxt-adapter_overlay.dtsi b/overlays/colibri-imx7_atmel-mxt-adapter_overlay.dtsi new file mode 100644 index 0000000..ece03a1 --- /dev/null +++ b/overlays/colibri-imx7_atmel-mxt-adapter_overlay.dtsi @@ -0,0 +1,27 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT +/* + * Copyright 2020-2022 Toradex + */ + +// Atmel MXT capacitive touch controller for the 7" and 10.1" displays +// orderable at Toradex. Compatible with a Capacitive Touch Adapter. + +&atmel_mxt_ts { + pinctrl-0 = <&pinctrl_atmel_adapter>; + interrupt-parent = <&gpio1>; + interrupts = <9 IRQ_TYPE_EDGE_FALLING>; + reset-gpios = <&gpio1 10 GPIO_ACTIVE_LOW>; + status = "okay"; +}; + +&i2c4 { + status = "okay"; +}; + +&pwm2 { + status = "disabled"; +}; + +&pwm3 { + status = "disabled"; +}; diff --git a/overlays/colibri-imx7_atmel-mxt-connector_overlay.dts b/overlays/colibri-imx7_atmel-mxt-connector_overlay.dts deleted file mode 100644 index d6000c7..0000000 --- a/overlays/colibri-imx7_atmel-mxt-connector_overlay.dts +++ /dev/null @@ -1,26 +0,0 @@ -// SPDX-License-Identifier: GPL-2.0-or-later OR MIT -/* - * Copyright 2020-2021 Toradex - */ - -// Atmel touchscreen for the 7inch capacitive display orderable at Toradex. Use this devicetree on the Aster board. - -/dts-v1/; -/plugin/; - -#include <dt-bindings/gpio/gpio.h> -#include <dt-bindings/interrupt-controller/irq.h> - -/ { - compatible = "toradex,colibri-imx7d", - "toradex,colibri-imx7s", - "toradex,colibri-imx7d-emmc"; -}; - -&atmel_mxt_ts { - status = "okay"; -}; - -&i2c4 { - status = "okay"; -}; diff --git a/overlays/colibri-imx7_atmel-mxt-connector_overlay.dtsi b/overlays/colibri-imx7_atmel-mxt-connector_overlay.dtsi new file mode 100644 index 0000000..aea097b --- /dev/null +++ b/overlays/colibri-imx7_atmel-mxt-connector_overlay.dtsi @@ -0,0 +1,15 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT +/* + * Copyright 2020-2022 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"; +}; + +&i2c4 { + status = "okay"; +}; diff --git a/overlays/colibri-imx7_panel-cap-touch-10inch-lvds_overlay.dts b/overlays/colibri-imx7_panel-cap-touch-10inch-lvds_overlay.dts new file mode 100644 index 0000000..c0d9c0f --- /dev/null +++ b/overlays/colibri-imx7_panel-cap-touch-10inch-lvds_overlay.dts @@ -0,0 +1,25 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT +/* + * Copyright 2022 Toradex + */ + +// Enable the parallel RGB interface on the Colibri iMX7 and the +// LVDS transceiver on the Iris v2.0A with a connected capacitive +// touch 10.1" LVDS display. + +/dts-v1/; +/plugin/; + +#include <dt-bindings/gpio/gpio.h> +#include <dt-bindings/interrupt-controller/irq.h> +#include <imx7d-pinfunc.h> + +/ { + compatible = "toradex,colibri-imx7d", + "toradex,colibri-imx7s", + "toradex,colibri-imx7d-emmc"; +}; + +#include "colibri-imx7_atmel-mxt-connector_overlay.dtsi" +#include "colibri-imx7_parallel-rgb-lvds-rgb24-single_overlay.dtsi" +#include "display-dpi-lt170410_overlay.dtsi" diff --git a/overlays/colibri-imx7_panel-cap-touch-7inch_adapter_overlay.dts b/overlays/colibri-imx7_panel-cap-touch-7inch_adapter_overlay.dts new file mode 100644 index 0000000..72440fb --- /dev/null +++ b/overlays/colibri-imx7_panel-cap-touch-7inch_adapter_overlay.dts @@ -0,0 +1,26 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT +/* + * Copyright 2022 Toradex + */ + +// Enable the parallel RGB interface on the Colibri iMX7 with a +// connected capacitive touch 7" display, touch connected with +// a separate adapter pcb. + +/dts-v1/; +/plugin/; + +#include <dt-bindings/gpio/gpio.h> +#include <dt-bindings/interrupt-controller/irq.h> +#include <imx7d-pinfunc.h> + +/ { + compatible = "toradex,colibri-imx7d", + "toradex,colibri-imx7s", + "toradex,colibri-imx7d-emmc"; +}; + +#include "colibri-imx7_atmel-mxt-adapter_overlay.dtsi" +#include "colibri-imx7_parallel-rgb_overlay.dtsi" +#include "display-lt161010_overlay.dtsi" + diff --git a/overlays/colibri-imx7_panel-cap-touch-7inch_overlay.dts b/overlays/colibri-imx7_panel-cap-touch-7inch_overlay.dts new file mode 100644 index 0000000..2382535 --- /dev/null +++ b/overlays/colibri-imx7_panel-cap-touch-7inch_overlay.dts @@ -0,0 +1,26 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT +/* + * Copyright 2022 Toradex + */ + +// Enable the parallel RGB interface on the Colibri iMX7 with a +// connected capacitive touch 7" display, touch connected to a +// dedicated connector e.g. as present on Iris v2.0A. + +/dts-v1/; +/plugin/; + +#include <dt-bindings/gpio/gpio.h> +#include <dt-bindings/interrupt-controller/irq.h> +#include <imx7d-pinfunc.h> + +/ { + compatible = "toradex,colibri-imx7d", + "toradex,colibri-imx7s", + "toradex,colibri-imx7d-emmc"; +}; + +#include "colibri-imx7_atmel-mxt-connector_overlay.dtsi" +#include "colibri-imx7_parallel-rgb_overlay.dtsi" +#include "display-lt161010_overlay.dtsi" + diff --git a/overlays/colibri-imx7_panel-res-touch-7inch_overlay.dts b/overlays/colibri-imx7_panel-res-touch-7inch_overlay.dts new file mode 100644 index 0000000..3f08526 --- /dev/null +++ b/overlays/colibri-imx7_panel-res-touch-7inch_overlay.dts @@ -0,0 +1,25 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT +/* + * Copyright 2022 Toradex + */ + +// Enable the parallel RGB interface on the Colibri iMX7 with a +// connected resistive touch 7" display. + +/dts-v1/; +/plugin/; + +#include <dt-bindings/gpio/gpio.h> +#include <dt-bindings/interrupt-controller/irq.h> +#include <imx7d-pinfunc.h> + +/ { + compatible = "toradex,colibri-imx7d", + "toradex,colibri-imx7s", + "toradex,colibri-imx7d-emmc"; +}; + +#include "colibri-imx7_ad7879_overlay.dtsi" +#include "colibri-imx7_parallel-rgb_overlay.dtsi" +#include "display-lt161010_overlay.dtsi" + diff --git a/overlays/colibri-imx7_parallel-rgb-lvds-rgb24-single_overlay.dts b/overlays/colibri-imx7_parallel-rgb-lvds-rgb24-single_overlay.dtsi index e5d407e..ed03a8a 100644 --- a/overlays/colibri-imx7_parallel-rgb-lvds-rgb24-single_overlay.dts +++ b/overlays/colibri-imx7_parallel-rgb-lvds-rgb24-single_overlay.dtsi @@ -1,20 +1,9 @@ // SPDX-License-Identifier: GPL-2.0-or-later OR MIT /* - * Copyright 2020-2021 Toradex + * Copyright 2020-2022 Toradex */ -// Enable the parallel RGB interface on the Colibri iMX7 - -#include <dt-bindings/gpio/gpio.h> - -/dts-v1/; -/plugin/; - -/ { - compatible = "toradex,colibri-imx7d", - "toradex,colibri-imx7d-emmc", - "toradex,colibri-imx7s"; -}; +// Enable the parallel RGB interface on the Colibri iMX7. &backlight { status = "okay"; @@ -29,7 +18,7 @@ /* * This switches the LVDS transceiver to VESA color mapping mode. */ - LVDS_COLOR_MAP { + lvds-color-map { gpio-hog; gpios = <13 GPIO_ACTIVE_HIGH>; /* SODIMM 95 */ line-name = "LVDS_COLOR_MAP"; @@ -39,20 +28,10 @@ &gpio7 { /* - * This switches the LVDS transceiver to the 24-bit RGB mode. - */ - LVDS_RGB_MODE { - gpio-hog; - gpios = <2 GPIO_ACTIVE_HIGH>; /* SODIMM 63 */ - line-name = "LVDS_RGB_MODE"; - output-low; - }; - - /* * This switches the LVDS transceiver to the single-channel * output mode. */ - LVDS_CH_MODE { + lvds-ch-mode { gpio-hog; gpios = <3 GPIO_ACTIVE_HIGH>; /* SODIMM 55 */ line-name = "LVDS_CH_MODE"; @@ -60,12 +39,22 @@ }; /* This turns on the LVDS transceiver */ - LVDS_POWER_ON { + lvds-pwron { gpio-hog; gpios = <11 GPIO_ACTIVE_HIGH>; /* SODIMM 99 */ - line-name = "LVDS_POWER_ON"; + line-name = "LVDS_PWRON"; output-high; }; + + /* + * This switches the LVDS transceiver to the 24-bit RGB mode. + */ + lvds-rgb-mode { + gpio-hog; + gpios = <2 GPIO_ACTIVE_HIGH>; /* SODIMM 63 */ + line-name = "LVDS_RGB_MODE"; + output-low; + }; }; &lcdif { @@ -73,6 +62,7 @@ }; &panel_dpi { + data-mapping = "bgr666"; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_lvds_transceiver>; status = "okay"; diff --git a/overlays/colibri-imx7_parallel-rgb_overlay.dts b/overlays/colibri-imx7_parallel-rgb_overlay.dts deleted file mode 100644 index d3b5623..0000000 --- a/overlays/colibri-imx7_parallel-rgb_overlay.dts +++ /dev/null @@ -1,27 +0,0 @@ -// SPDX-License-Identifier: GPL-2.0-or-later OR MIT -/* - * Copyright 2020-2021 Toradex - */ - -// Enable the parallel RGB interface on the Colibri iMX7 - -/dts-v1/; -/plugin/; - -/ { - compatible = "toradex,colibri-imx7d", - "toradex,colibri-imx7d-emmc", - "toradex,colibri-imx7s"; -}; - -&backlight { - status = "okay"; -}; - -&lcdif { - status = "okay"; -}; - -&pwm1 { - status = "okay"; -}; diff --git a/overlays/colibri-imx7_parallel-rgb_overlay.dtsi b/overlays/colibri-imx7_parallel-rgb_overlay.dtsi new file mode 100644 index 0000000..e00b6ea --- /dev/null +++ b/overlays/colibri-imx7_parallel-rgb_overlay.dtsi @@ -0,0 +1,22 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT +/* + * Copyright 2020-2022 Toradex + */ + +// Enable the parallel RGB interface on the Colibri iMX7. + +&backlight { + status = "okay"; +}; + +&lcdif { + status = "okay"; +}; + +&panel_dpi { + data-mapping = "bgr666"; +}; + +&pwm1 { + status = "okay"; +}; diff --git a/overlays/colibri-imx7_vga-640x480_overlay.dts b/overlays/colibri-imx7_vga-640x480_overlay.dts new file mode 100644 index 0000000..70f1782 --- /dev/null +++ b/overlays/colibri-imx7_vga-640x480_overlay.dts @@ -0,0 +1,24 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT +/* + * Copyright 2020-2022 Toradex + */ + +// Enable the parallel RGB interface on the Colibri iMX7 and the +// video DAC providing analog RGB on the VGA connector. + +/dts-v1/; +/plugin/; + +#include <dt-bindings/gpio/gpio.h> +#include <dt-bindings/interrupt-controller/irq.h> +#include <imx7d-pinfunc.h> + +/ { + compatible = "toradex,colibri-imx7d", + "toradex,colibri-imx7s", + "toradex,colibri-imx7d-emmc"; +}; + +#include "colibri-imx7_parallel-rgb_overlay.dtsi" +#include "display-vga-640x480_overlay.dtsi" + |