summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEmanuele Ghidoli <emanuele.ghidoli@toradex.com>2023-09-15 13:11:29 +0200
committerEmanuele Ghidoli <emanuele.ghidoli@toradex.com>2023-09-20 11:06:27 +0200
commitd3835b33f890f7df435ef5b30d8e653de0111251 (patch)
tree51741ca395741e82ccf6e89a5c7bbfc44a351ef4
parent8c7c4222df50af117c53add6955b40dfaadb7523 (diff)
verdin-am62: 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-5363 Signed-off-by: Emanuele Ghidoli <emanuele.ghidoli@toradex.com>
-rw-r--r--overlays/Makefile1
-rw-r--r--overlays/verdin-am62_panel-cap-touch-10inch-dsi_overlay.dts140
2 files changed, 141 insertions, 0 deletions
diff --git a/overlays/Makefile b/overlays/Makefile
index e7994d3..e2b9dbd 100644
--- a/overlays/Makefile
+++ b/overlays/Makefile
@@ -56,6 +56,7 @@ dtb-y += verdin-am62_mezzanine_panel-cap-touch-10inch-lvds_overlay.dtbo
dtb-y += verdin-am62_mezzanine_panel-lvds-dual-channel-1080p_overlay.dtbo
dtb-y += verdin-am62_nau8822-btl_overlay.dtbo
dtb-y += verdin-am62_ov5640_overlay.dtbo
+dtb-y += verdin-am62_panel-cap-touch-10inch-dsi_overlay.dtbo
dtb-y += verdin-am62_spidev_overlay.dtbo
dtb-y += verdin-imx8mm_nau8822-btl_overlay.dtbo
dtb-y += verdin-imx8mm_spidev_overlay.dtbo
diff --git a/overlays/verdin-am62_panel-cap-touch-10inch-dsi_overlay.dts b/overlays/verdin-am62_panel-cap-touch-10inch-dsi_overlay.dts
new file mode 100644
index 0000000..6c8fcd9
--- /dev/null
+++ b/overlays/verdin-am62_panel-cap-touch-10inch-dsi_overlay.dts
@@ -0,0 +1,140 @@
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
+/*
+ * Copyright 2023 Toradex
+ */
+
+// Verdin with connected Capacitive Touch Display 10.1" DSI.
+// Adapter and display can be ordered at Toradex.
+
+/dts-v1/;
+/plugin/;
+
+#include <dt-bindings/gpio/gpio.h>
+#include <dt-bindings/interrupt-controller/irq.h>
+#include <dt-bindings/pwm/pwm.h>
+
+/ {
+ compatible = "toradex,verdin-am62";
+};
+
+&{/} {
+ backlight: backlight {
+ compatible = "pwm-backlight";
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_i2s_2_d_out_gpio>;
+ brightness-levels = <0 45 63 88 119 158 203 255>;
+ default-brightness-level = <4>;
+ /* Verdin DSI_1_BKL_EN_LVDS (shared with I2S_2_D_OUT from MCASP1, SODIMM 46) */
+ enable-gpios = <&main_gpio0 34 GPIO_ACTIVE_HIGH>;
+ power-supply = <&reg_3v3>;
+ /* Verdin PWM_3_DSI/PWM_3_DSI_LVDS (SODIMM 19) */
+ pwms = <&epwm1 0 6666667 PWM_POLARITY_INVERTED>;
+ };
+
+ panel-lvds {
+ compatible = "panel-lvds";
+ backlight = <&backlight>;
+ data-mapping = "vesa-24";
+ height-mm = <136>;
+ width-mm = <217>;
+
+ panel-timing {
+ clock-frequency = <68900000 71100000 73400000>;
+ de-active = <1>;
+ hactive = <1280 1280 1280>;
+ hback-porch = <88 88 88>;
+ hfront-porch = <12 72 132>;
+ hsync-active = <0>;
+ hsync-len = <1 16 40>;
+ pixelclk-active = <1>;
+ vactive = <800 800 800>;
+ vback-porch = <23 23 23>;
+ vfront-porch = <1 16 49>;
+ vsync-active = <0>;
+ vsync-len = <1 16 20>;
+ };
+
+ port {
+ panel_in_lvds: endpoint {
+ remote-endpoint = <&lvds_out_panel>;
+ };
+ };
+ };
+};
+
+&dsi_bridge {
+ status = "okay";
+};
+
+&dsi_bridge_ports {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ port@1 {
+ reg = <1>;
+
+ mipi_dsi_bridge1_out: endpoint {
+ remote-endpoint = <&dsi84_in>;
+ };
+ };
+};
+
+&dss {
+ status = "okay";
+};
+
+/* Verdin PWM_3_DSI */
+&epwm1 {
+ status = "okay";
+};
+
+/* Verdin I2C_2_DSI */
+&main_i2c2 {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ status = "okay";
+
+ bridge@2c {
+ compatible = "ti,sn65dsi83";
+ reg = <0x2c>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_dsi1_bkl_en>;
+ /* SN65DSI83 IRQ, not connected) */
+ /* Verdin DSI_1_BKL_EN (SODIMM 21) */
+ enable-gpios = <&main_gpio0 30 GPIO_ACTIVE_HIGH>;
+
+ ports {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ port@0 {
+ reg = <0>;
+
+ dsi84_in: endpoint {
+ data-lanes = <1 2 3 4>;
+ remote-endpoint = <&mipi_dsi_bridge1_out>;
+ };
+ };
+
+ port@2 {
+ reg = <2>;
+
+ lvds_out_panel: endpoint {
+ remote-endpoint = <&panel_in_lvds>;
+ };
+ };
+ };
+ };
+
+ touch@41 {
+ compatible = "ilitek,ili2132";
+ reg = <0x41>;
+ /* Verdin DSI_1_INT# (TOUCH_INT#, SODIMM 17) */
+ interrupt-parent = <&main_gpio1>;
+ interrupts = <49 IRQ_TYPE_EDGE_FALLING>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_dsi1_int>, <&pinctrl_i2s_2_bclk_gpio>;
+ /* Verdin I2S_2_BCLK (TOUCH_RESET#, SODIMM 42) */
+ reset-gpios = <&main_gpio0 35 GPIO_ACTIVE_LOW>;
+ };
+};