]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
arm64: dts: imx{91,93}-phyboard-segin: Add peb-av-18 overlays
authorFlorijan Plohl <florijan.plohl@norik.com>
Wed, 3 Jun 2026 06:15:01 +0000 (08:15 +0200)
committerFrank Li <Frank.Li@nxp.com>
Fri, 5 Jun 2026 17:21:22 +0000 (13:21 -0400)
Add overlay for the PHYTEC Audio/Video adapter module PEB-AV-18 on
phyBOARD-Segin-i.MX91/93 boards. The supported AC220 display is
Powertip PH800480T032-ZHC19 panel with a backlight and Ilitek
touch-screen controller.

Signed-off-by: Florijan Plohl <florijan.plohl@norik.com>
Signed-off-by: Frank Li <Frank.Li@nxp.com>
arch/arm64/boot/dts/freescale/Makefile
arch/arm64/boot/dts/freescale/imx91-93-phyboard-segin-peb-av-18.dtsi [new file with mode: 0644]
arch/arm64/boot/dts/freescale/imx91-phyboard-segin-peb-av-18.dtso [new file with mode: 0644]
arch/arm64/boot/dts/freescale/imx93-phyboard-segin-peb-av-18.dtso [new file with mode: 0644]

index 03988f0eae301f90e6a45d486da0a37e8b913e0d..8ddaab127ab9cb630e94a383007929e7b9e4506a 100644 (file)
@@ -563,6 +563,10 @@ dtb-$(CONFIG_ARCH_MXC) += imx91-11x11-evk.dtb
 dtb-$(CONFIG_ARCH_MXC) += imx91-11x11-frdm.dtb
 dtb-$(CONFIG_ARCH_MXC) += imx91-11x11-frdm-s.dtb
 dtb-$(CONFIG_ARCH_MXC) += imx91-phyboard-segin.dtb
+
+imx91-phyboard-segin-peb-av-18-dtbs += imx91-phyboard-segin.dtb imx91-phyboard-segin-peb-av-18.dtbo
+dtb-$(CONFIG_ARCH_MXC) += imx91-phyboard-segin-peb-av-18.dtb
+
 dtb-$(CONFIG_ARCH_MXC) += imx91-tqma9131-mba91xxca.dtb
 
 imx91-tqma9131-mba91xxca-lvds-tm070jvhg33-dtbs := imx91-tqma9131-mba91xxca.dtb imx93-tqma9352-mba91xxca-lvds-tm070jvhg33.dtbo
@@ -598,6 +602,7 @@ imx93-phyboard-nash-jtag-dtbs += imx93-phyboard-nash.dtb imx93-phyboard-nash-jta
 imx93-phyboard-nash-peb-wlbt-07-dtbs += imx93-phyboard-nash.dtb imx93-phyboard-nash-peb-wlbt-07.dtbo
 imx93-phyboard-nash-pwm-fan-dtbs += imx93-phyboard-nash.dtb imx93-phyboard-nash-pwm-fan.dtbo
 imx93-phyboard-segin-peb-av-02-dtbs += imx93-phyboard-segin.dtb imx93-phyboard-segin-peb-av-02.dtbo
+imx93-phyboard-segin-peb-av-18-dtbs += imx93-phyboard-segin.dtb imx93-phyboard-segin-peb-av-18.dtbo
 imx93-phyboard-segin-peb-eval-01-dtbs += imx93-phyboard-segin.dtb imx93-phyboard-segin-peb-eval-01.dtbo
 imx93-phyboard-segin-peb-wlbt-05-dtbs += imx93-phyboard-segin.dtb imx93-phyboard-segin-peb-wlbt-05.dtbo
 imx93-phycore-rpmsg-dtbs += imx93-phyboard-nash.dtb imx93-phyboard-segin.dtb imx93-phycore-rpmsg.dtbo
