summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEmanuele Ghidoli <emanuele.ghidoli@toradex.com>2023-09-26 19:28:41 +0200
committerFrancesco Dolcini <francesco.dolcini@toradex.com>2023-09-27 12:28:53 +0000
commit17b312ff3ad9ab4ba89737484921239dc9e602aa (patch)
treeb87c7ee6fea5b68a0bebf9300f7d9c04548894e1
parente4adceb7a85f79f52eac80db356b1534a7290152 (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.dts94
3 files changed, 137 insertions, 0 deletions
diff --git a/overlays/Makefile b/overlays/Makefile
index 0da7e48..25097c6 100644
--- a/overlays/Makefile
+++ b/overlays/Makefile
@@ -47,6 +47,7 @@ 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_ov5640_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..15647ea
--- /dev/null
+++ b/overlays/verdin-imx8mm_panel-cap-touch-10inch-dsi_overlay.dts
@@ -0,0 +1,94 @@
+// 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";
+};
+
+&gpu {
+ 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_bridge2_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 {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ status = "okay";
+
+ port@1 {
+ mipi_dsi_bridge2_out: endpoint {
+ attach-bridge;
+ remote-endpoint = <&dsi_riv_in>;
+ };
+ };
+};