Linux-ARM-Kernel Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/3] Add i.MX93 Wireless FRDM board support
@ 2026-07-17  5:11 Joseph Guo
  2026-07-17  5:11 ` [PATCH 1/3] arm64: dts: imx93-11x11-frdm: factor out common parts into dtsi Joseph Guo
                   ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: Joseph Guo @ 2026-07-17  5:11 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Frank Li,
	Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam, Shawn Guo
  Cc: devicetree, imx, linux-arm-kernel, linux-kernel, Joseph Guo

i.MX93 Wireless FRDM board(FRDM-IMX93W) is a low-cost and compact board featuring
the i.MX93W applications processor

FRDM-IMX93W board basically reuse the FRDM-IMX93 board, with some minor functional
and pin connection differences. Factor common parts of FRDM-IMX93 and FRDM-IMX93W
into imx93-11x11-frdm-common.dtsi and add the board-specific changes.

Signed-off-by: Joseph Guo <qijian.guo@nxp.com>
---
Joseph Guo (3):
      arm64: dts: imx93-11x11-frdm: factor out common parts into dtsi
      dt-bindings: arm: fsl: Add i.MX93 Wireless FRDM board
      arm64: dts: imx93: Add i.MX93 Wireless FRDM board support

 Documentation/devicetree/bindings/arm/fsl.yaml     |   1 +
 arch/arm64/boot/dts/freescale/Makefile             |   1 +
 .../dts/freescale/imx93-11x11-frdm-common.dtsi     | 692 +++++++++++++++++++++
 arch/arm64/boot/dts/freescale/imx93-11x11-frdm.dts | 686 +-------------------
 arch/arm64/boot/dts/freescale/imx93w-frdm.dts      |  23 +
 5 files changed, 719 insertions(+), 684 deletions(-)
---
base-commit: b8809969e1d7a591e0f49dd464a5d04b3cf02ab1
change-id: 20260716-imx93w_frdm-2528ada72343

Best regards,
-- 
Joseph Guo <qijian.guo@nxp.com>



^ permalink raw reply	[flat|nested] 6+ messages in thread

* [PATCH 1/3] arm64: dts: imx93-11x11-frdm: factor out common parts into dtsi
  2026-07-17  5:11 [PATCH 0/3] Add i.MX93 Wireless FRDM board support Joseph Guo
@ 2026-07-17  5:11 ` Joseph Guo
  2026-07-17 16:29   ` Frank Li
  2026-07-17  5:11 ` [PATCH 2/3] dt-bindings: arm: fsl: Add i.MX93 Wireless FRDM board Joseph Guo
  2026-07-17  5:11 ` [PATCH 3/3] arm64: dts: imx93: Add i.MX93 Wireless FRDM board support Joseph Guo
  2 siblings, 1 reply; 6+ messages in thread
From: Joseph Guo @ 2026-07-17  5:11 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Frank Li,
	Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam, Shawn Guo
  Cc: devicetree, imx, linux-arm-kernel, linux-kernel, Joseph Guo

The i.MX93 Wireless FRDM board reuses most of the i.MX93 FRDM board.
To avoid duplication and DTS-to-DTS includes, extract common hardware
definitions from imx93-11x11-frdm.dts into imx93-11x11-frdm-common.dtsi
to allow the common description shared by both boards.

The FRDM-IMX93 board-specific .dts now includes the common dtsi and only
contains board-specific overrides.

Signed-off-by: Joseph Guo <qijian.guo@nxp.com>
---
 .../dts/freescale/imx93-11x11-frdm-common.dtsi     | 692 +++++++++++++++++++++
 arch/arm64/boot/dts/freescale/imx93-11x11-frdm.dts | 686 +-------------------
 2 files changed, 694 insertions(+), 684 deletions(-)

diff --git a/arch/arm64/boot/dts/freescale/imx93-11x11-frdm-common.dtsi b/arch/arm64/boot/dts/freescale/imx93-11x11-frdm-common.dtsi
new file mode 100644
index 0000000000000000000000000000000000000000..69e23570f71f40a3f3517d31e16a9ca1d3dfb1f2
--- /dev/null
+++ b/arch/arm64/boot/dts/freescale/imx93-11x11-frdm-common.dtsi
@@ -0,0 +1,692 @@
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
+
+#include <dt-bindings/usb/pd.h>
+
+/ {
+
+	aliases {
+		can0 = &flexcan2;
+		ethernet0 = &fec;
+		ethernet1 = &eqos;
+		i2c0 = &lpi2c1;
+		i2c1 = &lpi2c2;
+		i2c2 = &lpi2c3;
+		mmc0 = &usdhc1; /* EMMC */
+		mmc1 = &usdhc2; /* uSD */
+		rtc0 = &pcf2131;
+		serial0 = &lpuart1;
+		serial4 = &lpuart5;
+	};
+
+	chosen {
+		stdout-path = &lpuart1;
+	};
+
+	flexcan2_phy: can-phy {
+		compatible = "nxp,tja1051";
+		#phy-cells = <0>;
+		max-bitrate = <5000000>;
+		silent-gpios = <&pcal6524 23 GPIO_ACTIVE_HIGH>;
+	};
+
+	gpio-keys {
+		compatible = "gpio-keys";
+
+		button-k2 {
+			label = "Button K2";
+			linux,code = <BTN_1>;
+			gpios = <&pcal6524 5 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>;
+			interrupt-parent = <&pcal6524>;
+			interrupts = <5 IRQ_TYPE_EDGE_FALLING>;
+		};
+
+		button-k3 {
+			label = "Button K3";
+			linux,code = <BTN_2>;
+			gpios = <&pcal6524 6 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>;
+			interrupt-parent = <&pcal6524>;
+			interrupts = <6 IRQ_TYPE_EDGE_FALLING>;
+		};
+	};
+
+	reg_usdhc2_vmmc: regulator-usdhc2 {
+		compatible = "regulator-fixed";
+		off-on-delay-us = <12000>;
+		pinctrl-0 = <&pinctrl_reg_usdhc2_vmmc>;
+		pinctrl-names = "default";
+		regulator-min-microvolt = <3300000>;
+		regulator-max-microvolt = <3300000>;
+		regulator-name = "VSD_3V3";
+		vin-supply = <&buck4>;
+		gpio = <&gpio3 7 GPIO_ACTIVE_HIGH>;
+		enable-active-high;
+	};
+
+	reserved-memory {
+		ranges;
+		#address-cells = <2>;
+		#size-cells = <2>;
+
+		linux,cma {
+			compatible = "shared-dma-pool";
+			alloc-ranges = <0 0x80000000 0 0x30000000>;
+			reusable;
+			size = <0 0x10000000>;
+			linux,cma-default;
+		};
+
+		rsc_table: rsc-table@2021e000 {
+			reg = <0 0x2021e000 0 0x1000>;
+			no-map;
+		};
+
+		vdev0vring0: vdev0vring0@a4000000 {
+			reg = <0 0xa4000000 0 0x8000>;
+			no-map;
+		};
+
+		vdev0vring1: vdev0vring1@a4008000 {
+			reg = <0 0xa4008000 0 0x8000>;
+			no-map;
+		};
+
+		vdev1vring0: vdev1vring0@a4010000 {
+			reg = <0 0xa4010000 0 0x8000>;
+			no-map;
+		};
+
+		vdev1vring1: vdev1vring1@a4018000 {
+			reg = <0 0xa4018000 0 0x8000>;
+			no-map;
+		};
+
+		vdevbuffer: vdevbuffer@a4020000 {
+			compatible = "shared-dma-pool";
+			reg = <0 0xa4020000 0 0x100000>;
+			no-map;
+		};
+	};
+};
+
+&adc1 {
+	vref-supply = <&buck5>;
+	status = "okay";
+};
+
+&mu1 {
+	status = "okay";
+};
+
+&cm33 {
+	mboxes = <&mu1 0 1>,
+		 <&mu1 1 1>,
+		 <&mu1 3 1>;
+	mbox-names = "tx", "rx", "rxdb";
+	memory-region = <&vdevbuffer>, <&vdev0vring0>, <&vdev0vring1>,
+			<&vdev1vring0>, <&vdev1vring1>, <&rsc_table>;
+	status = "okay";
+};
+
+&eqos {
+	pinctrl-names = "default", "sleep";
+	pinctrl-0 = <&pinctrl_eqos>;
+	pinctrl-1 = <&pinctrl_eqos_sleep>;
+	phy-handle = <&ethphy1>;
+	phy-mode = "rgmii-id";
+	status = "okay";
+
+	mdio {
+		compatible = "snps,dwmac-mdio";
+		#address-cells = <1>;
+		#size-cells = <0>;
+		clock-frequency = <5000000>;
+
+		ethphy1: ethernet-phy@1 {
+			reg = <1>;
+			reset-assert-us = <10000>;
+			reset-deassert-us = <80000>;
+			reset-gpios = <&pcal6524 15 GPIO_ACTIVE_LOW>;
+			realtek,clkout-disable;
+		};
+	};
+};
+
+&fec {
+	pinctrl-names = "default", "sleep";
+	pinctrl-0 = <&pinctrl_fec>;
+	pinctrl-1 = <&pinctrl_fec_sleep>;
+	phy-mode = "rgmii-id";
+	phy-handle = <&ethphy2>;
+	fsl,magic-packet;
+	status = "okay";
+
+	mdio {
+		#address-cells = <1>;
+		#size-cells = <0>;
+		clock-frequency = <5000000>;
+
+		ethphy2: ethernet-phy@2 {
+			reg = <2>;
+			reset-assert-us = <10000>;
+			reset-deassert-us = <80000>;
+			reset-gpios = <&pcal6524 16 GPIO_ACTIVE_LOW>;
+			realtek,clkout-disable;
+		};
+	};
+};
+
+&flexcan2 {
+	phys = <&flexcan2_phy>;
+	pinctrl-0 = <&pinctrl_flexcan2>;
+	pinctrl-1 = <&pinctrl_flexcan2_sleep>;
+	pinctrl-names = "default", "sleep";
+	status = "okay";
+};
+
+&lpi2c1 {
+	clock-frequency = <400000>;
+	pinctrl-0 = <&pinctrl_lpi2c1>;
+	pinctrl-names = "default";
+	status = "okay";
+
+	pcal6408: gpio@20 {
+		compatible = "nxp,pcal6408";
+		reg = <0x20>;
+		#gpio-cells = <2>;
+		gpio-controller;
+		reset-gpios = <&pcal6524 20 GPIO_ACTIVE_LOW>;
+	};
+};
+
+&lpi2c2 {
+	clock-frequency = <400000>;
+	pinctrl-0 = <&pinctrl_lpi2c2>;
+	pinctrl-names = "default";
+	status = "okay";
+
+	pcal6524: gpio@22 {
+		compatible = "nxp,pcal6524";
+		reg = <0x22>;
+		#interrupt-cells = <2>;
+		interrupt-controller;
+		interrupt-parent = <&gpio3>;
+		interrupts = <27 IRQ_TYPE_LEVEL_LOW>;
+		#gpio-cells = <2>;
+		gpio-controller;
+		pinctrl-0 = <&pinctrl_pcal6524>;
+		pinctrl-names = "default";
+		/* does not boot with supplier set, because it is the bucks interrupt parent */
+		/* vcc-supply = <&buck4>; */
+	};
+
+	pmic@25 {
+		compatible = "nxp,pca9451a";
+		reg = <0x25>;
+		interrupt-parent = <&pcal6524>;
+		interrupts = <11 IRQ_TYPE_EDGE_FALLING>;
+
+		regulators {
+
+			buck1: BUCK1 {
+				regulator-name = "VDD_SOC_0V8";
+				regulator-min-microvolt = <610000>;
+				regulator-max-microvolt = <950000>;
+				regulator-always-on;
+				regulator-boot-on;
+				regulator-ramp-delay = <3125>;
+			};
+
+			buck2: BUCK2 {
+				regulator-name = "LPD4_x_VDDQ_0V6";
+				regulator-min-microvolt = <600000>;
+				regulator-max-microvolt = <670000>;
+				regulator-always-on;
+				regulator-boot-on;
+				regulator-ramp-delay = <3125>;
+			};
+
+			buck4: BUCK4 {
+				regulator-name = "VDD_3V3";
+				regulator-min-microvolt = <3300000>;
+				regulator-max-microvolt = <3300000>;
+				regulator-always-on;
+				regulator-boot-on;
+			};
+
+			buck5: BUCK5 {
+				regulator-name = "VDD_1V8";
+				regulator-min-microvolt = <1800000>;
+				regulator-max-microvolt = <1800000>;
+				regulator-always-on;
+				regulator-boot-on;
+			};
+
+			buck6: BUCK6 {
+				regulator-name = "LPD4_x_VDD2_1V1";
+				regulator-min-microvolt = <1060000>;
+				regulator-max-microvolt = <1140000>;
+				regulator-always-on;
+				regulator-boot-on;
+			};
+
+			ldo1: LDO1 {
+				regulator-name = "NVCC_BBSM_1V8";
+				regulator-min-microvolt = <1620000>;
+				regulator-max-microvolt = <1980000>;
+				regulator-always-on;
+				regulator-boot-on;
+			};
+
+			ldo4: LDO4 {
+				regulator-name = "VDD_ANA_0V8";
+				regulator-min-microvolt = <800000>;
+				regulator-max-microvolt = <840000>;
+				regulator-always-on;
+				regulator-boot-on;
+			};
+
+			ldo5: LDO5 {
+				regulator-name = "NVCC_SD";
+				regulator-min-microvolt = <1800000>;
+				regulator-max-microvolt = <3300000>;
+				regulator-always-on;
+				regulator-boot-on;
+			};
+		};
+	};
+
+	eeprom: eeprom@50 {
+		compatible = "atmel,24c256";
+		reg = <0x50>;
+		pagesize = <64>;
+		vcc-supply = <&buck4>;
+	};
+};
+
+&lpi2c3 {
+	clock-frequency = <400000>;
+	pinctrl-0 = <&pinctrl_lpi2c3>;
+	pinctrl-names = "default";
+	status = "okay";
+
+	ptn5110: tcpc@50 {
+		compatible = "nxp,ptn5110", "tcpci";
+		reg = <0x50>;
+		interrupt-parent = <&gpio3>;
+		interrupts = <27 IRQ_TYPE_LEVEL_LOW>;
+
+		typec1_con: connector {
+			compatible = "usb-c-connector";
+			data-role = "dual";
+			label = "USB-C";
+			op-sink-microwatt = <15000000>;
+			power-role = "dual";
+			self-powered;
+			sink-pdos = <PDO_FIXED(5000, 3000, PDO_FIXED_USB_COMM)
+					PDO_VAR(5000, 20000, 3000)>;
+			source-pdos = <PDO_FIXED(5000, 3000, PDO_FIXED_USB_COMM)>;
+			try-power-role = "sink";
+
+			ports {
+				#address-cells = <1>;
+				#size-cells = <0>;
+
+				port@0 {
+					reg = <0>;
+
+					typec1_dr_sw: endpoint {
+						remote-endpoint = <&usb1_drd_sw>;
+					};
+				};
+			};
+		};
+	};
+
+	pcf2131: rtc@53 {
+		compatible = "nxp,pcf2131";
+		reg = <0x53>;
+		interrupt-parent = <&pcal6524>;
+		interrupts = <1 IRQ_TYPE_EDGE_FALLING>;
+	};
+};
+
+&lpuart1 { /* console */
+	pinctrl-0 = <&pinctrl_uart1>;
+	pinctrl-names = "default";
+	status = "okay";
+};
+
+&lpuart5 {
+	pinctrl-0 = <&pinctrl_uart5>;
+	pinctrl-names = "default";
+	status = "okay";
+
+	uart-has-rtscts;
+
+	bluetooth {
+		compatible = "nxp,88w8987-bt";
+		device-wakeup-gpios = <&pcal6408 3 GPIO_ACTIVE_HIGH>;
+		reset-gpios = <&pcal6524 19 GPIO_ACTIVE_LOW>;
+		vcc-supply = <&reg_usdhc3_vmmc>;
+	};
+};
+
+&usbotg1 {
+	adp-disable;
+	disable-over-current;
+	dr_mode = "otg";
+	hnp-disable;
+	srp-disable;
+	usb-role-switch;
+	samsung,picophy-dc-vol-level-adjust = <7>;
+	samsung,picophy-pre-emp-curr-control = <3>;
+	status = "okay";
+
+	port {
+		usb1_drd_sw: endpoint {
+			remote-endpoint = <&typec1_dr_sw>;
+		};
+	};
+};
+
+&usbotg2 {
+	disable-over-current;
+	dr_mode = "host";
+	samsung,picophy-dc-vol-level-adjust = <7>;
+	samsung,picophy-pre-emp-curr-control = <3>;
+	status = "okay";
+};
+
+&usdhc1 {
+	bus-width = <8>;
+	non-removable;
+	pinctrl-0 = <&pinctrl_usdhc1>;
+	pinctrl-1 = <&pinctrl_usdhc1_100mhz>;
+	pinctrl-2 = <&pinctrl_usdhc1_200mhz>;
+	pinctrl-names = "default", "state_100mhz", "state_200mhz";
+	vmmc-supply = <&buck4>;
+	status = "okay";
+};
+
+&usdhc2 {
+	bus-width = <4>;
+	cd-gpios = <&gpio3 00 GPIO_ACTIVE_LOW>;
+	no-mmc;
+	no-sdio;
+	pinctrl-0 = <&pinctrl_usdhc2>, <&pinctrl_usdhc2_gpio>;
+	pinctrl-1 = <&pinctrl_usdhc2_100mhz>, <&pinctrl_usdhc2_gpio>;
+	pinctrl-2 = <&pinctrl_usdhc2_200mhz>, <&pinctrl_usdhc2_gpio>;
+	pinctrl-3 = <&pinctrl_usdhc2_sleep>, <&pinctrl_usdhc2_gpio_sleep>;
+	pinctrl-names = "default", "state_100mhz", "state_200mhz", "sleep";
+	vmmc-supply = <&reg_usdhc2_vmmc>;
+	status = "okay";
+};
+
+&wdog3 {
+	pinctrl-names = "default";
+	pinctrl-0 = <&pinctrl_wdog>;
+	fsl,ext-reset-output;
+	status = "okay";
+};
+
+&iomuxc {
+
+	pinctrl_eqos: eqosgrp {
+		fsl,pins = <
+			MX93_PAD_ENET1_MDC__ENET_QOS_MDC			0x57e
+			MX93_PAD_ENET1_MDIO__ENET_QOS_MDIO			0x57e
+			MX93_PAD_ENET1_RD0__ENET_QOS_RGMII_RD0			0x57e
+			MX93_PAD_ENET1_RD1__ENET_QOS_RGMII_RD1			0x57e
+			MX93_PAD_ENET1_RD2__ENET_QOS_RGMII_RD2			0x57e
+			MX93_PAD_ENET1_RD3__ENET_QOS_RGMII_RD3			0x57e
+			MX93_PAD_ENET1_RXC__CCM_ENET_QOS_CLOCK_GENERATE_RX_CLK	0x58e
+			MX93_PAD_ENET1_RX_CTL__ENET_QOS_RGMII_RX_CTL		0x57e
+			MX93_PAD_ENET1_TD0__ENET_QOS_RGMII_TD0			0x57e
+			MX93_PAD_ENET1_TD1__ENET_QOS_RGMII_TD1			0x57e
+			MX93_PAD_ENET1_TD2__ENET_QOS_RGMII_TD2			0x57e
+			MX93_PAD_ENET1_TD3__ENET_QOS_RGMII_TD3			0x57e
+			MX93_PAD_ENET1_TXC__CCM_ENET_QOS_CLOCK_GENERATE_TX_CLK	0x58e
+			MX93_PAD_ENET1_TX_CTL__ENET_QOS_RGMII_TX_CTL		0x57e
+		>;
+	};
+
+	pinctrl_eqos_sleep: eqossleepgrp {
+		fsl,pins = <
+			MX93_PAD_ENET1_MDC__GPIO4_IO00			0x31e
+			MX93_PAD_ENET1_MDIO__GPIO4_IO01			0x31e
+			MX93_PAD_ENET1_RD0__GPIO4_IO10			0x31e
+			MX93_PAD_ENET1_RD1__GPIO4_IO11			0x31e
+			MX93_PAD_ENET1_RD2__GPIO4_IO12			0x31e
+			MX93_PAD_ENET1_RD3__GPIO4_IO13			0x31e
+			MX93_PAD_ENET1_RXC__GPIO4_IO09			0x31e
+			MX93_PAD_ENET1_RX_CTL__GPIO4_IO08		0x31e
+			MX93_PAD_ENET1_TD0__GPIO4_IO05			0x31e
+			MX93_PAD_ENET1_TD1__GPIO4_IO04			0x31e
+			MX93_PAD_ENET1_TD2__GPIO4_IO03			0x31e
+			MX93_PAD_ENET1_TD3__GPIO4_IO02			0x31e
+			MX93_PAD_ENET1_TXC__GPIO4_IO07			0x31e
+			MX93_PAD_ENET1_TX_CTL__GPIO4_IO06		0x31e
+		>;
+	};
+
+	pinctrl_fec: fecgrp {
+		fsl,pins = <
+			MX93_PAD_ENET2_MDC__ENET1_MDC			0x57e
+			MX93_PAD_ENET2_MDIO__ENET1_MDIO			0x57e
+			MX93_PAD_ENET2_RD0__ENET1_RGMII_RD0		0x57e
+			MX93_PAD_ENET2_RD1__ENET1_RGMII_RD1		0x57e
+			MX93_PAD_ENET2_RD2__ENET1_RGMII_RD2		0x57e
+			MX93_PAD_ENET2_RD3__ENET1_RGMII_RD3		0x57e
+			MX93_PAD_ENET2_RXC__ENET1_RGMII_RXC		0x58e
+			MX93_PAD_ENET2_RX_CTL__ENET1_RGMII_RX_CTL	0x57e
+			MX93_PAD_ENET2_TD0__ENET1_RGMII_TD0		0x57e
+			MX93_PAD_ENET2_TD1__ENET1_RGMII_TD1		0x57e
+			MX93_PAD_ENET2_TD2__ENET1_RGMII_TD2		0x57e
+			MX93_PAD_ENET2_TD3__ENET1_RGMII_TD3		0x57e
+			MX93_PAD_ENET2_TXC__ENET1_RGMII_TXC		0x58e
+			MX93_PAD_ENET2_TX_CTL__ENET1_RGMII_TX_CTL	0x57e
+		>;
+	};
+
+	pinctrl_fec_sleep: fecsleepgrp {
+		fsl,pins = <
+			MX93_PAD_ENET2_MDC__GPIO4_IO14			0x51e
+			MX93_PAD_ENET2_MDIO__GPIO4_IO15			0x51e
+			MX93_PAD_ENET2_RD0__GPIO4_IO24			0x51e
+			MX93_PAD_ENET2_RD1__GPIO4_IO25			0x51e
+			MX93_PAD_ENET2_RD2__GPIO4_IO26			0x51e
+			MX93_PAD_ENET2_RD3__GPIO4_IO27			0x51e
+			MX93_PAD_ENET2_RXC__GPIO4_IO23			0x51e
+			MX93_PAD_ENET2_RX_CTL__GPIO4_IO22		0x51e
+			MX93_PAD_ENET2_TD0__GPIO4_IO19			0x51e
+			MX93_PAD_ENET2_TD1__GPIO4_IO18			0x51e
+			MX93_PAD_ENET2_TD2__GPIO4_IO17			0x51e
+			MX93_PAD_ENET2_TD3__GPIO4_IO16			0x51e
+			MX93_PAD_ENET2_TXC__GPIO4_IO21			0x51e
+			MX93_PAD_ENET2_TX_CTL__GPIO4_IO20		0x51e
+		>;
+	};
+
+	pinctrl_flexcan2: flexcan2grp {
+		fsl,pins = <
+			MX93_PAD_GPIO_IO25__CAN2_TX			0x139e
+			MX93_PAD_GPIO_IO27__CAN2_RX			0x139e
+		>;
+	};
+
+	pinctrl_flexcan2_sleep: flexcan2sleepgrp {
+		fsl,pins = <
+			MX93_PAD_GPIO_IO25__GPIO2_IO25			0x31e
+			MX93_PAD_GPIO_IO27__GPIO2_IO27			0x31e
+		>;
+	};
+
+	pinctrl_lpi2c1: lpi2c1grp {
+		fsl,pins = <
+			MX93_PAD_I2C1_SCL__LPI2C1_SCL			0x40000b9e
+			MX93_PAD_I2C1_SDA__LPI2C1_SDA			0x40000b9e
+		>;
+	};
+
+	pinctrl_lpi2c2: lpi2c2grp {
+		fsl,pins = <
+			MX93_PAD_I2C2_SCL__LPI2C2_SCL			0x40000b9e
+			MX93_PAD_I2C2_SDA__LPI2C2_SDA			0x40000b9e
+		>;
+	};
+
+	pinctrl_lpi2c3: lpi2c3grp {
+		fsl,pins = <
+			MX93_PAD_GPIO_IO28__LPI2C3_SDA			0x40000b9e
+			MX93_PAD_GPIO_IO29__LPI2C3_SCL			0x40000b9e
+		>;
+	};
+
+	pinctrl_pcal6524: pcal6524grp {
+		fsl,pins = <
+			MX93_PAD_CCM_CLKO2__GPIO3_IO27			0x31e
+		>;
+	};
+
+	pinctrl_reg_usdhc2_vmmc: regusdhc2vmmcgrp {
+		fsl,pins = <
+			MX93_PAD_SD2_RESET_B__GPIO3_IO07		0x31e
+		>;
+	};
+
+	pinctrl_uart1: uart1grp {
+		fsl,pins = <
+			MX93_PAD_UART1_RXD__LPUART1_RX			0x31e
+			MX93_PAD_UART1_TXD__LPUART1_TX			0x31e
+		>;
+	};
+
+	pinctrl_uart5: uart5grp {
+		fsl,pins = <
+			MX93_PAD_DAP_TDO_TRACESWO__LPUART5_TX		0x31e
+			MX93_PAD_DAP_TDI__LPUART5_RX			0x31e
+			MX93_PAD_DAP_TMS_SWDIO__LPUART5_RTS_B		0x31e
+			MX93_PAD_DAP_TCLK_SWCLK__LPUART5_CTS_B		0x31e
+		>;
+	};
+
+	/* need to config the SION for data and cmd pad, refer to ERR052021 */
+	pinctrl_usdhc1: usdhc1grp {
+		fsl,pins = <
+			MX93_PAD_SD1_CLK__USDHC1_CLK		0x1582
+			MX93_PAD_SD1_CMD__USDHC1_CMD		0x40001382
+			MX93_PAD_SD1_DATA0__USDHC1_DATA0	0x40001382
+			MX93_PAD_SD1_DATA1__USDHC1_DATA1	0x40001382
+			MX93_PAD_SD1_DATA2__USDHC1_DATA2	0x40001382
+			MX93_PAD_SD1_DATA3__USDHC1_DATA3	0x40001382
+			MX93_PAD_SD1_DATA4__USDHC1_DATA4	0x40001382
+			MX93_PAD_SD1_DATA5__USDHC1_DATA5	0x40001382
+			MX93_PAD_SD1_DATA6__USDHC1_DATA6	0x40001382
+			MX93_PAD_SD1_DATA7__USDHC1_DATA7	0x40001382
+			MX93_PAD_SD1_STROBE__USDHC1_STROBE	0x1582
+		>;
+	};
+
+	/* need to config the SION for data and cmd pad, refer to ERR052021 */
+	pinctrl_usdhc1_100mhz: usdhc1-100mhzgrp {
+		fsl,pins = <
+			MX93_PAD_SD1_CLK__USDHC1_CLK		0x158e
+			MX93_PAD_SD1_CMD__USDHC1_CMD		0x4000138e
+			MX93_PAD_SD1_DATA0__USDHC1_DATA0	0x4000138e
+			MX93_PAD_SD1_DATA1__USDHC1_DATA1	0x4000138e
+			MX93_PAD_SD1_DATA2__USDHC1_DATA2	0x4000138e
+			MX93_PAD_SD1_DATA3__USDHC1_DATA3	0x4000138e
+			MX93_PAD_SD1_DATA4__USDHC1_DATA4	0x4000138e
+			MX93_PAD_SD1_DATA5__USDHC1_DATA5	0x4000138e
+			MX93_PAD_SD1_DATA6__USDHC1_DATA6	0x4000138e
+			MX93_PAD_SD1_DATA7__USDHC1_DATA7	0x4000138e
+			MX93_PAD_SD1_STROBE__USDHC1_STROBE	0x158e
+		>;
+	};
+
+	/* need to config the SION for data and cmd pad, refer to ERR052021 */
+	pinctrl_usdhc1_200mhz: usdhc1-200mhzgrp {
+		fsl,pins = <
+			MX93_PAD_SD1_CLK__USDHC1_CLK		0x15fe
+			MX93_PAD_SD1_CMD__USDHC1_CMD		0x400013fe
+			MX93_PAD_SD1_DATA0__USDHC1_DATA0	0x400013fe
+			MX93_PAD_SD1_DATA1__USDHC1_DATA1	0x400013fe
+			MX93_PAD_SD1_DATA2__USDHC1_DATA2	0x400013fe
+			MX93_PAD_SD1_DATA3__USDHC1_DATA3	0x400013fe
+			MX93_PAD_SD1_DATA4__USDHC1_DATA4	0x400013fe
+			MX93_PAD_SD1_DATA5__USDHC1_DATA5	0x400013fe
+			MX93_PAD_SD1_DATA6__USDHC1_DATA6	0x400013fe
+			MX93_PAD_SD1_DATA7__USDHC1_DATA7	0x400013fe
+			MX93_PAD_SD1_STROBE__USDHC1_STROBE	0x15fe
+		>;
+	};
+
+	pinctrl_usdhc2_gpio: usdhc2gpiogrp {
+		fsl,pins = <
+			MX93_PAD_SD2_CD_B__GPIO3_IO00		0x31e
+		>;
+	};
+
+	pinctrl_usdhc2_gpio_sleep: usdhc2gpiosleepgrp {
+		fsl,pins = <
+			MX93_PAD_SD2_CD_B__GPIO3_IO00		0x51e
+		>;
+	};
+
+	/* need to config the SION for data and cmd pad, refer to ERR052021 */
+	pinctrl_usdhc2: usdhc2grp {
+		fsl,pins = <
+			MX93_PAD_SD2_CLK__USDHC2_CLK		0x1582
+			MX93_PAD_SD2_CMD__USDHC2_CMD		0x40001382
+			MX93_PAD_SD2_DATA0__USDHC2_DATA0	0x40001382
+			MX93_PAD_SD2_DATA1__USDHC2_DATA1	0x40001382
+			MX93_PAD_SD2_DATA2__USDHC2_DATA2	0x40001382
+			MX93_PAD_SD2_DATA3__USDHC2_DATA3	0x40001382
+			MX93_PAD_SD2_VSELECT__USDHC2_VSELECT	0x51e
+		>;
+	};
+
+	/* need to config the SION for data and cmd pad, refer to ERR052021 */
+	pinctrl_usdhc2_100mhz: usdhc2-100mhzgrp {
+		fsl,pins = <
+			MX93_PAD_SD2_CLK__USDHC2_CLK		0x158e
+			MX93_PAD_SD2_CMD__USDHC2_CMD		0x4000138e
+			MX93_PAD_SD2_DATA0__USDHC2_DATA0	0x4000138e
+			MX93_PAD_SD2_DATA1__USDHC2_DATA1	0x4000138e
+			MX93_PAD_SD2_DATA2__USDHC2_DATA2	0x4000138e
+			MX93_PAD_SD2_DATA3__USDHC2_DATA3	0x4000138e
+			MX93_PAD_SD2_VSELECT__USDHC2_VSELECT	0x51e
+		>;
+	};
+
+	/* need to config the SION for data and cmd pad, refer to ERR052021 */
+	pinctrl_usdhc2_200mhz: usdhc2-200mhzgrp {
+		fsl,pins = <
+			MX93_PAD_SD2_CLK__USDHC2_CLK		0x15fe
+			MX93_PAD_SD2_CMD__USDHC2_CMD		0x400013fe
+			MX93_PAD_SD2_DATA0__USDHC2_DATA0	0x400013fe
+			MX93_PAD_SD2_DATA1__USDHC2_DATA1	0x400013fe
+			MX93_PAD_SD2_DATA2__USDHC2_DATA2	0x400013fe
+			MX93_PAD_SD2_DATA3__USDHC2_DATA3	0x400013fe
+			MX93_PAD_SD2_VSELECT__USDHC2_VSELECT	0x51e
+		>;
+	};
+
+	pinctrl_usdhc2_sleep: usdhc2-sleepgrp {
+		fsl,pins = <
+			MX93_PAD_SD2_CLK__GPIO3_IO01		0x51e
+			MX93_PAD_SD2_CMD__GPIO3_IO02		0x51e
+			MX93_PAD_SD2_DATA0__GPIO3_IO03		0x51e
+			MX93_PAD_SD2_DATA1__GPIO3_IO04		0x51e
+			MX93_PAD_SD2_DATA2__GPIO3_IO05		0x51e
+			MX93_PAD_SD2_DATA3__GPIO3_IO06		0x51e
+			MX93_PAD_SD2_VSELECT__GPIO3_IO19	0x51e
+		>;
+	};
+
+	pinctrl_wdog: wdoggrp {
+		fsl,pins = <
+			MX93_PAD_WDOG_ANY__WDOG1_WDOG_ANY	0x31e
+		>;
+	};
+};
diff --git a/arch/arm64/boot/dts/freescale/imx93-11x11-frdm.dts b/arch/arm64/boot/dts/freescale/imx93-11x11-frdm.dts
index bd14ba28690c081817111aaabef12fb56a7c56a4..f2a31a0eacabff07532aee989eebd75a0c3e22e0 100644
--- a/arch/arm64/boot/dts/freescale/imx93-11x11-frdm.dts
+++ b/arch/arm64/boot/dts/freescale/imx93-11x11-frdm.dts
@@ -1,71 +1,14 @@
 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
+
 /dts-v1/;
 
-#include <dt-bindings/usb/pd.h>
 #include "imx93.dtsi"
+#include "imx93-11x11-frdm-common.dtsi"
 
 / {
 	compatible = "fsl,imx93-11x11-frdm", "fsl,imx93";
 	model = "NXP i.MX93 11X11 FRDM board";
 
-	aliases {
-		can0 = &flexcan2;
-		ethernet0 = &fec;
-		ethernet1 = &eqos;
-		i2c0 = &lpi2c1;
-		i2c1 = &lpi2c2;
-		i2c2 = &lpi2c3;
-		mmc0 = &usdhc1; /* EMMC */
-		mmc1 = &usdhc2; /* uSD */
-		rtc0 = &pcf2131;
-		serial0 = &lpuart1;
-		serial4 = &lpuart5;
-	};
-
-	chosen {
-		stdout-path = &lpuart1;
-	};
-
-	flexcan2_phy: can-phy {
-		compatible = "nxp,tja1051";
-		#phy-cells = <0>;
-		max-bitrate = <5000000>;
-		silent-gpios = <&pcal6524 23 GPIO_ACTIVE_HIGH>;
-	};
-
-	gpio-keys {
-		compatible = "gpio-keys";
-
-		button-k2 {
-			label = "Button K2";
-			linux,code = <BTN_1>;
-			gpios = <&pcal6524 5 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>;
-			interrupt-parent = <&pcal6524>;
-			interrupts = <5 IRQ_TYPE_EDGE_FALLING>;
-		};
-
-		button-k3 {
-			label = "Button K3";
-			linux,code = <BTN_2>;
-			gpios = <&pcal6524 6 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>;
-			interrupt-parent = <&pcal6524>;
-			interrupts = <6 IRQ_TYPE_EDGE_FALLING>;
-		};
-	};
-
-	reg_usdhc2_vmmc: regulator-usdhc2 {
-		compatible = "regulator-fixed";
-		off-on-delay-us = <12000>;
-		pinctrl-0 = <&pinctrl_reg_usdhc2_vmmc>;
-		pinctrl-names = "default";
-		regulator-min-microvolt = <3300000>;
-		regulator-max-microvolt = <3300000>;
-		regulator-name = "VSD_3V3";
-		vin-supply = <&buck4>;
-		gpio = <&gpio3 7 GPIO_ACTIVE_HIGH>;
-		enable-active-high;
-	};
-
 	reg_usdhc3_vmmc: regulator-usdhc3 {
 		compatible = "regulator-fixed";
 		regulator-name = "VPCIe_3V3";
@@ -76,51 +19,6 @@ reg_usdhc3_vmmc: regulator-usdhc3 {
 		enable-active-high;
 	};
 
-	reserved-memory {
-		ranges;
-		#address-cells = <2>;
-		#size-cells = <2>;
-
-		linux,cma {
-			compatible = "shared-dma-pool";
-			alloc-ranges = <0 0x80000000 0 0x30000000>;
-			reusable;
-			size = <0 0x10000000>;
-			linux,cma-default;
-		};
-
-		rsc_table: rsc-table@2021e000 {
-			reg = <0 0x2021e000 0 0x1000>;
-			no-map;
-		};
-
-		vdev0vring0: vdev0vring0@a4000000 {
-			reg = <0 0xa4000000 0 0x8000>;
-			no-map;
-		};
-
-		vdev0vring1: vdev0vring1@a4008000 {
-			reg = <0 0xa4008000 0 0x8000>;
-			no-map;
-		};
-
-		vdev1vring0: vdev1vring0@a4010000 {
-			reg = <0 0xa4010000 0 0x8000>;
-			no-map;
-		};
-
-		vdev1vring1: vdev1vring1@a4018000 {
-			reg = <0 0xa4018000 0 0x8000>;
-			no-map;
-		};
-
-		vdevbuffer: vdevbuffer@a4020000 {
-			compatible = "shared-dma-pool";
-			reg = <0 0xa4020000 0 0x100000>;
-			no-map;
-		};
-	};
-
 	sound-mqs {
 		compatible = "fsl,imx-audio-mqs";
 		model = "mqs-audio";
@@ -134,269 +32,6 @@ usdhc3_pwrseq: mmc-pwrseq {
 	};
 };
 
-&adc1 {
-	vref-supply = <&buck5>;
-	status = "okay";
-};
-
-&mu1 {
-	status = "okay";
-};
-
-&cm33 {
-	mboxes = <&mu1 0 1>,
-		 <&mu1 1 1>,
-		 <&mu1 3 1>;
-	mbox-names = "tx", "rx", "rxdb";
-	memory-region = <&vdevbuffer>, <&vdev0vring0>, <&vdev0vring1>,
-			<&vdev1vring0>, <&vdev1vring1>, <&rsc_table>;
-	status = "okay";
-};
-
-&eqos {
-	pinctrl-names = "default", "sleep";
-	pinctrl-0 = <&pinctrl_eqos>;
-	pinctrl-1 = <&pinctrl_eqos_sleep>;
-	phy-handle = <&ethphy1>;
-	phy-mode = "rgmii-id";
-	status = "okay";
-
-	mdio {
-		compatible = "snps,dwmac-mdio";
-		#address-cells = <1>;
-		#size-cells = <0>;
-		clock-frequency = <5000000>;
-
-		ethphy1: ethernet-phy@1 {
-			reg = <1>;
-			reset-assert-us = <10000>;
-			reset-deassert-us = <80000>;
-			reset-gpios = <&pcal6524 15 GPIO_ACTIVE_LOW>;
-			realtek,clkout-disable;
-		};
-	};
-};
-
-&fec {
-	pinctrl-names = "default", "sleep";
-	pinctrl-0 = <&pinctrl_fec>;
-	pinctrl-1 = <&pinctrl_fec_sleep>;
-	phy-mode = "rgmii-id";
-	phy-handle = <&ethphy2>;
-	fsl,magic-packet;
-	status = "okay";
-
-	mdio {
-		#address-cells = <1>;
-		#size-cells = <0>;
-		clock-frequency = <5000000>;
-
-		ethphy2: ethernet-phy@2 {
-			reg = <2>;
-			reset-assert-us = <10000>;
-			reset-deassert-us = <80000>;
-			reset-gpios = <&pcal6524 16 GPIO_ACTIVE_LOW>;
-			realtek,clkout-disable;
-		};
-	};
-};
-
-&flexcan2 {
-	phys = <&flexcan2_phy>;
-	pinctrl-0 = <&pinctrl_flexcan2>;
-	pinctrl-1 = <&pinctrl_flexcan2_sleep>;
-	pinctrl-names = "default", "sleep";
-	status = "okay";
-};
-
-&lpi2c1 {
-	clock-frequency = <400000>;
-	pinctrl-0 = <&pinctrl_lpi2c1>;
-	pinctrl-names = "default";
-	status = "okay";
-
-	pcal6408: gpio@20 {
-		compatible = "nxp,pcal6408";
-		reg = <0x20>;
-		#gpio-cells = <2>;
-		gpio-controller;
-		reset-gpios = <&pcal6524 20 GPIO_ACTIVE_LOW>;
-	};
-};
-
-&lpi2c2 {
-	clock-frequency = <400000>;
-	pinctrl-0 = <&pinctrl_lpi2c2>;
-	pinctrl-names = "default";
-	status = "okay";
-
-	pcal6524: gpio@22 {
-		compatible = "nxp,pcal6524";
-		reg = <0x22>;
-		#interrupt-cells = <2>;
-		interrupt-controller;
-		interrupt-parent = <&gpio3>;
-		interrupts = <27 IRQ_TYPE_LEVEL_LOW>;
-		#gpio-cells = <2>;
-		gpio-controller;
-		pinctrl-0 = <&pinctrl_pcal6524>;
-		pinctrl-names = "default";
-		/* does not boot with supplier set, because it is the bucks interrupt parent */
-		/* vcc-supply = <&buck4>; */
-	};
-
-	pmic@25 {
-		compatible = "nxp,pca9451a";
-		reg = <0x25>;
-		interrupt-parent = <&pcal6524>;
-		interrupts = <11 IRQ_TYPE_EDGE_FALLING>;
-
-		regulators {
-
-			buck1: BUCK1 {
-				regulator-name = "VDD_SOC_0V8";
-				regulator-min-microvolt = <610000>;
-				regulator-max-microvolt = <950000>;
-				regulator-always-on;
-				regulator-boot-on;
-				regulator-ramp-delay = <3125>;
-			};
-
-			buck2: BUCK2 {
-				regulator-name = "LPD4_x_VDDQ_0V6";
-				regulator-min-microvolt = <600000>;
-				regulator-max-microvolt = <670000>;
-				regulator-always-on;
-				regulator-boot-on;
-				regulator-ramp-delay = <3125>;
-			};
-
-			buck4: BUCK4 {
-				regulator-name = "VDD_3V3";
-				regulator-min-microvolt = <3300000>;
-				regulator-max-microvolt = <3300000>;
-				regulator-always-on;
-				regulator-boot-on;
-			};
-
-			buck5: BUCK5 {
-				regulator-name = "VDD_1V8";
-				regulator-min-microvolt = <1800000>;
-				regulator-max-microvolt = <1800000>;
-				regulator-always-on;
-				regulator-boot-on;
-			};
-
-			buck6: BUCK6 {
-				regulator-name = "LPD4_x_VDD2_1V1";
-				regulator-min-microvolt = <1060000>;
-				regulator-max-microvolt = <1140000>;
-				regulator-always-on;
-				regulator-boot-on;
-			};
-
-			ldo1: LDO1 {
-				regulator-name = "NVCC_BBSM_1V8";
-				regulator-min-microvolt = <1620000>;
-				regulator-max-microvolt = <1980000>;
-				regulator-always-on;
-				regulator-boot-on;
-			};
-
-			ldo4: LDO4 {
-				regulator-name = "VDD_ANA_0V8";
-				regulator-min-microvolt = <800000>;
-				regulator-max-microvolt = <840000>;
-				regulator-always-on;
-				regulator-boot-on;
-			};
-
-			ldo5: LDO5 {
-				regulator-name = "NVCC_SD";
-				regulator-min-microvolt = <1800000>;
-				regulator-max-microvolt = <3300000>;
-				regulator-always-on;
-				regulator-boot-on;
-			};
-		};
-	};
-
-	eeprom: eeprom@50 {
-		compatible = "atmel,24c256";
-		reg = <0x50>;
-		pagesize = <64>;
-		vcc-supply = <&buck4>;
-	};
-};
-
-&lpi2c3 {
-	clock-frequency = <400000>;
-	pinctrl-0 = <&pinctrl_lpi2c3>;
-	pinctrl-names = "default";
-	status = "okay";
-
-	ptn5110: tcpc@50 {
-		compatible = "nxp,ptn5110", "tcpci";
-		reg = <0x50>;
-		interrupt-parent = <&gpio3>;
-		interrupts = <27 IRQ_TYPE_LEVEL_LOW>;
-
-		typec1_con: connector {
-			compatible = "usb-c-connector";
-			data-role = "dual";
-			label = "USB-C";
-			op-sink-microwatt = <15000000>;
-			power-role = "dual";
-			self-powered;
-			sink-pdos = <PDO_FIXED(5000, 3000, PDO_FIXED_USB_COMM)
-					PDO_VAR(5000, 20000, 3000)>;
-			source-pdos = <PDO_FIXED(5000, 3000, PDO_FIXED_USB_COMM)>;
-			try-power-role = "sink";
-
-			ports {
-				#address-cells = <1>;
-				#size-cells = <0>;
-
-				port@0 {
-					reg = <0>;
-
-					typec1_dr_sw: endpoint {
-						remote-endpoint = <&usb1_drd_sw>;
-					};
-				};
-			};
-		};
-	};
-
-	pcf2131: rtc@53 {
-		compatible = "nxp,pcf2131";
-		reg = <0x53>;
-		interrupt-parent = <&pcal6524>;
-		interrupts = <1 IRQ_TYPE_EDGE_FALLING>;
-	};
-};
-
-&lpuart1 { /* console */
-	pinctrl-0 = <&pinctrl_uart1>;
-	pinctrl-names = "default";
-	status = "okay";
-};
-
-&lpuart5 {
-	pinctrl-0 = <&pinctrl_uart5>;
-	pinctrl-names = "default";
-	status = "okay";
-
-	uart-has-rtscts;
-
-	bluetooth {
-		compatible = "nxp,88w8987-bt";
-		device-wakeup-gpios = <&pcal6408 3 GPIO_ACTIVE_HIGH>;
-		reset-gpios = <&pcal6524 19 GPIO_ACTIVE_LOW>;
-		vcc-supply = <&reg_usdhc3_vmmc>;
-	};
-};
-
 &mqs1 {
 	pinctrl-names = "default";
 	pinctrl-0 = <&pinctrl_mqs1>;
@@ -418,57 +53,6 @@ &sai1 {
 	status = "okay";
 };
 
-&usbotg1 {
-	adp-disable;
-	disable-over-current;
-	dr_mode = "otg";
-	hnp-disable;
-	srp-disable;
-	usb-role-switch;
-	samsung,picophy-dc-vol-level-adjust = <7>;
-	samsung,picophy-pre-emp-curr-control = <3>;
-	status = "okay";
-
-	port {
-		usb1_drd_sw: endpoint {
-			remote-endpoint = <&typec1_dr_sw>;
-		};
-	};
-};
-
-&usbotg2 {
-	disable-over-current;
-	dr_mode = "host";
-	samsung,picophy-dc-vol-level-adjust = <7>;
-	samsung,picophy-pre-emp-curr-control = <3>;
-	status = "okay";
-};
-
-&usdhc1 {
-	bus-width = <8>;
-	non-removable;
-	pinctrl-0 = <&pinctrl_usdhc1>;
-	pinctrl-1 = <&pinctrl_usdhc1_100mhz>;
-	pinctrl-2 = <&pinctrl_usdhc1_200mhz>;
-	pinctrl-names = "default", "state_100mhz", "state_200mhz";
-	vmmc-supply = <&buck4>;
-	status = "okay";
-};
-
-&usdhc2 {
-	bus-width = <4>;
-	cd-gpios = <&gpio3 00 GPIO_ACTIVE_LOW>;
-	no-mmc;
-	no-sdio;
-	pinctrl-0 = <&pinctrl_usdhc2>, <&pinctrl_usdhc2_gpio>;
-	pinctrl-1 = <&pinctrl_usdhc2_100mhz>, <&pinctrl_usdhc2_gpio>;
-	pinctrl-2 = <&pinctrl_usdhc2_200mhz>, <&pinctrl_usdhc2_gpio>;
-	pinctrl-3 = <&pinctrl_usdhc2_sleep>, <&pinctrl_usdhc2_gpio_sleep>;
-	pinctrl-names = "default", "state_100mhz", "state_200mhz", "sleep";
-	vmmc-supply = <&reg_usdhc2_vmmc>;
-	status = "okay";
-};
-
 &usdhc3 {
 	bus-width = <4>;
 	keep-power-in-suspend;
@@ -483,126 +67,8 @@ &usdhc3 {
 	status = "okay";
 };
 
-&wdog3 {
-	pinctrl-names = "default";
-	pinctrl-0 = <&pinctrl_wdog>;
-	fsl,ext-reset-output;
-	status = "okay";
-};
 
 &iomuxc {
-
-	pinctrl_eqos: eqosgrp {
-		fsl,pins = <
-			MX93_PAD_ENET1_MDC__ENET_QOS_MDC			0x57e
-			MX93_PAD_ENET1_MDIO__ENET_QOS_MDIO			0x57e
-			MX93_PAD_ENET1_RD0__ENET_QOS_RGMII_RD0			0x57e
-			MX93_PAD_ENET1_RD1__ENET_QOS_RGMII_RD1			0x57e
-			MX93_PAD_ENET1_RD2__ENET_QOS_RGMII_RD2			0x57e
-			MX93_PAD_ENET1_RD3__ENET_QOS_RGMII_RD3			0x57e
-			MX93_PAD_ENET1_RXC__CCM_ENET_QOS_CLOCK_GENERATE_RX_CLK	0x58e
-			MX93_PAD_ENET1_RX_CTL__ENET_QOS_RGMII_RX_CTL		0x57e
-			MX93_PAD_ENET1_TD0__ENET_QOS_RGMII_TD0			0x57e
-			MX93_PAD_ENET1_TD1__ENET_QOS_RGMII_TD1			0x57e
-			MX93_PAD_ENET1_TD2__ENET_QOS_RGMII_TD2			0x57e
-			MX93_PAD_ENET1_TD3__ENET_QOS_RGMII_TD3			0x57e
-			MX93_PAD_ENET1_TXC__CCM_ENET_QOS_CLOCK_GENERATE_TX_CLK	0x58e
-			MX93_PAD_ENET1_TX_CTL__ENET_QOS_RGMII_TX_CTL		0x57e
-		>;
-	};
-
-	pinctrl_eqos_sleep: eqossleepgrp {
-		fsl,pins = <
-			MX93_PAD_ENET1_MDC__GPIO4_IO00			0x31e
-			MX93_PAD_ENET1_MDIO__GPIO4_IO01			0x31e
-			MX93_PAD_ENET1_RD0__GPIO4_IO10			0x31e
-			MX93_PAD_ENET1_RD1__GPIO4_IO11			0x31e
-			MX93_PAD_ENET1_RD2__GPIO4_IO12			0x31e
-			MX93_PAD_ENET1_RD3__GPIO4_IO13			0x31e
-			MX93_PAD_ENET1_RXC__GPIO4_IO09			0x31e
-			MX93_PAD_ENET1_RX_CTL__GPIO4_IO08		0x31e
-			MX93_PAD_ENET1_TD0__GPIO4_IO05			0x31e
-			MX93_PAD_ENET1_TD1__GPIO4_IO04			0x31e
-			MX93_PAD_ENET1_TD2__GPIO4_IO03			0x31e
-			MX93_PAD_ENET1_TD3__GPIO4_IO02			0x31e
-			MX93_PAD_ENET1_TXC__GPIO4_IO07			0x31e
-			MX93_PAD_ENET1_TX_CTL__GPIO4_IO06		0x31e
-		>;
-	};
-
-	pinctrl_fec: fecgrp {
-		fsl,pins = <
-			MX93_PAD_ENET2_MDC__ENET1_MDC			0x57e
-			MX93_PAD_ENET2_MDIO__ENET1_MDIO			0x57e
-			MX93_PAD_ENET2_RD0__ENET1_RGMII_RD0		0x57e
-			MX93_PAD_ENET2_RD1__ENET1_RGMII_RD1		0x57e
-			MX93_PAD_ENET2_RD2__ENET1_RGMII_RD2		0x57e
-			MX93_PAD_ENET2_RD3__ENET1_RGMII_RD3		0x57e
-			MX93_PAD_ENET2_RXC__ENET1_RGMII_RXC		0x58e
-			MX93_PAD_ENET2_RX_CTL__ENET1_RGMII_RX_CTL	0x57e
-			MX93_PAD_ENET2_TD0__ENET1_RGMII_TD0		0x57e
-			MX93_PAD_ENET2_TD1__ENET1_RGMII_TD1		0x57e
-			MX93_PAD_ENET2_TD2__ENET1_RGMII_TD2		0x57e
-			MX93_PAD_ENET2_TD3__ENET1_RGMII_TD3		0x57e
-			MX93_PAD_ENET2_TXC__ENET1_RGMII_TXC		0x58e
-			MX93_PAD_ENET2_TX_CTL__ENET1_RGMII_TX_CTL	0x57e
-		>;
-	};
-
-	pinctrl_fec_sleep: fecsleepgrp {
-		fsl,pins = <
-			MX93_PAD_ENET2_MDC__GPIO4_IO14			0x51e
-			MX93_PAD_ENET2_MDIO__GPIO4_IO15			0x51e
-			MX93_PAD_ENET2_RD0__GPIO4_IO24			0x51e
-			MX93_PAD_ENET2_RD1__GPIO4_IO25			0x51e
-			MX93_PAD_ENET2_RD2__GPIO4_IO26			0x51e
-			MX93_PAD_ENET2_RD3__GPIO4_IO27			0x51e
-			MX93_PAD_ENET2_RXC__GPIO4_IO23			0x51e
-			MX93_PAD_ENET2_RX_CTL__GPIO4_IO22		0x51e
-			MX93_PAD_ENET2_TD0__GPIO4_IO19			0x51e
-			MX93_PAD_ENET2_TD1__GPIO4_IO18			0x51e
-			MX93_PAD_ENET2_TD2__GPIO4_IO17			0x51e
-			MX93_PAD_ENET2_TD3__GPIO4_IO16			0x51e
-			MX93_PAD_ENET2_TXC__GPIO4_IO21			0x51e
-			MX93_PAD_ENET2_TX_CTL__GPIO4_IO20		0x51e
-		>;
-	};
-
-	pinctrl_flexcan2: flexcan2grp {
-		fsl,pins = <
-			MX93_PAD_GPIO_IO25__CAN2_TX			0x139e
-			MX93_PAD_GPIO_IO27__CAN2_RX			0x139e
-		>;
-	};
-
-	pinctrl_flexcan2_sleep: flexcan2sleepgrp {
-		fsl,pins = <
-			MX93_PAD_GPIO_IO25__GPIO2_IO25			0x31e
-			MX93_PAD_GPIO_IO27__GPIO2_IO27			0x31e
-		>;
-	};
-
-	pinctrl_lpi2c1: lpi2c1grp {
-		fsl,pins = <
-			MX93_PAD_I2C1_SCL__LPI2C1_SCL			0x40000b9e
-			MX93_PAD_I2C1_SDA__LPI2C1_SDA			0x40000b9e
-		>;
-	};
-
-	pinctrl_lpi2c2: lpi2c2grp {
-		fsl,pins = <
-			MX93_PAD_I2C2_SCL__LPI2C2_SCL			0x40000b9e
-			MX93_PAD_I2C2_SDA__LPI2C2_SDA			0x40000b9e
-		>;
-	};
-
-	pinctrl_lpi2c3: lpi2c3grp {
-		fsl,pins = <
-			MX93_PAD_GPIO_IO28__LPI2C3_SDA			0x40000b9e
-			MX93_PAD_GPIO_IO29__LPI2C3_SCL			0x40000b9e
-		>;
-	};
-
 	pinctrl_mqs1: mqs1grp {
 		fsl,pins = <
 			MX93_PAD_PDM_CLK__MQS1_LEFT		0x31e
@@ -610,149 +76,7 @@ MX93_PAD_PDM_BIT_STREAM0__MQS1_RIGHT	0x31e
 		>;
 	};
 
-	pinctrl_pcal6524: pcal6524grp {
-		fsl,pins = <
-			MX93_PAD_CCM_CLKO2__GPIO3_IO27			0x31e
-		>;
-	};
-
-	pinctrl_reg_usdhc2_vmmc: regusdhc2vmmcgrp {
-		fsl,pins = <
-			MX93_PAD_SD2_RESET_B__GPIO3_IO07		0x31e
-		>;
-	};
-
-	pinctrl_uart1: uart1grp {
-		fsl,pins = <
-			MX93_PAD_UART1_RXD__LPUART1_RX			0x31e
-			MX93_PAD_UART1_TXD__LPUART1_TX			0x31e
-		>;
-	};
-
-	pinctrl_uart5: uart5grp {
-		fsl,pins = <
-			MX93_PAD_DAP_TDO_TRACESWO__LPUART5_TX		0x31e
-			MX93_PAD_DAP_TDI__LPUART5_RX			0x31e
-			MX93_PAD_DAP_TMS_SWDIO__LPUART5_RTS_B		0x31e
-			MX93_PAD_DAP_TCLK_SWCLK__LPUART5_CTS_B		0x31e
-		>;
-	};
-
-	/* need to config the SION for data and cmd pad, refer to ERR052021 */
-	pinctrl_usdhc1: usdhc1grp {
-		fsl,pins = <
-			MX93_PAD_SD1_CLK__USDHC1_CLK		0x1582
-			MX93_PAD_SD1_CMD__USDHC1_CMD		0x40001382
-			MX93_PAD_SD1_DATA0__USDHC1_DATA0	0x40001382
-			MX93_PAD_SD1_DATA1__USDHC1_DATA1	0x40001382
-			MX93_PAD_SD1_DATA2__USDHC1_DATA2	0x40001382
-			MX93_PAD_SD1_DATA3__USDHC1_DATA3	0x40001382
-			MX93_PAD_SD1_DATA4__USDHC1_DATA4	0x40001382
-			MX93_PAD_SD1_DATA5__USDHC1_DATA5	0x40001382
-			MX93_PAD_SD1_DATA6__USDHC1_DATA6	0x40001382
-			MX93_PAD_SD1_DATA7__USDHC1_DATA7	0x40001382
-			MX93_PAD_SD1_STROBE__USDHC1_STROBE	0x1582
-		>;
-	};
-
-	/* need to config the SION for data and cmd pad, refer to ERR052021 */
-	pinctrl_usdhc1_100mhz: usdhc1-100mhzgrp {
-		fsl,pins = <
-			MX93_PAD_SD1_CLK__USDHC1_CLK		0x158e
-			MX93_PAD_SD1_CMD__USDHC1_CMD		0x4000138e
-			MX93_PAD_SD1_DATA0__USDHC1_DATA0	0x4000138e
-			MX93_PAD_SD1_DATA1__USDHC1_DATA1	0x4000138e
-			MX93_PAD_SD1_DATA2__USDHC1_DATA2	0x4000138e
-			MX93_PAD_SD1_DATA3__USDHC1_DATA3	0x4000138e
-			MX93_PAD_SD1_DATA4__USDHC1_DATA4	0x4000138e
-			MX93_PAD_SD1_DATA5__USDHC1_DATA5	0x4000138e
-			MX93_PAD_SD1_DATA6__USDHC1_DATA6	0x4000138e
-			MX93_PAD_SD1_DATA7__USDHC1_DATA7	0x4000138e
-			MX93_PAD_SD1_STROBE__USDHC1_STROBE	0x158e
-		>;
-	};
-
-	/* need to config the SION for data and cmd pad, refer to ERR052021 */
-	pinctrl_usdhc1_200mhz: usdhc1-200mhzgrp {
-		fsl,pins = <
-			MX93_PAD_SD1_CLK__USDHC1_CLK		0x15fe
-			MX93_PAD_SD1_CMD__USDHC1_CMD		0x400013fe
-			MX93_PAD_SD1_DATA0__USDHC1_DATA0	0x400013fe
-			MX93_PAD_SD1_DATA1__USDHC1_DATA1	0x400013fe
-			MX93_PAD_SD1_DATA2__USDHC1_DATA2	0x400013fe
-			MX93_PAD_SD1_DATA3__USDHC1_DATA3	0x400013fe
-			MX93_PAD_SD1_DATA4__USDHC1_DATA4	0x400013fe
-			MX93_PAD_SD1_DATA5__USDHC1_DATA5	0x400013fe
-			MX93_PAD_SD1_DATA6__USDHC1_DATA6	0x400013fe
-			MX93_PAD_SD1_DATA7__USDHC1_DATA7	0x400013fe
-			MX93_PAD_SD1_STROBE__USDHC1_STROBE	0x15fe
-		>;
-	};
-
-	pinctrl_usdhc2_gpio: usdhc2gpiogrp {
-		fsl,pins = <
-			MX93_PAD_SD2_CD_B__GPIO3_IO00		0x31e
-		>;
-	};
-
-	pinctrl_usdhc2_gpio_sleep: usdhc2gpiosleepgrp {
-		fsl,pins = <
-			MX93_PAD_SD2_CD_B__GPIO3_IO00		0x51e
-		>;
-	};
-
-	/* need to config the SION for data and cmd pad, refer to ERR052021 */
-	pinctrl_usdhc2: usdhc2grp {
-		fsl,pins = <
-			MX93_PAD_SD2_CLK__USDHC2_CLK		0x1582
-			MX93_PAD_SD2_CMD__USDHC2_CMD		0x40001382
-			MX93_PAD_SD2_DATA0__USDHC2_DATA0	0x40001382
-			MX93_PAD_SD2_DATA1__USDHC2_DATA1	0x40001382
-			MX93_PAD_SD2_DATA2__USDHC2_DATA2	0x40001382
-			MX93_PAD_SD2_DATA3__USDHC2_DATA3	0x40001382
-			MX93_PAD_SD2_VSELECT__USDHC2_VSELECT	0x51e
-		>;
-	};
-
 	/* need to config the SION for data and cmd pad, refer to ERR052021 */
-	pinctrl_usdhc2_100mhz: usdhc2-100mhzgrp {
-		fsl,pins = <
-			MX93_PAD_SD2_CLK__USDHC2_CLK		0x158e
-			MX93_PAD_SD2_CMD__USDHC2_CMD		0x4000138e
-			MX93_PAD_SD2_DATA0__USDHC2_DATA0	0x4000138e
-			MX93_PAD_SD2_DATA1__USDHC2_DATA1	0x4000138e
-			MX93_PAD_SD2_DATA2__USDHC2_DATA2	0x4000138e
-			MX93_PAD_SD2_DATA3__USDHC2_DATA3	0x4000138e
-			MX93_PAD_SD2_VSELECT__USDHC2_VSELECT	0x51e
-		>;
-	};
-
-	/* need to config the SION for data and cmd pad, refer to ERR052021 */
-	pinctrl_usdhc2_200mhz: usdhc2-200mhzgrp {
-		fsl,pins = <
-			MX93_PAD_SD2_CLK__USDHC2_CLK		0x15fe
-			MX93_PAD_SD2_CMD__USDHC2_CMD		0x400013fe
-			MX93_PAD_SD2_DATA0__USDHC2_DATA0	0x400013fe
-			MX93_PAD_SD2_DATA1__USDHC2_DATA1	0x400013fe
-			MX93_PAD_SD2_DATA2__USDHC2_DATA2	0x400013fe
-			MX93_PAD_SD2_DATA3__USDHC2_DATA3	0x400013fe
-			MX93_PAD_SD2_VSELECT__USDHC2_VSELECT	0x51e
-		>;
-	};
-
-	pinctrl_usdhc2_sleep: usdhc2-sleepgrp {
-		fsl,pins = <
-			MX93_PAD_SD2_CLK__GPIO3_IO01		0x51e
-			MX93_PAD_SD2_CMD__GPIO3_IO02		0x51e
-			MX93_PAD_SD2_DATA0__GPIO3_IO03		0x51e
-			MX93_PAD_SD2_DATA1__GPIO3_IO04		0x51e
-			MX93_PAD_SD2_DATA2__GPIO3_IO05		0x51e
-			MX93_PAD_SD2_DATA3__GPIO3_IO06		0x51e
-			MX93_PAD_SD2_VSELECT__GPIO3_IO19	0x51e
-		>;
-	};
-
-		/* need to config the SION for data and cmd pad, refer to ERR052021 */
 	pinctrl_usdhc3: usdhc3grp {
 		fsl,pins = <
 			MX93_PAD_SD3_CLK__USDHC3_CLK		0x1582
@@ -798,10 +122,4 @@ MX93_PAD_SD3_DATA2__GPIO3_IO24		0x31e
 			MX93_PAD_SD3_DATA3__GPIO3_IO25		0x31e
 		>;
 	};
-
-	pinctrl_wdog: wdoggrp {
-		fsl,pins = <
-			MX93_PAD_WDOG_ANY__WDOG1_WDOG_ANY	0x31e
-		>;
-	};
 };

-- 
2.34.1



^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [PATCH 2/3] dt-bindings: arm: fsl: Add i.MX93 Wireless FRDM board
  2026-07-17  5:11 [PATCH 0/3] Add i.MX93 Wireless FRDM board support Joseph Guo
  2026-07-17  5:11 ` [PATCH 1/3] arm64: dts: imx93-11x11-frdm: factor out common parts into dtsi Joseph Guo
