diff options
author | Emanuele Ghidoli <emanuele.ghidoli@toradex.com> | 2023-09-26 19:28:41 +0200 |
---|---|---|
committer | Emanuele Ghidoli <emanuele.ghidoli@toradex.com> | 2023-09-27 19:55:07 +0200 |
commit | 86b688e0483f1f8986f6a039effb88b27a7c3e0b (patch) | |
tree | 2429ea2f85a08b5b05b0e8141c459bb6c7fad846 | |
parent | 77f3e676a6a1fed9a268ad9334afe0970593b028 (diff) |
verdin-imx8mm: add Riverdi 10.1 inch dsi panel overlay
Add overlay for Riverdi 10.1 inch capacitive touch panel
connected via DSI.
It can be directly connected to Mallow carrier board and, using Verdin
DSI display adapter, it can be connected to Dev and Dahlia carrier boards.
Related-to: ELB-5364
Signed-off-by: Emanuele Ghidoli <emanuele.ghidoli@toradex.com>
-rw-r--r-- | overlays/Makefile | 1 | ||||
-rw-r--r-- | overlays/display-rvt101hvdwc00b_overlay.dtsi | 42 | ||||
-rw-r--r-- | overlays/verdin-imx8mm_panel-cap-touch-10inch-dsi_overlay.dts | 96 |
3 files changed, 139 insertions, 0 deletions
diff --git a/overlays/Makefile b/overlays/Makefile index 94ddfcc..e7fd144 100644 --- a/overlays/Makefile +++ b/overlays/Makefile @@ -56,6 +56,7 @@ dtb-y += verdin-imx8mm_dsi-to-hdmi_overlay.dtbo dtb-y += verdin-imx8mm_dsi-to-lvds_panel-cap-touch-10inch-lvds_overlay.dtbo dtb-y += verdin-imx8mm_hmp_overlay.dtbo dtb-y += verdin-imx8mm_nau8822-btl_overlay.dtbo +dtb-y += verdin-imx8mm_panel-cap-touch-10inch-dsi_overlay.dtbo dtb-y += verdin-imx8mm_spidev_overlay.dtbo dtb-y += verdin-imx8mp_dsi-to-hdmi_overlay.dtbo dtb-y += verdin-imx8mp_dsi-to-lvds_panel-cap-touch-10inch-lvds_overlay.dtbo diff --git a/overlays/display-rvt101hvdwc00b_overlay.dtsi b/overlays/display-rvt101hvdwc00b_overlay.dtsi new file mode 100644 index 0000000..e5bf1b5 --- /dev/null +++ b/overlays/display-rvt101hvdwc00b_overlay.dtsi @@ -0,0 +1,42 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT +/* + * Copyright 2023 Toradex + */ + +// RVT101HVDWC00-B DSI display (10 inch) with a resolution of 1280x800 pixel. + +&panel_lvds { + compatible = "panel-lvds"; + backlight = <&backlight>; + data-mapping = "vesa-24"; + height-mm = <136>; + width-mm = <217>; + status = "okay"; + + /* + * These timings are hand-optimized and more stable then teorethical + * In particular HBP+HS should be 88 (display datasheet) + * Likely an higher value is needed due to dsi to lvds pipeline. + */ + panel-timing { + clock-frequency = <66300000 69300000 78900000>; + de-active = <1>; + hactive = <1280 1280 1280>; + hback-porch = <64 64 64>; + hfront-porch = <72 72 72>; + hsync-active = <0>; + hsync-len = <32 32 32>; + pixelclk-active = <1>; + vactive = <800 800 800>; + vback-porch = <15 15 15>; + vfront-porch = <15 15 15>; + vsync-active = <0>; + vsync-len = <8 8 8>; + }; + + port { + panel_in_lvds_riv: endpoint { + remote-endpoint = <&lvds_out_panel_riv>; + }; + }; +}; diff --git a/overlays/verdin-imx8mm_panel-cap-touch-10inch-dsi_overlay.dts b/overlays/verdin-imx8mm_panel-cap-touch-10inch-dsi_overlay.dts new file mode 100644 index 0000000..a47709b --- /dev/null +++ b/overlays/verdin-imx8mm_panel-cap-touch-10inch-dsi_overlay.dts @@ -0,0 +1,96 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT +/* + * Copyright 2023 Toradex + */ + +// Verdin with connected Capacitive Touch Display 10.1" DSI. + +/dts-v1/; +/plugin/; + +/ { + compatible = "toradex,verdin-imx8mm"; +}; + +#include <dt-bindings/interrupt-controller/arm-gic.h> +#include <dt-bindings/gpio/gpio.h> +#include "display-rvt101hvdwc00b_overlay.dtsi" + +&backlight { + pwms = <&pwm1 0 6666667 0>; + status = "okay"; +}; + +/* Verdin I2C_2_DSI */ +&i2c2 { + #address-cells = <1>; + #size-cells = <0>; + status = "okay"; + + bridge@2c { + compatible = "ti,sn65dsi83"; + reg = <0x2c>; + /* IRQ not connected */ + /* Verdin GPIO_10_DSI (SODIMM 21) */ + enable-gpios = <&gpio3 3 GPIO_ACTIVE_HIGH>; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_gpio_10_dsi>; + + ports { + #address-cells = <1>; + #size-cells = <0>; + + port@0 { + reg = <0>; + + dsi_riv_in: endpoint { + data-lanes = <1 2 3 4>; + remote-endpoint = <&mipi_dsi_bridge1_out>; + }; + }; + + port@2 { + reg = <2>; + + lvds_out_panel_riv: endpoint { + remote-endpoint = <&panel_in_lvds_riv>; + }; + }; + }; + }; + + touch@41 { + compatible = "ilitek,ili2132"; + reg = <0x41>; + /* Verdin DSI_1_INT# (TOUCH_INT#, SODIMM 17) */ + interrupt-parent = <&gpio3>; + interrupts = <15 IRQ_TYPE_LEVEL_LOW>; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_gpio_9_dsi>, <&pinctrl_i2s_2_bclk_touch_reset>; + /* Verdin I2S_2_BCLK (TOUCH_RESET#, SODIMM 42) */ + reset-gpios = <&gpio3 23 GPIO_ACTIVE_LOW>; + }; +}; + +&lcdif { + status = "okay"; +}; + +&mipi_dsi { + samsung,esc-clock-frequency = <16000000>; + status = "okay"; + + ports { + #address-cells = <1>; + #size-cells = <0>; + + port@1 { + reg = <1>; + + mipi_dsi_bridge1_out: endpoint { + attach-bridge; + remote-endpoint = <&dsi_riv_in>; + }; + }; + }; +}; |