[PATCH V4 4/4] arm64: dts: imx93: Add i.MX93 Wireless EVK board support

Sherry Sun sherry.sun at nxp.com
Mon Feb 2 18:25:33 PST 2026


> On Thu, Jan 29, 2026 at 04:42:49PM +0800, Sherry Sun wrote:
> > i.MX93 Wireless SiP is created by integrating i.MX93 and IW610 WLCSP
> > (Wi-Fi + BLE + 802.15.4). And i.MX93 Wireless EVK board with the
> > i.MX93 Wireless SiP basically reuse the i.MX93 11x11 EVK board, with
> > some minor functional and pin connection differences. Reuse the new
> > imx93-evk-common.dtsi and add the board-specific changes here.
> >
> > Here are the detailed differences between i.MX93 Wireless EVK and
> > i.MX93
> > 11x11 EVK board.
> >
> > Function differences:
> > Function	i.MX93W EVK			i.MX93 EVK
> > WIFI/BT		IW610 in i.MX93W		IW612 M.2 module
> > MQS		N				Y
> > PDM MIC		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: Sherry Sun <sherry.sun at nxp.com>
> > ---
> >  arch/arm64/boot/dts/freescale/Makefile       |  1 +
> >  arch/arm64/boot/dts/freescale/imx93w-evk.dts | 23
> > ++++++++++++++++++++
> >  2 files changed, 24 insertions(+)
> >  create mode 100644 arch/arm64/boot/dts/freescale/imx93w-evk.dts
> >
> > diff --git a/arch/arm64/boot/dts/freescale/Makefile
> > b/arch/arm64/boot/dts/freescale/Makefile
> > index 700bab4d3e60..d0ea746c59b8 100644
> > --- a/arch/arm64/boot/dts/freescale/Makefile
> > +++ b/arch/arm64/boot/dts/freescale/Makefile
> > @@ -418,6 +418,7 @@ dtb-$(CONFIG_ARCH_MXC) += imx93-9x9-qsb-
> i3c.dtb
> >  dtb-$(CONFIG_ARCH_MXC) += imx93-11x11-evk.dtb
> >  dtb-$(CONFIG_ARCH_MXC) += imx93-11x11-frdm.dtb
> >  dtb-$(CONFIG_ARCH_MXC) += imx93-14x14-evk.dtb
> > +dtb-$(CONFIG_ARCH_MXC) += imx93w-evk.dtb
> 
> keep alphabet order
> 
Sure, will do in V5.

> >  dtb-$(CONFIG_ARCH_MXC) += imx93-kontron-bl-osm-s.dtb
> >  dtb-$(CONFIG_ARCH_MXC) += imx93-phyboard-nash.dtb
> >  dtb-$(CONFIG_ARCH_MXC) += imx93-phyboard-segin.dtb diff --git
> > a/arch/arm64/boot/dts/freescale/imx93w-evk.dts
> > b/arch/arm64/boot/dts/freescale/imx93w-evk.dts
> > new file mode 100644
> > index 000000000000..9832b82b6ce2
> > --- /dev/null
> > +++ b/arch/arm64/boot/dts/freescale/imx93w-evk.dts
> > @@ -0,0 +1,23 @@
> > +// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
> > +/*
> > + * Copyright 2026 NXP
> > + */
> > +
> > +/dts-v1/;
> > +
> > +#include "imx93w.dtsi"
> > +#include "imx93-evk-common.dtsi"
> > +
> > +/ {
> > +	model = "NXP i.MX93W EVK board";
> > +	compatible = "fsl,imx93-wireless-evk", "fsl,imx93"; };
> 
> Put &lpi3c node here, which use below pin mux.

It's difficult to move the full lpi2c3 node into imx93w-evk.dts and
imx93-11x11-evk.dts separately because lpi2c3 contains several
child nodes (adp5585_isp, ptn5110, ptn5110_2, pcf2131).

All of these child nodes share exactly the same DTS configuration
on both boards. The only difference between the two EVKs is the
pinctrl_lpi2c3. Given that the whole lpi2c3 hierarchy (including child
nodes) is identical across these boards, keeping the common lpi2c3
configuration in imx93-evk-common.dtsi makes the structure clearer
and avoids duplication.

In this case, i.MX93 Wireless EVK board DTS only needs to override
pinctrl_lpi2c3, which keeps the DTS layout clean.

Best Regards
Sherry

> 
> Frank
> 
> > +
> > +&iomuxc {
> > +	pinctrl_lpi2c3: lpi2c3grp {
> > +		fsl,pins = <
> > +			MX93_PAD_GPIO_IO00__LPI2C3_SDA
> 	0x40000b9e
> > +			MX93_PAD_GPIO_IO01__LPI2C3_SCL
> 	0x40000b9e
> > +		>;
> > +	};
> > +};
> > --
> > 2.37.1
> >



More information about the linux-arm-kernel mailing list