@ 2026-07-17  5:11 ` Joseph Guo
  2026-07-17  9:24   ` Krzysztof Kozlowski
  2026-07-17  5:11 ` [PATCH 3/3] arm64: dts: imx93: Add i.MX93 Wireless FRDM board support Joseph Guo
  2 siblings, 1 reply; 6+ messages in thread
From: Joseph Guo @ 2026-07-17  5:11 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Frank Li,
	Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam, Shawn Guo
  Cc: devicetree, imx, linux-arm-kernel, linux-kernel, Joseph Guo

Add DT compatible string for NXP i.MX93 Wireless FRDM board.

i.MX93 Wireless SiP is created by integrating i.MX93 and IW610 WLCSP
(Wi-Fi + BLE + 802.15.4). And i.MX93 Wireless FRDM board with the i.MX93
Wireless SiP basically reuse the i.MX93 11x11 FRDM board, with some minor
functional and pin connection differences.

Signed-off-by: Joseph Guo <qijian.guo@nxp.com>
---
 Documentation/devicetree/bindings/arm/fsl.yaml | 1 +
 1 file changed, 1 insertion(+)

diff --git a/Documentation/devicetree/bindings/arm/fsl.yaml b/Documentation/devicetree/bindings/arm/fsl.yaml
index 7b57a6ee1b50dc22ece292d6d9b53b5aa834ee96..9ab7af8c02d68c7f95cccfb5071662eafc8f93a0 100644
--- a/Documentation/devicetree/bindings/arm/fsl.yaml
+++ b/Documentation/devicetree/bindings/arm/fsl.yaml
@@ -1513,6 +1513,7 @@ properties:
               - fsl,imx93-11x11-frdm      # i.MX93 11x11 FRDM Board
               - fsl,imx93-14x14-evk       # i.MX93 14x14 EVK Board
               - fsl,imx93-wireless-evk    # i.MX93 and IW610G WLCSP (Wi-Fi + BLE + 802.15.4) SiP EVK Board
+              - fsl,imx93-wireless-frdm   # i.MX93 and IW610G WLCSP (Wi-Fi + BLE + 802.15.4) SiP FRDM Board
           - const: fsl,imx93
 
       - description: i.MX94 based Boards

-- 
2.34.1



^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [PATCH 3/3] arm64: dts: imx93: Add i.MX93 Wireless FRDM board support
  2026-07-17  5:11 [PATCH 0/3] Add i.MX93 Wireless FRDM board support Joseph Guo
  2026-07-17  5:11 ` [PATCH 1/3] arm64: dts: imx93-11x11-frdm: factor out common parts into dtsi Joseph Guo
  2026-07-17  5:11 ` [PATCH 2/3] dt-bindings: arm: fsl: Add i.MX93 Wireless FRDM board Joseph Guo
@ 2026-07-17  5:11 ` Joseph Guo
  2 siblings, 0 replies; 6+ messages in thread
