RE: [PATCH] arm64: dts: imx943-evk-sdwifi: add a new dtso to support SDIW612 WiFi
From: Sherry Sun
Date: Mon Jun 01 2026 - 22:40:36 EST
> On Tue, May 19, 2026 at 01:39:42PM +0800, Sherry Sun (OSS) wrote:
> > From: Sherry Sun <sherry.sun@xxxxxxx>
> >
> > Add a new imx943-evk-sdwifi.dtso to support SDIW612 WiFi chip on
> > imx943-evk board, the default imx943-evk.dtb is used to support PCIE
> > AW693 WiFi.
> >
> > Use separate dts for SDIW612 and PCIe AW693 WiFi to avoid the shared
> > regulator between SDIO and PCIe buses, the random probe order between
> > the two buses may break the PCIe initialization sequence which cause
> > AW693 has probability of failing to detect.
>
> Mani said M.2 Key E patch already applied. Dose use M.2 Key E fix this
> problem?
>
Hi Frank,
With the new M.2 Key E framwork, PCIe wifi and SDIO wifi don't share the
regulator, but it cause the following issues, so we still need a separate dtso
for SDIO wifi even we use the M.2 Key framework.
1. The PCIe M.2 connector use a dedicated w_disable1-gpios, which is
conflict with reg_usdhc3_vmmc that needed for SDIO wifi to controls the
w_disable1 pin.
m2_connector: m2-connector {
compatible = "pcie-m2-e-connector";
vpcie3v3-supply = <®_m2_pwr>;
vpcie3v3aux-supply = <®_m2_pwr>;
w_disable1-gpios = <&pcal6416_i2c3_u46 5 GPIO_ACTIVE_LOW>;
ports {
...
reg_usdhc3_vmmc: regulator-usdhc3 {
compatible = "regulator-fixed";
regulator-name = "WLAN_EN";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
vin-supply = <®_m2_pwr>;
gpio = <&pcal6416_i2c3_u46 5 GPIO_ACTIVE_HIGH>;
2. New PCIe M.2 keye dts require a new lpuart6_ep remote node to replace
the old Bluetooth serdev node.
&lpuart6 {
...
port {
lpuart6_ep: endpoint {
remote-endpoint = <&m2_e_uart_ep>;
};
};
};
But the old Bluetooth serdev node is needed for SDIO wifi.
&lpuart6 {
...
bluetooth {
compatible = "nxp,88w8987-bt";
};
};
Best Regards
Sherry
>
> >
> > Signed-off-by: Sherry Sun <sherry.sun@xxxxxxx>
> > ---
> > arch/arm64/boot/dts/freescale/Makefile | 3 +++
> > .../boot/dts/freescale/imx943-evk-sdwifi.dtso | 15 +++++++++++++++
> > arch/arm64/boot/dts/freescale/imx943-evk.dts | 2 +-
> > 3 files changed, 19 insertions(+), 1 deletion(-) create mode 100644
> > arch/arm64/boot/dts/freescale/imx943-evk-sdwifi.dtso
> >
> > diff --git a/arch/arm64/boot/dts/freescale/Makefile
> > b/arch/arm64/boot/dts/freescale/Makefile
> > index 0a4dabac5de4..657e0915ca69 100644
> > --- a/arch/arm64/boot/dts/freescale/Makefile
> > +++ b/arch/arm64/boot/dts/freescale/Makefile
> > @@ -516,6 +516,9 @@ imx943-evk-pcie0-ep-dtbs += imx943-evk.dtb
> > imx-pcie0-ep.dtbo imx943-evk-pcie1-ep-dtbs += imx943-evk.dtb
> > imx-pcie1-ep.dtbo
> > dtb-$(CONFIG_ARCH_MXC) += imx943-evk-pcie0-ep.dtb
> > imx943-evk-pcie1-ep.dtb
> >
> > +imx943-evk-sdwifi-dtbs := imx943-evk.dtb imx943-evk-sdwifi.dtbo
> > +dtb-$(CONFIG_ARCH_MXC) += imx943-evk-sdwifi.dtb
> > +
> > dtb-$(CONFIG_ARCH_MXC) += imx95-15x15-ab2.dtb
> > dtb-$(CONFIG_ARCH_MXC) += imx95-15x15-evk.dtb
> > dtb-$(CONFIG_ARCH_MXC) += imx95-15x15-frdm.dtb diff --git
> > a/arch/arm64/boot/dts/freescale/imx943-evk-sdwifi.dtso
> > b/arch/arm64/boot/dts/freescale/imx943-evk-sdwifi.dtso
> > new file mode 100644
> > index 000000000000..59cc1c27b9b9
> > --- /dev/null
> > +++ b/arch/arm64/boot/dts/freescale/imx943-evk-sdwifi.dtso
> > @@ -0,0 +1,15 @@
> > +// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
> > +/*
> > + * Copyright 2026 NXP
> > + */
> > +
> > +/dts-v1/;
> > +/plugin/;
> > +
> > +&pcie0 {
> > + status = "disabled";
> > +};
> > +
> > +&usdhc3 {
> > + status = "okay";
> > +};
> > diff --git a/arch/arm64/boot/dts/freescale/imx943-evk.dts
> > b/arch/arm64/boot/dts/freescale/imx943-evk.dts
> > index fe4fc512d95d..1346a6a56883 100644
> > --- a/arch/arm64/boot/dts/freescale/imx943-evk.dts
> > +++ b/arch/arm64/boot/dts/freescale/imx943-evk.dts
> > @@ -1153,7 +1153,7 @@ &usdhc3 {
> > keep-power-in-suspend;
> > non-removable;
> > wakeup-source;
> > - status = "okay";
> > + status = "disabled";
> > };
> >
> > &wdog3 {
> >
> > base-commit: 5f9e9f83aee0fa8f2124c6f192505de2cdf7c5dc
> > --
> > 2.37.1
> >