summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarcel Ziswiler <marcel.ziswiler@toradex.com>2023-09-05 10:30:33 +0200
committerMarcel Ziswiler <marcel.ziswiler@toradex.com>2023-09-12 16:23:10 +0200
commita698db0dfb1a6d57f4698be898e1f9eff20a4d1b (patch)
tree38c2de9783dbd01ef7cff6a59af8219003bbe465
parent09f7918e1af9d6ac85bd7834cb6b8d254ac6207f (diff)
verdin-imx8mp: add dsi-to-lvds_panel-cap-touch-10inch-lvds overlay
Add Verdin DSI to LVDS Adapter (dsi-to-lvds) with Capacitive Touch Display 10.1" LVDS (panel-cap-touch-10inch-lvds) device tree overlay compatible with mainline/master/upstream v6.5 Linux kernel and device trees. Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
-rw-r--r--overlays/Makefile1
-rw-r--r--overlays/verdin-imx8mp_dsi-to-lvds_panel-cap-touch-10inch-lvds_overlay.dts89
2 files changed, 90 insertions, 0 deletions
diff --git a/overlays/Makefile b/overlays/Makefile
index 938e57a..2ebd04f 100644
--- a/overlays/Makefile
+++ b/overlays/Makefile
@@ -57,6 +57,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_spidev_overlay.dtbo
+dtb-y += verdin-imx8mp_dsi-to-lvds_panel-cap-touch-10inch-lvds_overlay.dtbo
dtb-y += verdin-imx8mp_nau8822-btl_overlay.dtbo
dtb-y += verdin-imx8mp_spidev_overlay.dtbo
diff --git a/overlays/verdin-imx8mp_dsi-to-lvds_panel-cap-touch-10inch-lvds_overlay.dts b/overlays/verdin-imx8mp_dsi-to-lvds_panel-cap-touch-10inch-lvds_overlay.dts
new file mode 100644
index 0000000..840edd8
--- /dev/null
+++ b/overlays/verdin-imx8mp_dsi-to-lvds_panel-cap-touch-10inch-lvds_overlay.dts
@@ -0,0 +1,89 @@
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
+/*
+ * Copyright 2023 Toradex
+ */
+
+// Verdin DSI to LVDS Adapter with plugged in
+// Capacitive Touch Display 10.1" LVDS orderable 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-imx8mp";
+};
+
+&{/} {
+ backlight {
+ compatible = "pwm-backlight";
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_i2s_2_d_out_dsi_1_bkl_en>;
+ brightness-levels = <0 45 63 88 119 158 203 255>;
+ default-brightness-level = <4>;
+ /* Verdin I2S_2_D_OUT (DSI_1_BKL_EN/DSI_1_BKL_EN_LVDS, SODIMM 46) */
+ enable-gpios = <&gpio5 1 GPIO_ACTIVE_HIGH>;
+ power-supply = <&reg_3p3v>;
+ /* Verdin PWM_3_DSI/PWM_3_DSI_LVDS (SODIMM 19) */
+ pwms = <&pwm3 0 6666667 PWM_POLARITY_INVERTED>;
+ status = "okay";
+ };
+
+ panel_lvds: panel-lvds {
+ compatible = "panel-lvds";
+ backlight = <&backlight>;
+ data-mapping = "vesa-24";
+ height-mm = <136>;
+ width-mm = <217>;
+ };
+};
+
+/* Verdin I2C_1 */
+&i2c4 {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ status = "okay";
+
+ lvds_ti_sn65dsi84: bridge@2c {
+ compatible = "ti,sn65dsi84";
+ reg = <0x2c>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_gpio_10_dsi>;
+ /* Verdin GPIO_9_DSI (SN65DSI84 IRQ, SODIMM 17, unused) */
+ /* Verdin GPIO_10_DSI (SODIMM 21) */
+ enable-gpios = <&gpio4 28 GPIO_ACTIVE_HIGH>;
+ };
+
+ touch@4a {
+ compatible = "atmel,maxtouch";
+ reg = <0x4a>;
+ /*
+ * Verdin GPIO_9_DSI
+ * (TOUCH_INT#, SODIMM 17, also routed to SN65DSI84 IRQ albeit currently unused)
+ */
+ interrupt-parent = <&gpio4>;
+ interrupts = <25 IRQ_TYPE_EDGE_FALLING>;
+ 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 = <&gpio5 0 GPIO_ACTIVE_LOW>;
+ status = "okay";
+ };
+};
+
+/* LCDIF to MIPI-DSI */
+&lcdif1 {
+ status = "okay";
+};
+
+/* Verdin PWM_3_DSI */
+&pwm3 {
+ status = "okay";
+};
+
+/* As the following make use of labels only just created above */
+#include "display-lt170410_sn65dsi84_overlay.dtsi"
+#include "verdin-imx8_mipi-dsi-to-sn65dsi84.dtsi"