From: Joseph Guo @ 2026-07-17  5:11 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Frank Li,
	Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam, Shawn Guo
  Cc: devicetree, imx, linux-arm-kernel, linux-kernel, Joseph Guo

i.MX93 Wireless FRDM board(FRDM-IMX93W) is a low-cost and compact board featuring
the i.MX93W applications processor:https://www.nxp.com/products/IMX93W

FRDM-IMX93W board basically reuse the FRDM-IMX93 board, with some minor
functional and pin connection differences. Reuse the
imx93-11x11-frdm-common.dtsi and add the board-specific changes.

Here are the detailed differences between FRDM-IMX93 and FRDM-IMX93W board.

Function differences:
Function	FRDM-IMX93W			FRDM-IMX93
WIFI/BT		IW610 in i.MX93W		IW612 M.2 module
MQS		N				Y
M.2		N				Y
RPi 40-pin HDR	Limited support(pin conflict) 	Y

Pin connection differences:
Function  Signal name	i.MX93W EVK		i.MX93 EVK
WIFI/BT	  SPI_FRM	SAI1_TXFS (spi1.PCS0)	GPIO_IO08 (spi3.PCS0)
	  SPI_TXD	SAI1_TXC (spi1.SIN)	GPIO_IO09 (spi3.SIN)
	  SPI_RXD	SAI1_RXD0 (spi1.SOUT)	GPIO_IO10 (spi3.SOUT)
	  SPI_CLK	SAI1_TXD0 (spi1.SCK)	GPIO_IO11 (spi3.SCK)
	  SPI_INT	CCM_CLKO1		on-board IO expander
	  NB_WAKE_IN	PDM_CLK			on-module IO expander
	  WL_WAKE_IN	PDM_BIT_STREAM0		on-module IO expander
	  IND_RST_WL	PDM_BIT_STREAM1		on-module IO expander
	  IND_RST_NB	GPIO_IO28		on-module IO expander
	  PDn		GPIO_IO29		on-module IO expander
	  NB_WAKE_OUT	GPIO_IO14		on-board IO expander
	  WL_WAKE_OUT	GPIO_IO15		CCM_CLKO1
