summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEmanuele Ghidoli <emanuele.ghidoli@toradex.com>2023-09-26 19:28:41 +0200
committerEmanuele Ghidoli <emanuele.ghidoli@toradex.com>2023-09-27 19:55:07 +0200
commit86b688e0483f1f8986f6a039effb88b27a7c3e0b (patch)
tree2429ea2f85a08b5b05b0e8141c459bb6c7fad846
parent77f3e676a6a1fed9a268ad9334afe0970593b028 (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/Makefile1
-rw-r--r--overlays/display-rvt101hvdwc00b_overlay.dtsi42
-rw-r--r--overlays/verdin-imx8mm_panel-cap-touch-10inch-dsi_overlay.dts96
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>;
+ };
+ };
+ };
+};