@@ -605,6 +610,7 @@ dtb-$(CONFIG_ARCH_MXC) += imx93-phyboard-nash-jtag.dtb
 dtb-$(CONFIG_ARCH_MXC) += imx93-phyboard-nash-peb-wlbt-07.dtb
 dtb-$(CONFIG_ARCH_MXC) += imx93-phyboard-nash-pwm-fan.dtb
 dtb-$(CONFIG_ARCH_MXC) += imx93-phyboard-segin-peb-av-02.dtb
+dtb-$(CONFIG_ARCH_MXC) += imx93-phyboard-segin-peb-av-18.dtb
 dtb-$(CONFIG_ARCH_MXC) += imx93-phyboard-segin-peb-eval-01.dtb
 dtb-$(CONFIG_ARCH_MXC) += imx93-phyboard-segin-peb-wlbt-05.dtb
 dtb-$(CONFIG_ARCH_MXC) += imx93-phycore-rpmsg.dtb
diff --git a/arch/arm64/boot/dts/freescale/imx91-93-phyboard-segin-peb-av-18.dtsi b/arch/arm64/boot/dts/freescale/imx91-93-phyboard-segin-peb-av-18.dtsi
new file mode 100644 (file)
index 0000000..53d5cbc
--- /dev/null
@@ -0,0 +1,93 @@
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
+/*
+ * Copyright (C) 2026 PHYTEC Messtechnik GmbH
+ *
+ * Author: Florijan Plohl <florijan.plohl@norik.com>
+ */
+
+#include <dt-bindings/clock/imx93-clock.h>
+#include <dt-bindings/gpio/gpio.h>
+#include <dt-bindings/interrupt-controller/arm-gic.h>
+
+/dts-v1/;
+/plugin/;
+
+&{/} {
+       backlight: backlight {
+               compatible = "pwm-backlight";
+               brightness-levels = <0 4 8 16 32 64 128 255>;
+               default-brightness-level = <5>;
+               power-supply = <&reg_vcc_3v3_con>;
+               pwms = <&pwm7 0 5000000 0>;
+       };
+
+       panel {
+               compatible = "powertip,ph800480t032-zhc19";
+               pinctrl-names = "default";
+               pinctrl-0 = <&pinctrl_panel>;
+
+               backlight = <&backlight>;
+               enable-gpios = <&gpio4 29 GPIO_ACTIVE_HIGH>;
+               power-supply = <&reg_vcc_3v3_con>;
+
+               port {
+                       panel_in: endpoint {
+                               remote-endpoint = <&dpi_to_panel>;
+                       };
+               };
+       };
+
+       pwm7: pwm-7 {
+               compatible = "pwm-gpio";
+               pinctrl-names = "default";
+               pinctrl-0 = <&pinctrl_pwm7>;
+               gpios = <&gpio4 28 GPIO_ACTIVE_HIGH>;
+               #pwm-cells = <3>;
+       };
+
+       reg_vcc_3v3_con: regulator-vcc-3v3-con {
+               compatible = "regulator-fixed";
+               regulator-name = "VCC3V3_CON";
+               regulator-max-microvolt = <3300000>;
+               regulator-min-microvolt = <3300000>;
+       };
+};
+
+&dpi_bridge {
+       status = "okay";
+};
+
+&dpi_to_panel {
+       remote-endpoint = <&panel_in>;
+       bus-width = <18>;
+};
+
+&lcdif {
+       pinctrl-names = "default";
+       pinctrl-0 = <&pinctrl_lcdif>;
+       assigned-clocks = <&clk IMX93_CLK_VIDEO_PLL>;
+       assigned-clock-rates = <27272728>;
+       status = "okay";
+};
+
+&lpi2c2 {
+       #address-cells = <1>;
+       #size-cells = <0>;
+
+       touchscreen@41 {
+               compatible = "ilitek,ili2130";
+               reg = <0x41>;
+               pinctrl-names = "default";
+               pinctrl-0 = <&pinctrl_touchscreen>;
+               interrupt-parent = <&gpio4>;
+               interrupts = <12 IRQ_TYPE_EDGE_FALLING>;
+               reset-gpios = <&gpio4 1 GPIO_ACTIVE_LOW>;
+               touchscreen-size-x = <800>;
+               touchscreen-size-y = <480>;
+               wakeup-source;
+       };
+};
+
+&media_blk_ctrl {
+       status = "okay";
+};
diff --git a/arch/arm64/boot/dts/freescale/imx91-phyboard-segin-peb-av-18.dtso b/arch/arm64/boot/dts/freescale/imx91-phyboard-segin-peb-av-18.dtso
new file mode 100644 (file)
index 0000000..35edf9b
--- /dev/null
@@ -0,0 +1,57 @@
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
+/*
+ * Copyright (C) 2026 PHYTEC Messtechnik GmbH
+ *
+ * Author: Florijan Plohl <florijan.plohl@norik.com>
+ */
+
+#include "imx91-pinfunc.h"
+#include "imx91-93-phyboard-segin-peb-av-18.dtsi"
+
+&iomuxc {
+       pinctrl_lcdif: lcdifgrp {
+               fsl,pins = <
+                       MX91_PAD_GPIO_IO00__MEDIAMIX_DISP_CLK           0x57e
+                       MX91_PAD_GPIO_IO01__MEDIAMIX_DISP_DE            0x51e
+                       MX91_PAD_GPIO_IO02__MEDIAMIX_DISP_VSYNC         0x51e
+                       MX91_PAD_GPIO_IO03__MEDIAMIX_DISP_HSYNC         0x51e
+                       MX91_PAD_GPIO_IO04__MEDIAMIX_DISP_DATA0         0x51e
+                       MX91_PAD_GPIO_IO05__MEDIAMIX_DISP_DATA1         0x51e
+                       MX91_PAD_GPIO_IO06__MEDIAMIX_DISP_DATA2         0x51e
+                       MX91_PAD_GPIO_IO07__MEDIAMIX_DISP_DATA3         0x51e
+                       MX91_PAD_GPIO_IO08__MEDIAMIX_DISP_DATA4         0x51e
+                       MX91_PAD_GPIO_IO09__MEDIAMIX_DISP_DATA5         0x51e
+                       MX91_PAD_GPIO_IO10__MEDIAMIX_DISP_DATA6         0x51e
+                       MX91_PAD_GPIO_IO11__MEDIAMIX_DISP_DATA7         0x51e
+                       MX91_PAD_GPIO_IO12__MEDIAMIX_DISP_DATA8         0x51e
+                       MX91_PAD_GPIO_IO13__MEDIAMIX_DISP_DATA9         0x51e
+                       MX91_PAD_GPIO_IO14__MEDIAMIX_DISP_DATA10        0x51e
+                       MX91_PAD_GPIO_IO15__MEDIAMIX_DISP_DATA11        0x51e
+                       MX91_PAD_GPIO_IO16__MEDIAMIX_DISP_DATA12        0x51e
+                       MX91_PAD_GPIO_IO17__MEDIAMIX_DISP_DATA13        0x51e
+                       MX91_PAD_GPIO_IO18__MEDIAMIX_DISP_DATA14        0x51e
+                       MX91_PAD_GPIO_IO19__MEDIAMIX_DISP_DATA15        0x51e
+                       MX91_PAD_GPIO_IO20__MEDIAMIX_DISP_DATA16        0x51e
+                       MX91_PAD_GPIO_IO21__MEDIAMIX_DISP_DATA17        0x51e
+               >;
+       };
+
+       pinctrl_panel: panelgrp {
+               fsl,pins = <
+                       MX91_PAD_CCM_CLKO4__GPIO4_IO29                  0x1133e
+               >;
+       };
+
+       pinctrl_pwm7: pwm7grp {
+               fsl,pins = <
+                       MX91_PAD_CCM_CLKO3__GPIO4_IO28                  0x1133e
+               >;
+       };
+
+       pinctrl_touchscreen: touchscreengrp {
+               fsl,pins = <
+                       MX91_PAD_ENET1_MDIO__GPIO4_IO1                  0x11e
+                       MX91_PAD_ENET1_RD2__GPIO4_IO12                  0x1133e
+               >;
+       };
+};
diff --git a/arch/arm64/boot/dts/freescale/imx93-phyboard-segin-peb-av-18.dtso b/arch/arm64/boot/dts/freescale/imx93-phyboard-segin-peb-av-18.dtso
new file mode 100644 (file)
index 0000000..11f7d75
--- /dev/null
@@ -0,0 +1,57 @@
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
+/*
+ * Copyright (C) 2026 PHYTEC Messtechnik GmbH
+ *
+ * Author: Florijan Plohl <florijan.plohl@norik.com>
+ */
+
+#include "imx93-pinfunc.h"
+#include "imx91-93-phyboard-segin-peb-av-18.dtsi"
+
+&iomuxc {
+       pinctrl_lcdif: lcdifgrp {
+               fsl,pins = <
+                       MX93_PAD_GPIO_IO00__MEDIAMIX_DISP_CLK           0x57e
+                       MX93_PAD_GPIO_IO02__MEDIAMIX_DISP_VSYNC         0x51e
+                       MX93_PAD_GPIO_IO01__MEDIAMIX_DISP_DE            0x51e
+                       MX93_PAD_GPIO_IO03__MEDIAMIX_DISP_HSYNC         0x51e
+                       MX93_PAD_GPIO_IO04__MEDIAMIX_DISP_DATA00        0x51e
+                       MX93_PAD_GPIO_IO05__MEDIAMIX_DISP_DATA01        0x51e
+                       MX93_PAD_GPIO_IO06__MEDIAMIX_DISP_DATA02        0x51e
+                       MX93_PAD_GPIO_IO07__MEDIAMIX_DISP_DATA03        0x51e
+                       MX93_PAD_GPIO_IO08__MEDIAMIX_DISP_DATA04        0x51e
+                       MX93_PAD_GPIO_IO09__MEDIAMIX_DISP_DATA05        0x51e
+                       MX93_PAD_GPIO_IO10__MEDIAMIX_DISP_DATA06        0x51e
+                       MX93_PAD_GPIO_IO11__MEDIAMIX_DISP_DATA07        0x51e
+                       MX93_PAD_GPIO_IO12__MEDIAMIX_DISP_DATA08        0x51e
+                       MX93_PAD_GPIO_IO13__MEDIAMIX_DISP_DATA09        0x51e
+                       MX93_PAD_GPIO_IO14__MEDIAMIX_DISP_DATA10        0x51e
+                       MX93_PAD_GPIO_IO15__MEDIAMIX_DISP_DATA11        0x51e
+                       MX93_PAD_GPIO_IO16__MEDIAMIX_DISP_DATA12        0x51e
+                       MX93_PAD_GPIO_IO17__MEDIAMIX_DISP_DATA13        0x51e
+                       MX93_PAD_GPIO_IO18__MEDIAMIX_DISP_DATA14        0x51e
+                       MX93_PAD_GPIO_IO19__MEDIAMIX_DISP_DATA15        0x51e
+                       MX93_PAD_GPIO_IO20__MEDIAMIX_DISP_DATA16        0x51e
+                       MX93_PAD_GPIO_IO21__MEDIAMIX_DISP_DATA17        0x51e
+               >;
+       };
+
+       pinctrl_panel: panelgrp {
+               fsl,pins = <
+                       MX93_PAD_CCM_CLKO4__GPIO4_IO29                  0x1133e
+               >;
+       };
+
+       pinctrl_pwm7: pwm7grp {
+               fsl,pins = <
+                       MX93_PAD_CCM_CLKO3__GPIO4_IO28                  0x1133e
+               >;
+       };
+
+       pinctrl_touchscreen: touchscreengrp {
+               fsl,pins = <
+                       MX93_PAD_ENET1_MDIO__GPIO4_IO01                 0x11e
+                       MX93_PAD_ENET1_RD2__GPIO4_IO12                  0x1133e
+               >;
+       };
+};