I2C3	  I2C3_SDA	GPIO_IO00		GPIO_IO28
	  I2C3_SCL	GPIO_IO01		GPIO_IO29

Signed-off-by: Joseph Guo <qijian.guo@nxp.com>
---
 arch/arm64/boot/dts/freescale/Makefile        |  1 +
 arch/arm64/boot/dts/freescale/imx93w-frdm.dts | 23 +++++++++++++++++++++++
 2 files changed, 24 insertions(+)

diff --git a/arch/arm64/boot/dts/freescale/Makefile b/arch/arm64/boot/dts/freescale/Makefile
index be3c858f1eeb1a807cb8ac36269c581143f755df..d48ba7dee1861e0b39ab025c4b8108ffa68c9bf3 100644
--- a/arch/arm64/boot/dts/freescale/Makefile
+++ b/arch/arm64/boot/dts/freescale/Makefile
@@ -655,6 +655,7 @@ dtb-$(CONFIG_ARCH_MXC) += imx93-tqma9352-mba93xxla-mini-lvds-tm070jvhg33.dtb
 dtb-$(CONFIG_ARCH_MXC) += imx93-var-dart-sonata.dtb
 dtb-$(CONFIG_ARCH_MXC) += imx93-var-som-symphony.dtb
 dtb-$(CONFIG_ARCH_MXC) += imx93w-evk.dtb
