[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20260123-gifted-wolverine-from-mars-47b9d4@quoll>
Date: Fri, 23 Jan 2026 10:02:34 +0100
From: Krzysztof Kozlowski <krzk@...nel.org>
To: Sherry Sun <sherry.sun@....com>
Cc: robh@...nel.org, krzk+dt@...nel.org, conor+dt@...nel.org,
shawnguo@...nel.org, frank.li@....com, s.hauer@...gutronix.de, festevam@...il.com,
daniel.baluta@....com, dario.binacchi@...rulasolutions.com,
alexander.stein@...tq-group.com, Markus.Niebel@...group.com, matthias.schiffer@...group.com,
y.moog@...tec.de, josua@...id-run.com, francesco.dolcini@...adex.com,
primoz.fiser@...ik.com, kernel@...gutronix.de, devicetree@...r.kernel.org,
imx@...ts.linux.dev, linux-arm-kernel@...ts.infradead.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH V2 2/2] arch: arm64: imx93-wevk: Add i.MX93 Wireless EVK
board support
On Fri, Jan 23, 2026 at 10:44:48AM +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.
>
> 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@....com>
> ---
> arch/arm64/boot/dts/freescale/Makefile | 1 +
> arch/arm64/boot/dts/freescale/imx93w-evk.dts | 73 ++++++++++++++++++++
> 2 files changed, 74 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
> 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..f09587dc74f6
> --- /dev/null
> +++ b/arch/arm64/boot/dts/freescale/imx93w-evk.dts
> @@ -0,0 +1,73 @@
> +// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
> +/*
> + * Copyright 2026 NXP
> + */
> +
> +#include "imx93-11x11-evk.dts"
> +
> +/ {
> + model = "NXP i.MX93W EVK board";
> + compatible = "fsl,imx93-wireless-evk", "fsl,imx93";
> +
> + /delete-node/ regulator-m2-pwr;
If you remove nodes then clearly you do not share a common design, thus
you should not include other DTSI... and definitely even more confusing
to include other DTS.
> +
> + sound-bt-sco {
> + status = "disabled";
> + };
> +
> + sound-micfil {
> + status = "disabled";
Kind of same here.
It's poor practice to include DTS inside DTS, some platforms disallow
this. Is it acceptable pattern in NXP/iMX?
> + };
> +};
> +
> +&pcal6524 {
> + /delete-node/ m2-pcm-level-shifter-hog;
Why do you remove so much?
> +};
> +
> +®_usdhc3_vmmc {
> + /delete-property/ vin-supply;
Do you understand how inclusion works? You claim here you have common
parts. Removing them means they are not common.
Best regards,
Krzysztof
Powered by blists - more mailing lists