+dtb-$(CONFIG_ARCH_MXC) += imx93w-frdm.dtb
 dtb-$(CONFIG_ARCH_MXC) += imx943-evk.dtb
 
 imx943-evk-pcie0-ep-dtbs += imx943-evk.dtb imx-pcie0-ep.dtbo
diff --git a/arch/arm64/boot/dts/freescale/imx93w-frdm.dts b/arch/arm64/boot/dts/freescale/imx93w-frdm.dts
new file mode 100644
index 0000000000000000000000000000000000000000..766e942fe6638330b602577c541d93f3526afe51
--- /dev/null
+++ b/arch/arm64/boot/dts/freescale/imx93w-frdm.dts
@@ -0,0 +1,23 @@
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
+/*
+ * Copyright 2026 NXP
+ */
+
+/dts-v1/;
+
+#include "imx93w.dtsi"
+#include "imx93-11x11-frdm-common.dtsi"
+
+/ {
+	model = "NXP i.MX93W FRDM board";
+	compatible = "fsl,imx93-wireless-frdm", "fsl,imx93";
+};
+
+&iomuxc {
+	pinctrl_lpi2c3: lpi2c3grp {
+		fsl,pins = <
+			MX93_PAD_GPIO_IO00__LPI2C3_SDA			0x40000b9e
+			MX93_PAD_GPIO_IO01__LPI2C3_SCL			0x40000b9e
+		>;
+	};
+};

-- 
2.34.1



^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: [PATCH 2/3] dt-bindings: arm: fsl: Add i.MX93 Wireless FRDM board
  2026-07-17  5:11 ` [PATCH 2/3] dt-bindings: arm: fsl: Add i.MX93 Wireless FRDM board Joseph Guo
@ 2026-07-17  9:24   ` Krzysztof Kozlowski
  0 siblings, 0 replies; 6+ messages in thread
From: Krzysztof Kozlowski @ 2026-07-17  9:24 UTC (permalink / raw)
  To: Joseph Guo
  Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Frank Li,
	Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam, Shawn Guo,
	devicetree, imx, linux-arm-kernel, linux-kernel

On Fri, Jul 17, 2026 at 02:11:53PM +0900, Joseph Guo wrote:
> Add DT compatible string for NXP i.MX93 Wireless FRDM board.
> 
> i.MX93 Wireless SiP is created by integrating i.MX93 and IW610 WLCSP
> (Wi-Fi + BLE + 802.15.4). And i.MX93 Wireless FRDM board with the i.MX93
> Wireless SiP basically reuse the i.MX93 11x11 FRDM board, with some minor
> functional and pin connection differences.
> 
> Signed-off-by: Joseph Guo <qijian.guo@nxp.com>
> ---
>  Documentation/devicetree/bindings/arm/fsl.yaml | 1 +
>  1 file changed, 1 insertion(+)

Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>

Best regards,
Krzysztof



^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH 1/3] arm64: dts: imx93-11x11-frdm: factor out common parts into dtsi
  2026-07-17  5:11 ` [PATCH 1/3] arm64: dts: imx93-11x11-frdm: factor out common parts into dtsi Joseph Guo
@ 2026-07-17 16:29   ` Frank Li
  0 siblings, 0 replies; 6+ messages in thread
From: Frank Li @ 2026-07-17 16:29 UTC (permalink / raw)
  To: Joseph Guo
  Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Frank Li,
	Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam, Shawn Guo,
	devicetree, imx, linux-arm-kernel, linux-kernel

On Fri, Jul 17, 2026 at 02:11:52PM +0900, Joseph Guo wrote:
> [You don't often get email from qijian.guo@nxp.com. Learn why this is important at https://aka.ms/LearnAboutSenderIdentification ]
>
> The i.MX93 Wireless FRDM board reuses most of the i.MX93 FRDM board.
> To avoid duplication and DTS-to-DTS includes, extract common hardware
> definitions from imx93-11x11-frdm.dts into imx93-11x11-frdm-common.dtsi
> to allow the common description shared by both boards.
>
> The FRDM-IMX93 board-specific .dts now includes the common dtsi and only
> contains board-specific overrides.
>
> Signed-off-by: Joseph Guo <qijian.guo@nxp.com>
> ---
>  .../dts/freescale/imx93-11x11-frdm-common.dtsi     | 692 +++++++++++++++++++++
>  arch/arm64/boot/dts/freescale/imx93-11x11-frdm.dts | 686 +-------------------
>  2 files changed, 694 insertions(+), 684 deletions(-)

Please use -M -C to generate patch. git can auto detect copy.

Frank

>
> diff --git a/arch/arm64/boot/dts/freescale/imx93-11x11-frdm-common.dtsi b/arch/arm64/boot/dts/freescale/imx93-11x11-frdm-common.dtsi
> new file mode 100644
> index 0000000000000000000000000000000000000000..69e23570f71f40a3f3517d31e16a9ca1d3dfb1f2
> --- /dev/null
> +++ b/arch/arm64/boot/dts/freescale/imx93-11x11-frdm-common.dtsi
> @@ -0,0 +1,692 @@
> +// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
> +
> +#include <dt-bindings/usb/pd.h>
> +
> +/ {
> +
> +       aliases {
> +               can0 = &flexcan2;
> +               ethernet0 = &fec;
> +               ethernet1 = &eqos;
> +               i2c0 = &lpi2c1;
> +               i2c1 = &lpi2c2;
> +               i2c2 = &lpi2c3;
> +               mmc0 = &usdhc1; /* EMMC */
> +               mmc1 = &usdhc2; /* uSD */
> +               rtc0 = &pcf2131;
> +               serial0 = &lpuart1;
> +               serial4 = &lpuart5;
> +       };
> +
> +       chosen {
> +               stdout-path = &lpuart1;
> +       };
> +
> +       flexcan2_phy: can-phy {
> +               compatible = "nxp,tja1051";
> +               #phy-cells = <0>;
> +               max-bitrate = <5000000>;
> +               silent-gpios = <&pcal6524 23 GPIO_ACTIVE_HIGH>;
> +       };
> +
> +       gpio-keys {
> +               compatible = "gpio-keys";
> +
> +               button-k2 {
> +                       label = "Button K2";
> +                       linux,code = <BTN_1>;
> +                       gpios = <&pcal6524 5 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>;
> +                       interrupt-parent = <&pcal6524>;
> +                       interrupts = <5 IRQ_TYPE_EDGE_FALLING>;
> +               };
> +
> +               button-k3 {
> +                       label = "Button K3";
> +                       linux,code = <BTN_2>;
> +                       gpios = <&pcal6524 6 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>;
> +                       interrupt-parent = <&pcal6524>;
> +                       interrupts = <6 IRQ_TYPE_EDGE_FALLING>;
> +               };
> +       };
> +
> +       reg_usdhc2_vmmc: regulator-usdhc2 {
> +               compatible = "regulator-fixed";
> +               off-on-delay-us = <12000>;
> +               pinctrl-0 = <&pinctrl_reg_usdhc2_vmmc>;
> +               pinctrl-names = "default";
> +               regulator-min-microvolt = <3300000>;
> +               regulator-max-microvolt = <3300000>;
> +               regulator-name = "VSD_3V3";
> +               vin-supply = <&buck4>;
> +               gpio = <&gpio3 7 GPIO_ACTIVE_HIGH>;
> +               enable-active-high;
> +       };
> +
> +       reserved-memory {
> +               ranges;
> +               #address-cells = <2>;
> +               #size-cells = <2>;
> +
> +               linux,cma {
> +                       compatible = "shared-dma-pool";
> +                       alloc-ranges = <0 0x80000000 0 0x30000000>;
> +                       reusable;
> +                       size = <0 0x10000000>;
> +                       linux,cma-default;
> +               };
> +
> +               rsc_table: rsc-table@2021e000 {
> +                       reg = <0 0x2021e000 0 0x1000>;
> +                       no-map;
> +               };
> +
> +               vdev0vring0: vdev0vring0@a4000000 {
> +                       reg = <0 0xa4000000 0 0x8000>;
> +                       no-map;
> +               };
> +
> +               vdev0vring1: vdev0vring1@a4008000 {
> +                       reg = <0 0xa4008000 0 0x8000>;
> +                       no-map;
> +               };
> +
> +               vdev1vring0: vdev1vring0@a4010000 {
> +                       reg = <0 0xa4010000 0 0x8000>;
> +                       no-map;
> +               };
> +
> +               vdev1vring1: vdev1vring1@a4018000 {
> +                       reg = <0 0xa4018000 0 0x8000>;
> +                       no-map;
> +               };
> +
> +               vdevbuffer: vdevbuffer@a4020000 {
> +                       compatible = "shared-dma-pool";
> +                       reg = <0 0xa4020000 0 0x100000>;
> +                       no-map;
> +               };
> +       };
> +};
> +
> +&adc1 {
> +       vref-supply = <&buck5>;
> +       status = "okay";
> +};
> +
> +&mu1 {
> +       status = "okay";
> +};
> +
> +&cm33 {
> +       mboxes = <&mu1 0 1>,
> +                <&mu1 1 1>,
> +                <&mu1 3 1>;
> +       mbox-names = "tx", "rx", "rxdb";
> +       memory-region = <&vdevbuffer>, <&vdev0vring0>, <&vdev0vring1>,
> +                       <&vdev1vring0>, <&vdev1vring1>, <&rsc_table>;
> +       status = "okay";
> +};
> +
> +&eqos {
> +       pinctrl-names = "default", "sleep";
> +       pinctrl-0 = <&pinctrl_eqos>;
> +       pinctrl-1 = <&pinctrl_eqos_sleep>;
> +       phy-handle = <&ethphy1>;
> +       phy-mode = "rgmii-id";
> +       status = "okay";
> +
> +       mdio {
> +               compatible = "snps,dwmac-mdio";
> +               #address-cells = <1>;
> +               #size-cells = <0>;
> +               clock-frequency = <5000000>;
> +
> +               ethphy1: ethernet-phy@1 {
> +                       reg = <1>;
> +                       reset-assert-us = <10000>;
> +                       reset-deassert-us = <80000>;
> +                       reset-gpios = <&pcal6524 15 GPIO_ACTIVE_LOW>;
> +                       realtek,clkout-disable;
> +               };
> +       };
> +};
> +
> +&fec {
> +       pinctrl-names = "default", "sleep";
> +       pinctrl-0 = <&pinctrl_fec>;
> +       pinctrl-1 = <&pinctrl_fec_sleep>;
> +       phy-mode = "rgmii-id";
> +       phy-handle = <&ethphy2>;
> +       fsl,magic-packet;
> +       status = "okay";
> +
> +       mdio {
> +               #address-cells = <1>;
> +               #size-cells = <0>;
> +               clock-frequency = <5000000>;
> +
> +               ethphy2: ethernet-phy@2 {
> +                       reg = <2>;
> +                       reset-assert-us = <10000>;
> +                       reset-deassert-us = <80000>;
> +                       reset-gpios = <&pcal6524 16 GPIO_ACTIVE_LOW>;
> +                       realtek,clkout-disable;
> +               };
> +       };
> +};
> +
> +&flexcan2 {
> +       phys = <&flexcan2_phy>;
> +       pinctrl-0 = <&pinctrl_flexcan2>;
> +       pinctrl-1 = <&pinctrl_flexcan2_sleep>;
> +       pinctrl-names = "default", "sleep";
> +       status = "okay";
> +};
> +
> +&lpi2c1 {
> +       clock-frequency = <400000>;
> +       pinctrl-0 = <&pinctrl_lpi2c1>;
> +       pinctrl-names = "default";
> +       status = "okay";
> +
> +       pcal6408: gpio@20 {
> +               compatible = "nxp,pcal6408";
> +               reg = <0x20>;
> +               #gpio-cells = <2>;
> +               gpio-controller;
> +               reset-gpios = <&pcal6524 20 GPIO_ACTIVE_LOW>;
> +       };
> +};
> +
> +&lpi2c2 {
> +       clock-frequency = <400000>;
> +       pinctrl-0 = <&pinctrl_lpi2c2>;
> +       pinctrl-names = "default";
> +       status = "okay";
> +
> +       pcal6524: gpio@22 {
> +               compatible = "nxp,pcal6524";
> +               reg = <0x22>;
> +               #interrupt-cells = <2>;
> +               interrupt-controller;
> +               interrupt-parent = <&gpio3>;
> +               interrupts = <27 IRQ_TYPE_LEVEL_LOW>;
> +               #gpio-cells = <2>;
> +               gpio-controller;
> +               pinctrl-0 = <&pinctrl_pcal6524>;
> +               pinctrl-names = "default";
> +               /* does not boot with supplier set, because it is the bucks interrupt parent */
> +               /* vcc-supply = <&buck4>; */
> +       };
> +
> +       pmic@25 {
> +               compatible = "nxp,pca9451a";
> +               reg = <0x25>;
> +               interrupt-parent = <&pcal6524>;
> +               interrupts = <11 IRQ_TYPE_EDGE_FALLING>;
> +
> +               regulators {
> +
> +                       buck1: BUCK1 {
> +                               regulator-name = "VDD_SOC_0V8";
> +                               regulator-min-microvolt = <610000>;
> +                               regulator-max-microvolt = <950000>;
> +                               regulator-always-on;
> +                               regulator-boot-on;
> +                               regulator-ramp-delay = <3125>;
> +                       };
> +
> +                       buck2: BUCK2 {
> +                               regulator-name = "LPD4_x_VDDQ_0V6";
> +                               regulator-min-microvolt = <600000>;
> +                               regulator-max-microvolt = <670000>;
> +                               regulator-always-on;
> +                               regulator-boot-on;
> +                               regulator-ramp-delay = <3125>;
> +                       };
> +
> +                       buck4: BUCK4 {
> +                               regulator-name = "VDD_3V3";
> +                               regulator-min-microvolt = <3300000>;
> +                               regulator-max-microvolt = <3300000>;
> +                               regulator-always-on;
> +                               regulator-boot-on;
> +                       };
> +
> +                       buck5: BUCK5 {
> +                               regulator-name = "VDD_1V8";
> +                               regulator-min-microvolt = <1800000>;
> +                               regulator-max-microvolt = <1800000>;
> +                               regulator-always-on;
> +                               regulator-boot-on;
> +                       };
> +
> +                       buck6: BUCK6 {
> +                               regulator-name = "LPD4_x_VDD2_1V1";
> +                               regulator-min-microvolt = <1060000>;
> +                               regulator-max-microvolt = <1140000>;
> +                               regulator-always-on;
> +                               regulator-boot-on;
> +                       };
> +
> +                       ldo1: LDO1 {
> +                               regulator-name = "NVCC_BBSM_1V8";
> +                               regulator-min-microvolt = <1620000>;
> +                               regulator-max-microvolt = <1980000>;
> +                               regulator-always-on;
> +                               regulator-boot-on;
> +                       };
> +
> +                       ldo4: LDO4 {
> +                               regulator-name = "VDD_ANA_0V8";
> +                               regulator-min-microvolt = <800000>;
> +                               regulator-max-microvolt = <840000>;
> +                               regulator-always-on;
> +                               regulator-boot-on;
> +                       };
> +
> +                       ldo5: LDO5 {
> +                               regulator-name = "NVCC_SD";
> +                               regulator-min-microvolt = <1800000>;
> +                               regulator-max-microvolt = <3300000>;
> +                               regulator-always-on;
> +                               regulator-boot-on;
> +                       };
> +               };
> +       };
> +
> +       eeprom: eeprom@50 {
> +               compatible = "atmel,24c256";
> +               reg = <0x50>;
> +               pagesize = <64>;
> +               vcc-supply = <&buck4>;
> +       };
> +};
> +
> +&lpi2c3 {
> +       clock-frequency = <400000>;
> +       pinctrl-0 = <&pinctrl_lpi2c3>;
> +       pinctrl-names = "default";
> +       status = "okay";
> +
> +       ptn5110: tcpc@50 {
> +               compatible = "nxp,ptn5110", "tcpci";
> +               reg = <0x50>;
> +               interrupt-parent = <&gpio3>;
> +               interrupts = <27 IRQ_TYPE_LEVEL_LOW>;
> +
> +               typec1_con: connector {
> +                       compatible = "usb-c-connector";
> +                       data-role = "dual";
> +                       label = "USB-C";
> +                       op-sink-microwatt = <15000000>;
> +                       power-role = "dual";
> +                       self-powered;
> +                       sink-pdos = <PDO_FIXED(5000, 3000, PDO_FIXED_USB_COMM)
> +                                       PDO_VAR(5000, 20000, 3000)>;
> +                       source-pdos = <PDO_FIXED(5000, 3000, PDO_FIXED_USB_COMM)>;
> +                       try-power-role = "sink";
> +
> +                       ports {
> +                               #address-cells = <1>;
> +                               #size-cells = <0>;
> +
> +                               port@0 {
> +                                       reg = <0>;
> +
> +                                       typec1_dr_sw: endpoint {
> +                                               remote-endpoint = <&usb1_drd_sw>;
> +                                       };
> +                               };
> +                       };
> +               };
> +       };
> +
> +       pcf2131: rtc@53 {
> +               compatible = "nxp,pcf2131";
> +               reg = <0x53>;
> +               interrupt-parent = <&pcal6524>;
> +               interrupts = <1 IRQ_TYPE_EDGE_FALLING>;
> +       };
> +};
> +
> +&lpuart1 { /* console */
> +       pinctrl-0 = <&pinctrl_uart1>;
> +       pinctrl-names = "default";
> +       status = "okay";
> +};
> +
> +&lpuart5 {
> +       pinctrl-0 = <&pinctrl_uart5>;
> +       pinctrl-names = "default";
> +       status = "okay";
> +
> +       uart-has-rtscts;
> +
> +       bluetooth {
> +               compatible = "nxp,88w8987-bt";
> +               device-wakeup-gpios = <&pcal6408 3 GPIO_ACTIVE_HIGH>;
> +               reset-gpios = <&pcal6524 19 GPIO_ACTIVE_LOW>;
> +               vcc-supply = <&reg_usdhc3_vmmc>;
> +       };
> +};
> +
> +&usbotg1 {
> +       adp-disable;
> +       disable-over-current;
> +       dr_mode = "otg";
> +       hnp-disable;
> +       srp-disable;
> +       usb-role-switch;
> +       samsung,picophy-dc-vol-level-adjust = <7>;
> +       samsung,picophy-pre-emp-curr-control = <3>;
> +       status = "okay";
> +
> +       port {
> +               usb1_drd_sw: endpoint {
> +                       remote-endpoint = <&typec1_dr_sw>;
> +               };
> +       };
> +};
> +
> +&usbotg2 {
> +       disable-over-current;
> +       dr_mode = "host";
> +       samsung,picophy-dc-vol-level-adjust = <7>;
> +       samsung,picophy-pre-emp-curr-control = <3>;
> +       status = "okay";
> +};
> +
> +&usdhc1 {
> +       bus-width = <8>;
> +       non-removable;
> +       pinctrl-0 = <&pinctrl_usdhc1>;
> +       pinctrl-1 = <&pinctrl_usdhc1_100mhz>;
> +       pinctrl-2 = <&pinctrl_usdhc1_200mhz>;
> +       pinctrl-names = "default", "state_100mhz", "state_200mhz";
> +       vmmc-supply = <&buck4>;
> +       status = "okay";
> +};
> +
> +&usdhc2 {
> +       bus-width = <4>;
> +       cd-gpios = <&gpio3 00 GPIO_ACTIVE_LOW>;
> +       no-mmc;
> +       no-sdio;
> +       pinctrl-0 = <&pinctrl_usdhc2>, <&pinctrl_usdhc2_gpio>;
> +       pinctrl-1 = <&pinctrl_usdhc2_100mhz>, <&pinctrl_usdhc2_gpio>;
> +       pinctrl-2 = <&pinctrl_usdhc2_200mhz>, <&pinctrl_usdhc2_gpio>;
> +       pinctrl-3 = <&pinctrl_usdhc2_sleep>, <&pinctrl_usdhc2_gpio_sleep>;
> +       pinctrl-names = "default", "state_100mhz", "state_200mhz", "sleep";
> +       vmmc-supply = <&reg_usdhc2_vmmc>;
> +       status = "okay";
> +};
> +
> +&wdog3 {
> +       pinctrl-names = "default";
> +       pinctrl-0 = <&pinctrl_wdog>;
> +       fsl,ext-reset-output;
> +       status = "okay";
> +};
> +
> +&iomuxc {
> +
> +       pinctrl_eqos: eqosgrp {
> +               fsl,pins = <
> +                       MX93_PAD_ENET1_MDC__ENET_QOS_MDC                        0x57e
> +                       MX93_PAD_ENET1_MDIO__ENET_QOS_MDIO                      0x57e
> +                       MX93_PAD_ENET1_RD0__ENET_QOS_RGMII_RD0                  0x57e
> +                       MX93_PAD_ENET1_RD1__ENET_QOS_RGMII_RD1                  0x57e
> +                       MX93_PAD_ENET1_RD2__ENET_QOS_RGMII_RD2                  0x57e
> +                       MX93_PAD_ENET1_RD3__ENET_QOS_RGMII_RD3                  0x57e
> +                       MX93_PAD_ENET1_RXC__CCM_ENET_QOS_CLOCK_GENERATE_RX_CLK  0x58e
> +                       MX93_PAD_ENET1_RX_CTL__ENET_QOS_RGMII_RX_CTL            0x57e
> +                       MX93_PAD_ENET1_TD0__ENET_QOS_RGMII_TD0                  0x57e
> +                       MX93_PAD_ENET1_TD1__ENET_QOS_RGMII_TD1                  0x57e
> +                       MX93_PAD_ENET1_TD2__ENET_QOS_RGMII_TD2                  0x57e
> +                       MX93_PAD_ENET1_TD3__ENET_QOS_RGMII_TD3                  0x57e
> +                       MX93_PAD_ENET1_TXC__CCM_ENET_QOS_CLOCK_GENERATE_TX_CLK  0x58e
> +                       MX93_PAD_ENET1_TX_CTL__ENET_QOS_RGMII_TX_CTL            0x57e
> +               >;
> +       };
> +
> +       pinctrl_eqos_sleep: eqossleepgrp {
> +               fsl,pins = <
> +                       MX93_PAD_ENET1_MDC__GPIO4_IO00                  0x31e
> +                       MX93_PAD_ENET1_MDIO__GPIO4_IO01                 0x31e
> +                       MX93_PAD_ENET1_RD0__GPIO4_IO10                  0x31e
> +                       MX93_PAD_ENET1_RD1__GPIO4_IO11                  0x31e
> +                       MX93_PAD_ENET1_RD2__GPIO4_IO12                  0x31e
> +                       MX93_PAD_ENET1_RD3__GPIO4_IO13                  0x31e
> +                       MX93_PAD_ENET1_RXC__GPIO4_IO09                  0x31e
> +                       MX93_PAD_ENET1_RX_CTL__GPIO4_IO08               0x31e
> +                       MX93_PAD_ENET1_TD0__GPIO4_IO05                  0x31e
> +                       MX93_PAD_ENET1_TD1__GPIO4_IO04                  0x31e
> +                       MX93_PAD_ENET1_TD2__GPIO4_IO03                  0x31e
> +                       MX93_PAD_ENET1_TD3__GPIO4_IO02                  0x31e
> +                       MX93_PAD_ENET1_TXC__GPIO4_IO07                  0x31e
> +                       MX93_PAD_ENET1_TX_CTL__GPIO4_IO06               0x31e
> +               >;
> +       };
> +
> +       pinctrl_fec: fecgrp {
> +               fsl,pins = <
> +                       MX93_PAD_ENET2_MDC__ENET1_MDC                   0x57e
> +                       MX93_PAD_ENET2_MDIO__ENET1_MDIO                 0x57e
> +                       MX93_PAD_ENET2_RD0__ENET1_RGMII_RD0             0x57e
> +                       MX93_PAD_ENET2_RD1__ENET1_RGMII_RD1             0x57e
> +                       MX93_PAD_ENET2_RD2__ENET1_RGMII_RD2             0x57e
> +                       MX93_PAD_ENET2_RD3__ENET1_RGMII_RD3             0x57e
> +                       MX93_PAD_ENET2_RXC__ENET1_RGMII_RXC             0x58e
> +                       MX93_PAD_ENET2_RX_CTL__ENET1_RGMII_RX_CTL       0x57e
> +                       MX93_PAD_ENET2_TD0__ENET1_RGMII_TD0             0x57e
> +                       MX93_PAD_ENET2_TD1__ENET1_RGMII_TD1             0x57e
> +                       MX93_PAD_ENET2_TD2__ENET1_RGMII_TD2             0x57e
> +                       MX93_PAD_ENET2_TD3__ENET1_RGMII_TD3             0x57e
> +                       MX93_PAD_ENET2_TXC__ENET1_RGMII_TXC             0x58e
> +                       MX93_PAD_ENET2_TX_CTL__ENET1_RGMII_TX_CTL       0x57e
> +               >;
> +       };
> +
> +       pinctrl_fec_sleep: fecsleepgrp {
> +               fsl,pins = <
> +                       MX93_PAD_ENET2_MDC__GPIO4_IO14                  0x51e
> +                       MX93_PAD_ENET2_MDIO__GPIO4_IO15                 0x51e
> +                       MX93_PAD_ENET2_RD0__GPIO4_IO24                  0x51e
> +                       MX93_PAD_ENET2_RD1__GPIO4_IO25                  0x51e
> +                       MX93_PAD_ENET2_RD2__GPIO4_IO26                  0x51e
> +                       MX93_PAD_ENET2_RD3__GPIO4_IO27                  0x51e
> +                       MX93_PAD_ENET2_RXC__GPIO4_IO23                  0x51e
> +                       MX93_PAD_ENET2_RX_CTL__GPIO4_IO22               0x51e
> +                       MX93_PAD_ENET2_TD0__GPIO4_IO19                  0x51e
> +                       MX93_PAD_ENET2_TD1__GPIO4_IO18                  0x51e
> +                       MX93_PAD_ENET2_TD2__GPIO4_IO17                  0x51e
> +                       MX93_PAD_ENET2_TD3__GPIO4_IO16                  0x51e
> +                       MX93_PAD_ENET2_TXC__GPIO4_IO21                  0x51e
> +                       MX93_PAD_ENET2_TX_CTL__GPIO4_IO20               0x51e
> +               >;
> +       };
> +
> +       pinctrl_flexcan2: flexcan2grp {
> +               fsl,pins = <
> +                       MX93_PAD_GPIO_IO25__CAN2_TX                     0x139e
> +                       MX93_PAD_GPIO_IO27__CAN2_RX                     0x139e
> +               >;
> +       };
> +
> +       pinctrl_flexcan2_sleep: flexcan2sleepgrp {
> +               fsl,pins = <
> +                       MX93_PAD_GPIO_IO25__GPIO2_IO25                  0x31e
> +                       MX93_PAD_GPIO_IO27__GPIO2_IO27                  0x31e
> +               >;
> +       };
> +
> +       pinctrl_lpi2c1: lpi2c1grp {
> +               fsl,pins = <
> +                       MX93_PAD_I2C1_SCL__LPI2C1_SCL                   0x40000b9e
> +                       MX93_PAD_I2C1_SDA__LPI2C1_SDA                   0x40000b9e
> +               >;
> +       };
> +
> +       pinctrl_lpi2c2: lpi2c2grp {
> +               fsl,pins = <
> +                       MX93_PAD_I2C2_SCL__LPI2C2_SCL                   0x40000b9e
> +                       MX93_PAD_I2C2_SDA__LPI2C2_SDA                   0x40000b9e
> +               >;
> +       };
> +
> +       pinctrl_lpi2c3: lpi2c3grp {
> +               fsl,pins = <
> +                       MX93_PAD_GPIO_IO28__LPI2C3_SDA                  0x40000b9e
> +                       MX93_PAD_GPIO_IO29__LPI2C3_SCL                  0x40000b9e
> +               >;
> +       };
> +
> +       pinctrl_pcal6524: pcal6524grp {
> +               fsl,pins = <
> +                       MX93_PAD_CCM_CLKO2__GPIO3_IO27                  0x31e
> +               >;
> +       };
> +
> +       pinctrl_reg_usdhc2_vmmc: regusdhc2vmmcgrp {
> +               fsl,pins = <
> +                       MX93_PAD_SD2_RESET_B__GPIO3_IO07                0x31e
> +               >;
> +       };
> +
> +       pinctrl_uart1: uart1grp {
> +               fsl,pins = <
> +                       MX93_PAD_UART1_RXD__LPUART1_RX                  0x31e
> +                       MX93_PAD_UART1_TXD__LPUART1_TX                  0x31e
> +               >;
> +       };
> +
> +       pinctrl_uart5: uart5grp {
> +               fsl,pins = <
> +                       MX93_PAD_DAP_TDO_TRACESWO__LPUART5_TX           0x31e
> +                       MX93_PAD_DAP_TDI__LPUART5_RX                    0x31e
> +                       MX93_PAD_DAP_TMS_SWDIO__LPUART5_RTS_B           0x31e
> +                       MX93_PAD_DAP_TCLK_SWCLK__LPUART5_CTS_B          0x31e
> +               >;
> +       };
> +
> +       /* need to config the SION for data and cmd pad, refer to ERR052021 */
> +       pinctrl_usdhc1: usdhc1grp {
> +               fsl,pins = <
> +                       MX93_PAD_SD1_CLK__USDHC1_CLK            0x1582
> +                       MX93_PAD_SD1_CMD__USDHC1_CMD            0x40001382
> +                       MX93_PAD_SD1_DATA0__USDHC1_DATA0        0x40001382
> +                       MX93_PAD_SD1_DATA1__USDHC1_DATA1        0x40001382
> +                       MX93_PAD_SD1_DATA2__USDHC1_DATA2        0x40001382
> +                       MX93_PAD_SD1_DATA3__USDHC1_DATA3        0x40001382
> +                       MX93_PAD_SD1_DATA4__USDHC1_DATA4        0x40001382
> +                       MX93_PAD_SD1_DATA5__USDHC1_DATA5        0x40001382
> +                       MX93_PAD_SD1_DATA6__USDHC1_DATA6        0x40001382
> +                       MX93_PAD_SD1_DATA7__USDHC1_DATA7        0x40001382
> +                       MX93_PAD_SD1_STROBE__USDHC1_STROBE      0x1582
> +               >;
> +       };
> +
> +       /* need to config the SION for data and cmd pad, refer to ERR052021 */
> +       pinctrl_usdhc1_100mhz: usdhc1-100mhzgrp {
> +               fsl,pins = <
> +                       MX93_PAD_SD1_CLK__USDHC1_CLK            0x158e
> +                       MX93_PAD_SD1_CMD__USDHC1_CMD            0x4000138e
> +                       MX93_PAD_SD1_DATA0__USDHC1_DATA0        0x4000138e
> +                       MX93_PAD_SD1_DATA1__USDHC1_DATA1        0x4000138e
> +                       MX93_PAD_SD1_DATA2__USDHC1_DATA2        0x4000138e
> +                       MX93_PAD_SD1_DATA3__USDHC1_DATA3        0x4000138e
> +                       MX93_PAD_SD1_DATA4__USDHC1_DATA4        0x4000138e
> +                       MX93_PAD_SD1_DATA5__USDHC1_DATA5        0x4000138e
> +                       MX93_PAD_SD1_DATA6__USDHC1_DATA6        0x4000138e
> +                       MX93_PAD_SD1_DATA7__USDHC1_DATA7        0x4000138e
> +                       MX93_PAD_SD1_STROBE__USDHC1_STROBE      0x158e
> +               >;
> +       };
> +
> +       /* need to config the SION for data and cmd pad, refer to ERR052021 */
> +       pinctrl_usdhc1_200mhz: usdhc1-200mhzgrp {
> +               fsl,pins = <
> +                       MX93_PAD_SD1_CLK__USDHC1_CLK            0x15fe
> +                       MX93_PAD_SD1_CMD__USDHC1_CMD            0x400013fe
> +                       MX93_PAD_SD1_DATA0__USDHC1_DATA0        0x400013fe
> +                       MX93_PAD_SD1_DATA1__USDHC1_DATA1        0x400013fe
> +                       MX93_PAD_SD1_DATA2__USDHC1_DATA2        0x400013fe
> +                       MX93_PAD_SD1_DATA3__USDHC1_DATA3        0x400013fe
> +                       MX93_PAD_SD1_DATA4__USDHC1_DATA4        0x400013fe
> +                       MX93_PAD_SD1_DATA5__USDHC1_DATA5        0x400013fe
> +                       MX93_PAD_SD1_DATA6__USDHC1_DATA6        0x400013fe
> +                       MX93_PAD_SD1_DATA7__USDHC1_DATA7        0x400013fe
> +                       MX93_PAD_SD1_STROBE__USDHC1_STROBE      0x15fe
> +               >;
> +       };
> +
> +       pinctrl_usdhc2_gpio: usdhc2gpiogrp {
> +               fsl,pins = <
> +                       MX93_PAD_SD2_CD_B__GPIO3_IO00           0x31e
> +               >;
> +       };
> +
> +       pinctrl_usdhc2_gpio_sleep: usdhc2gpiosleepgrp {
> +               fsl,pins = <
> +                       MX93_PAD_SD2_CD_B__GPIO3_IO00           0x51e
> +               >;
> +       };
> +
> +       /* need to config the SION for data and cmd pad, refer to ERR052021 */
> +       pinctrl_usdhc2: usdhc2grp {
> +               fsl,pins = <
> +                       MX93_PAD_SD2_CLK__USDHC2_CLK            0x1582
> +                       MX93_PAD_SD2_CMD__USDHC2_CMD            0x40001382
> +                       MX93_PAD_SD2_DATA0__USDHC2_DATA0        0x40001382
> +                       MX93_PAD_SD2_DATA1__USDHC2_DATA1        0x40001382
> +                       MX93_PAD_SD2_DATA2__USDHC2_DATA2        0x40001382
> +                       MX93_PAD_SD2_DATA3__USDHC2_DATA3        0x40001382
> +                       MX93_PAD_SD2_VSELECT__USDHC2_VSELECT    0x51e
> +               >;
> +       };
> +
> +       /* need to config the SION for data and cmd pad, refer to ERR052021 */
> +       pinctrl_usdhc2_100mhz: usdhc2-100mhzgrp {
> +               fsl,pins = <
> +                       MX93_PAD_SD2_CLK__USDHC2_CLK            0x158e
> +                       MX93_PAD_SD2_CMD__USDHC2_CMD            0x4000138e
> +                       MX93_PAD_SD2_DATA0__USDHC2_DATA0        0x4000138e
> +                       MX93_PAD_SD2_DATA1__USDHC2_DATA1        0x4000138e
> +                       MX93_PAD_SD2_DATA2__USDHC2_DATA2        0x4000138e
> +                       MX93_PAD_SD2_DATA3__USDHC2_DATA3        0x4000138e
> +                       MX93_PAD_SD2_VSELECT__USDHC2_VSELECT    0x51e
> +               >;
> +       };
> +
> +       /* need to config the SION for data and cmd pad, refer to ERR052021 */
> +       pinctrl_usdhc2_200mhz: usdhc2-200mhzgrp {
> +               fsl,pins = <
> +                       MX93_PAD_SD2_CLK__USDHC2_CLK            0x15fe
> +                       MX93_PAD_SD2_CMD__USDHC2_CMD            0x400013fe
> +                       MX93_PAD_SD2_DATA0__USDHC2_DATA0        0x400013fe
> +                       MX93_PAD_SD2_DATA1__USDHC2_DATA1        0x400013fe
> +                       MX93_PAD_SD2_DATA2__USDHC2_DATA2        0x400013fe
> +                       MX93_PAD_SD2_DATA3__USDHC2_DATA3        0x400013fe
> +                       MX93_PAD_SD2_VSELECT__USDHC2_VSELECT    0x51e
> +               >;
> +       };
> +
> +       pinctrl_usdhc2_sleep: usdhc2-sleepgrp {
> +               fsl,pins = <
> +                       MX93_PAD_SD2_CLK__GPIO3_IO01            0x51e
> +                       MX93_PAD_SD2_CMD__GPIO3_IO02            0x51e
> +                       MX93_PAD_SD2_DATA0__GPIO3_IO03          0x51e
> +                       MX93_PAD_SD2_DATA1__GPIO3_IO04          0x51e
> +                       MX93_PAD_SD2_DATA2__GPIO3_IO05          0x51e
> +                       MX93_PAD_SD2_DATA3__GPIO3_IO06          0x51e
> +                       MX93_PAD_SD2_VSELECT__GPIO3_IO19        0x51e
> +               >;
> +       };
> +
> +       pinctrl_wdog: wdoggrp {
> +               fsl,pins = <
> +                       MX93_PAD_WDOG_ANY__WDOG1_WDOG_ANY       0x31e
> +               >;
> +       };
> +};
> diff --git a/arch/arm64/boot/dts/freescale/imx93-11x11-frdm.dts b/arch/arm64/boot/dts/freescale/imx93-11x11-frdm.dts
> index bd14ba28690c081817111aaabef12fb56a7c56a4..f2a31a0eacabff07532aee989eebd75a0c3e22e0 100644
> --- a/arch/arm64/boot/dts/freescale/imx93-11x11-frdm.dts
> +++ b/arch/arm64/boot/dts/freescale/imx93-11x11-frdm.dts
> @@ -1,71 +1,14 @@
>  // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
> +
>  /dts-v1/;
>
> -#include <dt-bindings/usb/pd.h>
>  #include "imx93.dtsi"
> +#include "imx93-11x11-frdm-common.dtsi"
>
>  / {
>         compatible = "fsl,imx93-11x11-frdm", "fsl,imx93";
>         model = "NXP i.MX93 11X11 FRDM board";
>
> -       aliases {
> -               can0 = &flexcan2;
> -               ethernet0 = &fec;
> -               ethernet1 = &eqos;
> -               i2c0 = &lpi2c1;
> -               i2c1 = &lpi2c2;
> -               i2c2 = &lpi2c3;
> -               mmc0 = &usdhc1; /* EMMC */
> -               mmc1 = &usdhc2; /* uSD */
> -               rtc0 = &pcf2131;
> -               serial0 = &lpuart1;
> -               serial4 = &lpuart5;
> -       };
> -
> -       chosen {
> -               stdout-path = &lpuart1;
> -       };
> -
> -       flexcan2_phy: can-phy {
> -               compatible = "nxp,tja1051";
> -               #phy-cells = <0>;
> -               max-bitrate = <5000000>;
> -               silent-gpios = <&pcal6524 23 GPIO_ACTIVE_HIGH>;
> -       };
> -
> -       gpio-keys {
> -               compatible = "gpio-keys";
> -
> -               button-k2 {
> -                       label = "Button K2";
> -                       linux,code = <BTN_1>;
> -                       gpios = <&pcal6524 5 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>;
> -                       interrupt-parent = <&pcal6524>;
> -                       interrupts = <5 IRQ_TYPE_EDGE_FALLING>;
> -               };
> -
> -               button-k3 {
> -                       label = "Button K3";
> -                       linux,code = <BTN_2>;
> -                       gpios = <&pcal6524 6 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>;
> -                       interrupt-parent = <&pcal6524>;
> -                       interrupts = <6 IRQ_TYPE_EDGE_FALLING>;
> -               };
> -       };
> -
> -       reg_usdhc2_vmmc: regulator-usdhc2 {
> -               compatible = "regulator-fixed";
> -               off-on-delay-us = <12000>;
> -               pinctrl-0 = <&pinctrl_reg_usdhc2_vmmc>;
> -               pinctrl-names = "default";
> -               regulator-min-microvolt = <3300000>;
> -               regulator-max-microvolt = <3300000>;
> -               regulator-name = "VSD_3V3";
> -               vin-supply = <&buck4>;
> -               gpio = <&gpio3 7 GPIO_ACTIVE_HIGH>;
> -               enable-active-high;
> -       };
> -
>         reg_usdhc3_vmmc: regulator-usdhc3 {
>                 compatible = "regulator-fixed";
>                 regulator-name = "VPCIe_3V3";
> @@ -76,51 +19,6 @@ reg_usdhc3_vmmc: regulator-usdhc3 {
>                 enable-active-high;
>         };
>
> -       reserved-memory {
> -               ranges;
> -               #address-cells = <2>;
> -               #size-cells = <2>;
> -
> -               linux,cma {
> -                       compatible = "shared-dma-pool";
> -                       alloc-ranges = <0 0x80000000 0 0x30000000>;
> -                       reusable;
> -                       size = <0 0x10000000>;
> -                       linux,cma-default;
> -               };
> -
> -               rsc_table: rsc-table@2021e000 {
> -                       reg = <0 0x2021e000 0 0x1000>;
> -                       no-map;
> -               };
> -
> -               vdev0vring0: vdev0vring0@a4000000 {
> -                       reg = <0 0xa4000000 0 0x8000>;
> -                       no-map;
> -               };
> -
> -               vdev0vring1: vdev0vring1@a4008000 {
> -                       reg = <0 0xa4008000 0 0x8000>;
> -                       no-map;
> -               };
> -
> -               vdev1vring0: vdev1vring0@a4010000 {
> -                       reg = <0 0xa4010000 0 0x8000>;
> -                       no-map;
> -               };
> -
> -               vdev1vring1: vdev1vring1@a4018000 {
> -                       reg = <0 0xa4018000 0 0x8000>;
> -                       no-map;
> -               };
> -
> -               vdevbuffer: vdevbuffer@a4020000 {
> -                       compatible = "shared-dma-pool";
> -                       reg = <0 0xa4020000 0 0x100000>;
> -                       no-map;
> -               };
> -       };
> -
>         sound-mqs {
>                 compatible = "fsl,imx-audio-mqs";
>                 model = "mqs-audio";
> @@ -134,269 +32,6 @@ usdhc3_pwrseq: mmc-pwrseq {
>         };
>  };
>
> -&adc1 {
> -       vref-supply = <&buck5>;
> -       status = "okay";
> -};
> -
> -&mu1 {
> -       status = "okay";
> -};
> -
> -&cm33 {
> -       mboxes = <&mu1 0 1>,
> -                <&mu1 1 1>,
> -                <&mu1 3 1>;
> -       mbox-names = "tx", "rx", "rxdb";
> -       memory-region = <&vdevbuffer>, <&vdev0vring0>, <&vdev0vring1>,
> -                       <&vdev1vring0>, <&vdev1vring1>, <&rsc_table>;
> -       status = "okay";
> -};
> -
> -&eqos {
> -       pinctrl-names = "default", "sleep";
> -       pinctrl-0 = <&pinctrl_eqos>;
> -       pinctrl-1 = <&pinctrl_eqos_sleep>;
> -       phy-handle = <&ethphy1>;
> -       phy-mode = "rgmii-id";
> -       status = "okay";
> -
> -       mdio {
> -               compatible = "snps,dwmac-mdio";
> -               #address-cells = <1>;
> -               #size-cells = <0>;
> -               clock-frequency = <5000000>;
> -
> -               ethphy1: ethernet-phy@1 {
> -                       reg = <1>;
> -                       reset-assert-us = <10000>;
> -                       reset-deassert-us = <80000>;
> -                       reset-gpios = <&pcal6524 15 GPIO_ACTIVE_LOW>;
> -                       realtek,clkout-disable;
> -               };
> -       };
> -};
> -
> -&fec {
> -       pinctrl-names = "default", "sleep";
> -       pinctrl-0 = <&pinctrl_fec>;
> -       pinctrl-1 = <&pinctrl_fec_sleep>;
> -       phy-mode = "rgmii-id";
> -       phy-handle = <&ethphy2>;
> -       fsl,magic-packet;
> -       status = "okay";
> -
> -       mdio {
> -               #address-cells = <1>;
> -               #size-cells = <0>;
> -               clock-frequency = <5000000>;
> -
> -               ethphy2: ethernet-phy@2 {
> -                       reg = <2>;
> -                       reset-assert-us = <10000>;
> -                       reset-deassert-us = <80000>;
> -                       reset-gpios = <&pcal6524 16 GPIO_ACTIVE_LOW>;
> -                       realtek,clkout-disable;
> -               };
> -       };
> -};
> -
> -&flexcan2 {
> -       phys = <&flexcan2_phy>;
> -       pinctrl-0 = <&pinctrl_flexcan2>;
> -       pinctrl-1 = <&pinctrl_flexcan2_sleep>;
> -       pinctrl-names = "default", "sleep";
> -       status = "okay";
> -};
> -
> -&lpi2c1 {
> -       clock-frequency = <400000>;
> -       pinctrl-0 = <&pinctrl_lpi2c1>;
> -       pinctrl-names = "default";
> -       status = "okay";
> -
> -       pcal6408: gpio@20 {
> -               compatible = "nxp,pcal6408";
> -               reg = <0x20>;
> -               #gpio-cells = <2>;
> -               gpio-controller;
> -               reset-gpios = <&pcal6524 20 GPIO_ACTIVE_LOW>;
> -       };
> -};
> -
> -&lpi2c2 {
> -       clock-frequency = <400000>;
> -       pinctrl-0 = <&pinctrl_lpi2c2>;
> -       pinctrl-names = "default";
> -       status = "okay";
> -
> -       pcal6524: gpio@22 {
> -               compatible = "nxp,pcal6524";
> -               reg = <0x22>;
> -               #interrupt-cells = <2>;
> -               interrupt-controller;
> -               interrupt-parent = <&gpio3>;
> -               interrupts = <27 IRQ_TYPE_LEVEL_LOW>;
> -               #gpio-cells = <2>;
> -               gpio-controller;
> -               pinctrl-0 = <&pinctrl_pcal6524>;
> -               pinctrl-names = "default";
> -               /* does not boot with supplier set, because it is the bucks interrupt parent */
> -               /* vcc-supply = <&buck4>; */
> -       };
> -
> -       pmic@25 {
> -               compatible = "nxp,pca9451a";
> -               reg = <0x25>;
> -               interrupt-parent = <&pcal6524>;
> -               interrupts = <11 IRQ_TYPE_EDGE_FALLING>;
> -
> -               regulators {
> -
> -                       buck1: BUCK1 {
> -                               regulator-name = "VDD_SOC_0V8";
> -                               regulator-min-microvolt = <610000>;
> -                               regulator-max-microvolt = <950000>;
> -                               regulator-always-on;
> -                               regulator-boot-on;
> -                               regulator-ramp-delay = <3125>;
> -                       };
> -
> -                       buck2: BUCK2 {
> -                               regulator-name = "LPD4_x_VDDQ_0V6";
> -                               regulator-min-microvolt = <600000>;
> -                               regulator-max-microvolt = <670000>;
> -                               regulator-always-on;
> -                               regulator-boot-on;
> -                               regulator-ramp-delay = <3125>;
> -                       };
> -
> -                       buck4: BUCK4 {
> -                               regulator-name = "VDD_3V3";
> -                               regulator-min-microvolt = <3300000>;
> -                               regulator-max-microvolt = <3300000>;
> -                               regulator-always-on;
> -                               regulator-boot-on;
> -                       };
> -
> -                       buck5: BUCK5 {
> -                               regulator-name = "VDD_1V8";
> -                               regulator-min-microvolt = <1800000>;
> -                               regulator-max-microvolt = <1800000>;
> -                               regulator-always-on;
> -                               regulator-boot-on;
> -                       };
> -
> -                       buck6: BUCK6 {
> -                               regulator-name = "LPD4_x_VDD2_1V1";
> -                               regulator-min-microvolt = <1060000>;
> -                               regulator-max-microvolt = <1140000>;
> -                               regulator-always-on;
> -                               regulator-boot-on;
> -                       };
> -
> -                       ldo1: LDO1 {
> -                               regulator-name = "NVCC_BBSM_1V8";
> -                               regulator-min-microvolt = <1620000>;
> -                               regulator-max-microvolt = <1980000>;
> -                               regulator-always-on;
> -                               regulator-boot-on;
> -                       };
> -
> -                       ldo4: LDO4 {
> -                               regulator-name = "VDD_ANA_0V8";
> -                               regulator-min-microvolt = <800000>;
> -                               regulator-max-microvolt = <840000>;
> -                               regulator-always-on;
> -                               regulator-boot-on;
> -                       };
> -
> -                       ldo5: LDO5 {
> -                               regulator-name = "NVCC_SD";
> -                               regulator-min-microvolt = <1800000>;
> -                               regulator-max-microvolt = <3300000>;
> -                               regulator-always-on;
> -                               regulator-boot-on;
> -                       };
> -               };
> -       };
> -
> -       eeprom: eeprom@50 {
> -               compatible = "atmel,24c256";
> -               reg = <0x50>;
> -               pagesize = <64>;
> -               vcc-supply = <&buck4>;
> -       };
> -};
> -
> -&lpi2c3 {
> -       clock-frequency = <400000>;
> -       pinctrl-0 = <&pinctrl_lpi2c3>;
> -       pinctrl-names = "default";
> -       status = "okay";
> -
> -       ptn5110: tcpc@50 {
> -               compatible = "nxp,ptn5110", "tcpci";
> -               reg = <0x50>;
> -               interrupt-parent = <&gpio3>;
> -               interrupts = <27 IRQ_TYPE_LEVEL_LOW>;
> -
> -               typec1_con: connector {
> -                       compatible = "usb-c-connector";
> -                       data-role = "dual";
> -                       label = "USB-C";
> -                       op-sink-microwatt = <15000000>;
> -                       power-role = "dual";
> -                       self-powered;
> -                       sink-pdos = <PDO_FIXED(5000, 3000, PDO_FIXED_USB_COMM)
> -                                       PDO_VAR(5000, 20000, 3000)>;
> -                       source-pdos = <PDO_FIXED(5000, 3000, PDO_FIXED_USB_COMM)>;
> -                       try-power-role = "sink";
> -
> -                       ports {
> -                               #address-cells = <1>;
> -                               #size-cells = <0>;
> -
> -                               port@0 {
> -                                       reg = <0>;
> -
> -                                       typec1_dr_sw: endpoint {
> -                                               remote-endpoint = <&usb1_drd_sw>;
> -                                       };
> -                               };
> -                       };
> -               };
> -       };
> -
> -       pcf2131: rtc@53 {
> -               compatible = "nxp,pcf2131";
> -               reg = <0x53>;
> -               interrupt-parent = <&pcal6524>;
> -               interrupts = <1 IRQ_TYPE_EDGE_FALLING>;
> -       };
> -};
> -
> -&lpuart1 { /* console */
> -       pinctrl-0 = <&pinctrl_uart1>;
> -       pinctrl-names = "default";
> -       status = "okay";
> -};
> -
> -&lpuart5 {
> -       pinctrl-0 = <&pinctrl_uart5>;
> -       pinctrl-names = "default";
> -       status = "okay";
> -
> -       uart-has-rtscts;
> -
> -       bluetooth {
> -               compatible = "nxp,88w8987-bt";
> -               device-wakeup-gpios = <&pcal6408 3 GPIO_ACTIVE_HIGH>;
> -               reset-gpios = <&pcal6524 19 GPIO_ACTIVE_LOW>;
> -               vcc-supply = <&reg_usdhc3_vmmc>;
> -       };
> -};
> -
>  &mqs1 {
>         pinctrl-names = "default";
>         pinctrl-0 = <&pinctrl_mqs1>;
> @@ -418,57 +53,6 @@ &sai1 {
>         status = "okay";
>  };
>
> -&usbotg1 {
> -       adp-disable;
> -       disable-over-current;
> -       dr_mode = "otg";
> -       hnp-disable;
> -       srp-disable;
> -       usb-role-switch;
> -       samsung,picophy-dc-vol-level-adjust = <7>;
> -       samsung,picophy-pre-emp-curr-control = <3>;
> -       status = "okay";
> -
> -       port {
> -               usb1_drd_sw: endpoint {
> -                       remote-endpoint = <&typec1_dr_sw>;
> -               };
> -       };
> -};
> -
> -&usbotg2 {
> -       disable-over-current;
> -       dr_mode = "host";
> -       samsung,picophy-dc-vol-level-adjust = <7>;
> -       samsung,picophy-pre-emp-curr-control = <3>;
> -       status = "okay";
> -};
> -
> -&usdhc1 {
> -       bus-width = <8>;
> -       non-removable;
> -       pinctrl-0 = <&pinctrl_usdhc1>;
> -       pinctrl-1 = <&pinctrl_usdhc1_100mhz>;
> -       pinctrl-2 = <&pinctrl_usdhc1_200mhz>;
> -       pinctrl-names = "default", "state_100mhz", "state_200mhz";
> -       vmmc-supply = <&buck4>;
> -       status = "okay";
> -};
> -
> -&usdhc2 {
> -       bus-width = <4>;
> -       cd-gpios = <&gpio3 00 GPIO_ACTIVE_LOW>;
> -       no-mmc;
> -       no-sdio;
> -       pinctrl-0 = <&pinctrl_usdhc2>, <&pinctrl_usdhc2_gpio>;
> -       pinctrl-1 = <&pinctrl_usdhc2_100mhz>, <&pinctrl_usdhc2_gpio>;
> -       pinctrl-2 = <&pinctrl_usdhc2_200mhz>, <&pinctrl_usdhc2_gpio>;
> -       pinctrl-3 = <&pinctrl_usdhc2_sleep>, <&pinctrl_usdhc2_gpio_sleep>;
> -       pinctrl-names = "default", "state_100mhz", "state_200mhz", "sleep";
> -       vmmc-supply = <&reg_usdhc2_vmmc>;
> -       status = "okay";
> -};
> -
>  &usdhc3 {
>         bus-width = <4>;
>         keep-power-in-suspend;
> @@ -483,126 +67,8 @@ &usdhc3 {
>         status = "okay";
>  };
>
> -&wdog3 {
> -       pinctrl-names = "default";
> -       pinctrl-0 = <&pinctrl_wdog>;
> -       fsl,ext-reset-output;
> -       status = "okay";
> -};
>
>  &iomuxc {
> -
> -       pinctrl_eqos: eqosgrp {
> -               fsl,pins = <
> -                       MX93_PAD_ENET1_MDC__ENET_QOS_MDC                        0x57e
> -                       MX93_PAD_ENET1_MDIO__ENET_QOS_MDIO                      0x57e
> -                       MX93_PAD_ENET1_RD0__ENET_QOS_RGMII_RD0                  0x57e
> -                       MX93_PAD_ENET1_RD1__ENET_QOS_RGMII_RD1                  0x57e
> -                       MX93_PAD_ENET1_RD2__ENET_QOS_RGMII_RD2                  0x57e
> -                       MX93_PAD_ENET1_RD3__ENET_QOS_RGMII_RD3                  0x57e
> -                       MX93_PAD_ENET1_RXC__CCM_ENET_QOS_CLOCK_GENERATE_RX_CLK  0x58e
> -                       MX93_PAD_ENET1_RX_CTL__ENET_QOS_RGMII_RX_CTL            0x57e
> -                       MX93_PAD_ENET1_TD0__ENET_QOS_RGMII_TD0                  0x57e
> -                       MX93_PAD_ENET1_TD1__ENET_QOS_RGMII_TD1                  0x57e
> -                       MX93_PAD_ENET1_TD2__ENET_QOS_RGMII_TD2                  0x57e
> -                       MX93_PAD_ENET1_TD3__ENET_QOS_RGMII_TD3                  0x57e
> -                       MX93_PAD_ENET1_TXC__CCM_ENET_QOS_CLOCK_GENERATE_TX_CLK  0x58e
> -                       MX93_PAD_ENET1_TX_CTL__ENET_QOS_RGMII_TX_CTL            0x57e
> -               >;
> -       };
> -
> -       pinctrl_eqos_sleep: eqossleepgrp {
> -               fsl,pins = <
> -                       MX93_PAD_ENET1_MDC__GPIO4_IO00                  0x31e
> -                       MX93_PAD_ENET1_MDIO__GPIO4_IO01                 0x31e
> -                       MX93_PAD_ENET1_RD0__GPIO4_IO10                  0x31e
> -                       MX93_PAD_ENET1_RD1__GPIO4_IO11                  0x31e
> -                       MX93_PAD_ENET1_RD2__GPIO4_IO12                  0x31e
> -                       MX93_PAD_ENET1_RD3__GPIO4_IO13                  0x31e
> -                       MX93_PAD_ENET1_RXC__GPIO4_IO09                  0x31e
> -                       MX93_PAD_ENET1_RX_CTL__GPIO4_IO08               0x31e
> -                       MX93_PAD_ENET1_TD0__GPIO4_IO05                  0x31e
> -                       MX93_PAD_ENET1_TD1__GPIO4_IO04                  0x31e
> -                       MX93_PAD_ENET1_TD2__GPIO4_IO03                  0x31e
> -                       MX93_PAD_ENET1_TD3__GPIO4_IO02                  0x31e
> -                       MX93_PAD_ENET1_TXC__GPIO4_IO07                  0x31e
> -                       MX93_PAD_ENET1_TX_CTL__GPIO4_IO06               0x31e
> -               >;
> -       };
> -
> -       pinctrl_fec: fecgrp {
> -               fsl,pins = <
> -                       MX93_PAD_ENET2_MDC__ENET1_MDC                   0x57e
> -                       MX93_PAD_ENET2_MDIO__ENET1_MDIO                 0x57e
> -                       MX93_PAD_ENET2_RD0__ENET1_RGMII_RD0             0x57e
> -                       MX93_PAD_ENET2_RD1__ENET1_RGMII_RD1             0x57e
> -                       MX93_PAD_ENET2_RD2__ENET1_RGMII_RD2             0x57e
> -                       MX93_PAD_ENET2_RD3__ENET1_RGMII_RD3             0x57e
> -                       MX93_PAD_ENET2_RXC__ENET1_RGMII_RXC             0x58e
> -                       MX93_PAD_ENET2_RX_CTL__ENET1_RGMII_RX_CTL       0x57e
> -                       MX93_PAD_ENET2_TD0__ENET1_RGMII_TD0             0x57e
> -                       MX93_PAD_ENET2_TD1__ENET1_RGMII_TD1             0x57e
> -                       MX93_PAD_ENET2_TD2__ENET1_RGMII_TD2             0x57e
> -                       MX93_PAD_ENET2_TD3__ENET1_RGMII_TD3             0x57e
> -                       MX93_PAD_ENET2_TXC__ENET1_RGMII_TXC             0x58e
> -                       MX93_PAD_ENET2_TX_CTL__ENET1_RGMII_TX_CTL       0x57e
> -               >;
> -       };
> -
> -       pinctrl_fec_sleep: fecsleepgrp {
> -               fsl,pins = <
> -                       MX93_PAD_ENET2_MDC__GPIO4_IO14                  0x51e
> -                       MX93_PAD_ENET2_MDIO__GPIO4_IO15                 0x51e
> -                       MX93_PAD_ENET2_RD0__GPIO4_IO24                  0x51e
> -                       MX93_PAD_ENET2_RD1__GPIO4_IO25                  0x51e
> -                       MX93_PAD_ENET2_RD2__GPIO4_IO26                  0x51e
> -                       MX93_PAD_ENET2_RD3__GPIO4_IO27                  0x51e
> -                       MX93_PAD_ENET2_RXC__GPIO4_IO23                  0x51e
> -                       MX93_PAD_ENET2_RX_CTL__GPIO4_IO22               0x51e
> -                       MX93_PAD_ENET2_TD0__GPIO4_IO19                  0x51e
> -                       MX93_PAD_ENET2_TD1__GPIO4_IO18                  0x51e
> -                       MX93_PAD_ENET2_TD2__GPIO4_IO17                  0x51e
> -                       MX93_PAD_ENET2_TD3__GPIO4_IO16                  0x51e
> -                       MX93_PAD_ENET2_TXC__GPIO4_IO21                  0x51e
> -                       MX93_PAD_ENET2_TX_CTL__GPIO4_IO20               0x51e
> -               >;
> -       };
> -
> -       pinctrl_flexcan2: flexcan2grp {
> -               fsl,pins = <
> -                       MX93_PAD_GPIO_IO25__CAN2_TX                     0x139e
> -                       MX93_PAD_GPIO_IO27__CAN2_RX                     0x139e
> -               >;
> -       };
> -
> -       pinctrl_flexcan2_sleep: flexcan2sleepgrp {
> -               fsl,pins = <
> -                       MX93_PAD_GPIO_IO25__GPIO2_IO25                  0x31e
> -                       MX93_PAD_GPIO_IO27__GPIO2_IO27                  0x31e
> -               >;
> -       };
> -
> -       pinctrl_lpi2c1: lpi2c1grp {
> -               fsl,pins = <
> -                       MX93_PAD_I2C1_SCL__LPI2C1_SCL                   0x40000b9e
> -                       MX93_PAD_I2C1_SDA__LPI2C1_SDA                   0x40000b9e
> -               >;
> -       };
> -
> -       pinctrl_lpi2c2: lpi2c2grp {
> -               fsl,pins = <
> -                       MX93_PAD_I2C2_SCL__LPI2C2_SCL                   0x40000b9e
> -                       MX93_PAD_I2C2_SDA__LPI2C2_SDA                   0x40000b9e
> -               >;
> -       };
> -
> -       pinctrl_lpi2c3: lpi2c3grp {
> -               fsl,pins = <
> -                       MX93_PAD_GPIO_IO28__LPI2C3_SDA                  0x40000b9e
> -                       MX93_PAD_GPIO_IO29__LPI2C3_SCL                  0x40000b9e
> -               >;
> -       };
> -
>         pinctrl_mqs1: mqs1grp {
>                 fsl,pins = <
>                         MX93_PAD_PDM_CLK__MQS1_LEFT             0x31e
> @@ -610,149 +76,7 @@ MX93_PAD_PDM_BIT_STREAM0__MQS1_RIGHT       0x31e
>                 >;
>         };
>
> -       pinctrl_pcal6524: pcal6524grp {
> -               fsl,pins = <
> -                       MX93_PAD_CCM_CLKO2__GPIO3_IO27                  0x31e
> -               >;
> -       };
> -
> -       pinctrl_reg_usdhc2_vmmc: regusdhc2vmmcgrp {
> -               fsl,pins = <
> -                       MX93_PAD_SD2_RESET_B__GPIO3_IO07                0x31e
> -               >;
> -       };
> -
> -       pinctrl_uart1: uart1grp {
> -               fsl,pins = <
> -                       MX93_PAD_UART1_RXD__LPUART1_RX                  0x31e
> -                       MX93_PAD_UART1_TXD__LPUART1_TX                  0x31e
> -               >;
> -       };
> -
> -       pinctrl_uart5: uart5grp {
> -               fsl,pins = <
> -                       MX93_PAD_DAP_TDO_TRACESWO__LPUART5_TX           0x31e
> -                       MX93_PAD_DAP_TDI__LPUART5_RX                    0x31e
> -                       MX93_PAD_DAP_TMS_SWDIO__LPUART5_RTS_B           0x31e
> -                       MX93_PAD_DAP_TCLK_SWCLK__LPUART5_CTS_B          0x31e
> -               >;
> -       };
> -
> -       /* need to config the SION for data and cmd pad, refer to ERR052021 */
> -       pinctrl_usdhc1: usdhc1grp {
> -               fsl,pins = <
> -                       MX93_PAD_SD1_CLK__USDHC1_CLK            0x1582
> -                       MX93_PAD_SD1_CMD__USDHC1_CMD            0x40001382
> -                       MX93_PAD_SD1_DATA0__USDHC1_DATA0        0x40001382
> -                       MX93_PAD_SD1_DATA1__USDHC1_DATA1        0x40001382
> -                       MX93_PAD_SD1_DATA2__USDHC1_DATA2        0x40001382
> -                       MX93_PAD_SD1_DATA3__USDHC1_DATA3        0x40001382
> -                       MX93_PAD_SD1_DATA4__USDHC1_DATA4        0x40001382
> -                       MX93_PAD_SD1_DATA5__USDHC1_DATA5        0x40001382
> -                       MX93_PAD_SD1_DATA6__USDHC1_DATA6        0x40001382
> -                       MX93_PAD_SD1_DATA7__USDHC1_DATA7        0x40001382
> -                       MX93_PAD_SD1_STROBE__USDHC1_STROBE      0x1582
> -               >;
> -       };
> -
> -       /* need to config the SION for data and cmd pad, refer to ERR052021 */
> -       pinctrl_usdhc1_100mhz: usdhc1-100mhzgrp {
> -               fsl,pins = <
> -                       MX93_PAD_SD1_CLK__USDHC1_CLK            0x158e
> -                       MX93_PAD_SD1_CMD__USDHC1_CMD            0x4000138e
> -                       MX93_PAD_SD1_DATA0__USDHC1_DATA0        0x4000138e
> -                       MX93_PAD_SD1_DATA1__USDHC1_DATA1        0x4000138e
> -                       MX93_PAD_SD1_DATA2__USDHC1_DATA2        0x4000138e
> -                       MX93_PAD_SD1_DATA3__USDHC1_DATA3        0x4000138e
> -                       MX93_PAD_SD1_DATA4__USDHC1_DATA4        0x4000138e
> -                       MX93_PAD_SD1_DATA5__USDHC1_DATA5        0x4000138e
> -                       MX93_PAD_SD1_DATA6__USDHC1_DATA6        0x4000138e
> -                       MX93_PAD_SD1_DATA7__USDHC1_DATA7        0x4000138e
> -                       MX93_PAD_SD1_STROBE__USDHC1_STROBE      0x158e
> -               >;
> -       };
> -
> -       /* need to config the SION for data and cmd pad, refer to ERR052021 */
> -       pinctrl_usdhc1_200mhz: usdhc1-200mhzgrp {
> -               fsl,pins = <
> -                       MX93_PAD_SD1_CLK__USDHC1_CLK            0x15fe
> -                       MX93_PAD_SD1_CMD__USDHC1_CMD            0x400013fe
> -                       MX93_PAD_SD1_DATA0__USDHC1_DATA0        0x400013fe
> -                       MX93_PAD_SD1_DATA1__USDHC1_DATA1        0x400013fe
> -                       MX93_PAD_SD1_DATA2__USDHC1_DATA2        0x400013fe
> -                       MX93_PAD_SD1_DATA3__USDHC1_DATA3        0x400013fe
> -                       MX93_PAD_SD1_DATA4__USDHC1_DATA4        0x400013fe
> -                       MX93_PAD_SD1_DATA5__USDHC1_DATA5        0x400013fe
> -                       MX93_PAD_SD1_DATA6__USDHC1_DATA6        0x400013fe
> -                       MX93_PAD_SD1_DATA7__USDHC1_DATA7        0x400013fe
> -                       MX93_PAD_SD1_STROBE__USDHC1_STROBE      0x15fe
> -               >;
> -       };
> -
> -       pinctrl_usdhc2_gpio: usdhc2gpiogrp {
> -               fsl,pins = <
> -                       MX93_PAD_SD2_CD_B__GPIO3_IO00           0x31e
> -               >;
> -       };
> -
> -       pinctrl_usdhc2_gpio_sleep: usdhc2gpiosleepgrp {
> -               fsl,pins = <
> -                       MX93_PAD_SD2_CD_B__GPIO3_IO00           0x51e
> -               >;
> -       };
> -
> -       /* need to config the SION for data and cmd pad, refer to ERR052021 */
> -       pinctrl_usdhc2: usdhc2grp {
> -               fsl,pins = <
> -                       MX93_PAD_SD2_CLK__USDHC2_CLK            0x1582
> -                       MX93_PAD_SD2_CMD__USDHC2_CMD            0x40001382
> -                       MX93_PAD_SD2_DATA0__USDHC2_DATA0        0x40001382
> -                       MX93_PAD_SD2_DATA1__USDHC2_DATA1        0x40001382
> -                       MX93_PAD_SD2_DATA2__USDHC2_DATA2        0x40001382
> -                       MX93_PAD_SD2_DATA3__USDHC2_DATA3        0x40001382
> -                       MX93_PAD_SD2_VSELECT__USDHC2_VSELECT    0x51e
> -               >;
> -       };
> -
>         /* need to config the SION for data and cmd pad, refer to ERR052021 */
> -       pinctrl_usdhc2_100mhz: usdhc2-100mhzgrp {
> -               fsl,pins = <
> -                       MX93_PAD_SD2_CLK__USDHC2_CLK            0x158e
> -                       MX93_PAD_SD2_CMD__USDHC2_CMD            0x4000138e
> -                       MX93_PAD_SD2_DATA0__USDHC2_DATA0        0x4000138e
> -                       MX93_PAD_SD2_DATA1__USDHC2_DATA1        0x4000138e
> -                       MX93_PAD_SD2_DATA2__USDHC2_DATA2        0x4000138e
> -                       MX93_PAD_SD2_DATA3__USDHC2_DATA3        0x4000138e
> -                       MX93_PAD_SD2_VSELECT__USDHC2_VSELECT    0x51e
> -               >;
> -       };
> -
> -       /* need to config the SION for data and cmd pad, refer to ERR052021 */
> -       pinctrl_usdhc2_200mhz: usdhc2-200mhzgrp {
> -               fsl,pins = <
> -                       MX93_PAD_SD2_CLK__USDHC2_CLK            0x15fe
> -                       MX93_PAD_SD2_CMD__USDHC2_CMD            0x400013fe
> -                       MX93_PAD_SD2_DATA0__USDHC2_DATA0        0x400013fe
> -                       MX93_PAD_SD2_DATA1__USDHC2_DATA1        0x400013fe
> -                       MX93_PAD_SD2_DATA2__USDHC2_DATA2        0x400013fe
> -                       MX93_PAD_SD2_DATA3__USDHC2_DATA3        0x400013fe
> -                       MX93_PAD_SD2_VSELECT__USDHC2_VSELECT    0x51e
> -               >;
> -       };
> -
> -       pinctrl_usdhc2_sleep: usdhc2-sleepgrp {
> -               fsl,pins = <
> -                       MX93_PAD_SD2_CLK__GPIO3_IO01            0x51e
> -                       MX93_PAD_SD2_CMD__GPIO3_IO02            0x51e
> -                       MX93_PAD_SD2_DATA0__GPIO3_IO03          0x51e
> -                       MX93_PAD_SD2_DATA1__GPIO3_IO04          0x51e
> -                       MX93_PAD_SD2_DATA2__GPIO3_IO05          0x51e
> -                       MX93_PAD_SD2_DATA3__GPIO3_IO06          0x51e
> -                       MX93_PAD_SD2_VSELECT__GPIO3_IO19        0x51e
> -               >;
> -       };
> -
> -               /* need to config the SION for data and cmd pad, refer to ERR052021 */
>         pinctrl_usdhc3: usdhc3grp {
>                 fsl,pins = <
>                         MX93_PAD_SD3_CLK__USDHC3_CLK            0x1582
> @@ -798,10 +122,4 @@ MX93_PAD_SD3_DATA2__GPIO3_IO24             0x31e
>                         MX93_PAD_SD3_DATA3__GPIO3_IO25          0x31e
>                 >;
>         };
> -
> -       pinctrl_wdog: wdoggrp {
> -               fsl,pins = <
> -                       MX93_PAD_WDOG_ANY__WDOG1_WDOG_ANY       0x31e
> -               >;
> -       };
>  };
>
> --
> 2.34.1
>
>


^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2026-07-17 16:30 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-07-17  5:11 [PATCH 0/3] Add i.MX93 Wireless FRDM board support Joseph Guo
2026-07-17  5:11 ` [PATCH 1/3] arm64: dts: imx93-11x11-frdm: factor out common parts into dtsi Joseph Guo
2026-07-17 16:29   ` Frank Li
2026-07-17  5:11 ` [PATCH 2/3] dt-bindings: arm: fsl: Add i.MX93 Wireless FRDM board Joseph Guo
2026-07-17  9:24   ` Krzysztof Kozlowski
2026-07-17  5:11 ` [PATCH 3/3] arm64: dts: imx93: Add i.MX93 Wireless FRDM board support Joseph Guo

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox