From nobody Fri Apr 3 07:43:14 2026 Received: from mail-wm1-f47.google.com (mail-wm1-f47.google.com [209.85.128.47]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 12BED3F54BB for ; Thu, 19 Mar 2026 18:41:57 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.47 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773945720; cv=none; b=g1Vu3/Oc3my8e6+SqlqS1CYRV0fKlaoAfzx3HbxO0ajLADwE2awTcSMdlp19ZTBL34i62G0+rOH9igzQy6LW/S3V0irPl+mSrnk7UNFln2eWDfRpd3C67yDJSvvUKNgnQ1DHFhkP/bCvGYEhWQYsy/ui5c3z4XoAggmm4Ue1B5w= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773945720; c=relaxed/simple; bh=j3OTduS6qdtjozm1GQe+8s0DcoESfABCWaPJ2XsNvtY=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=CIUThhG1M/QuCPh24P7E/J1uYRgLeNgrUqewqAFjJ5z2kyk6kR6/ULUUMmsJfIU2GaUcwnxPrQQZWobtOJXGVemw1cCdMiVurt9r73G5xE9i/PjUD1qgEzn+158j/0HIImkP80GSbPKb4t82Y3xNHl+S2fJ5mDQ7lVzgowirv9Q= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=StMokU0Q; arc=none smtp.client-ip=209.85.128.47 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="StMokU0Q" Received: by mail-wm1-f47.google.com with SMTP id 5b1f17b1804b1-4852a9c6309so13042105e9.0 for ; Thu, 19 Mar 2026 11:41:57 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1773945716; x=1774550516; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=OUP3CmmT0cKyjmjrALm9nCkOSIQbk/SYoJc7MZ/IyOw=; b=StMokU0QvND6rX6WAh4zcC3/2IOJ4vSrS84p2j3nYm2enxG7/j8xPme1yxXOiliZ2W 28vIYJn45KiVKpyP5ku8R5X7G1diljMnHfBVFAwEhxJM3LHWOhDIYQ61mx4r2KErlXRy /fzRz5ZA3b17GdruY9zJJY8b2Y/HDify+Lbi/Ezdj8TkquoeI7V1rbQR5LZDNw3K8Rwz TqrX0BFN4zzDey0bjB+c4Sctnj3J4wTOqWXO0UqfsUVLKhETenEiphGhAr/5zpV1y5NI jiW/5A4ER32whRWeASH8MHkc2BXveUdTWF2gBOlsIRXLOafOH0NAyzVTZRfxva3RRa3+ LGPA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1773945716; x=1774550516; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=OUP3CmmT0cKyjmjrALm9nCkOSIQbk/SYoJc7MZ/IyOw=; b=ZT5hanplPORZi2rMSGyLl7tzVs/wEdDwrZVwB/x7UOIhjiSj+WLOFjZOBRUAHddi2p g9b5lHZZCjhMDmwHxKOhpWo7DQvT0awNOQsaWf6VMFHlVFEH78y+dR3kpHQaTEe3DMvY QuyOMa6Qf6FYOYlUKLAZrNtbt8bc0HnNlNVPulRryhFJ7VRWnILR08bIEpmBgLi8LZ9X UKLSy7VJCaiuwyqRS3X+b817tk6m8C3yku8qBhKGdupkXkK46aTGFqLKMXXD1Cw+NgTv PfXlM+k4mykCtFScAN7dWQBakPhsrFkWmxtg+1V8597XWUA+c8uE4GZhq94Rb0VM+F0A eFQw== X-Gm-Message-State: AOJu0YwzB7c8iDCNph9AnjRmaI9Xm1Rm0V2bnQBxkpRUeGfcabvZPHLl djsStDlF/7g/7ZMQGZxCzvI8CJi0dFzjN3HSfRSEvQMYenmNEQjHZB/3bGk8oQ== X-Gm-Gg: ATEYQzyeik9El0IPM6h0EV5f1cePurGXja443cz4ImAlw5wqSoPHhgtLUsikubyjO12 OWEm+z+Eleml8I+3XbaEU7jaGC+iLAUnJAYXsbsAScXC8ibqx6y9S38NAqFFw0oupIEyqpqMph7 T7K3wf+MeV6Pm7FJ0OmzPgdhIPCT/UmyhFFDwfKOupG0PNw/x6IRzng00ralL5szOoQVahwgC21 xTp97z9Gyk2jwpvNkn8H8wRLg7G7HW5NCofEQCZVXcPdu4FEgRvn7qzfJYuHlOsx8hN2nBisVTK AVb3a/yvNkJNPHMUffE5m3bKvrACIAE6k24dppaXncVqbVUFSOBPj2RN5jYT2T9ZhAfP6EAnY+3 D/gx4YnRwnFFOXQNlp/CaKToYj/dury5VPqKONA+X79WBzmcevj6tpk7N6aF9KbwByuBif/n2Jk 4gce4j79CQCt6+1Ux4RyMcNldiwDKXNm0x4YwNz4LXAFFi4qUmq22tfraUshA3mgQB/o2qaVk6W 2lLm/pw0PryYj4nqTYsN7id5r2JtJufJv52EMU= X-Received: by 2002:a05:600c:8b0a:b0:485:4136:99a8 with SMTP id 5b1f17b1804b1-486fee0fb9emr2226175e9.22.1773945716215; Thu, 19 Mar 2026 11:41:56 -0700 (PDT) Received: from Lord-Beerus.station (net-188-152-100-94.cust.dsl.teletu.it. [188.152.100.94]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-486f8b1fe65sm77289195e9.5.2026.03.19.11.41.55 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 19 Mar 2026 11:41:55 -0700 (PDT) From: Stefano Radaelli X-Google-Original-From: Stefano Radaelli To: linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, imx@lists.linux.dev, linux-arm-kernel@lists.infradead.org Cc: pierluigi.p@variscite.com, Stefano Radaelli , Frank Li , Sascha Hauer , Pengutronix Kernel Team , Fabio Estevam , Rob Herring , Krzysztof Kozlowski , Conor Dooley Subject: [PATCH v4 06/11] arm64: dts: freescale: imx8mm-var-som: Rework WiFi/BT and add legacy dts Date: Thu, 19 Mar 2026 19:40:26 +0100 Message-ID: <9dfc7925f0acf5a655793eada5b1302b99d1407b.1773944896.git.stefano.r@variscite.com> X-Mailer: git-send-email 2.47.3 In-Reply-To: References: Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Stefano Radaelli The VAR-SOM-MX8MM currently integrates the NXP IW61x wireless module, providing WiFi over SDIO and Bluetooth over UART. Move the wireless module configuration out of the base imx8mm-var-som.dtsi and provide dedicated variant includes. The IW61x configuration is moved to imx8mm-var-som-wifi-bt-iw61x.dtsi and used by the Symphony evaluation board device tree. A separate imx8mm-var-som-wifi-brcm-legacy.dtsi include is added to keep the configuration for the legacy Broadcom SDIO WiFi module used on earlier SOM revisions. To preserve compatibility with older SOM revisions, add a separate imx8mm-var-som-symphony-legacy.dtb, which disables the IW61x setup and applies the Broadcom-specific configuration. The Broadcom-based SOM revision is no longer in production, but support is kept for existing users. Signed-off-by: Stefano Radaelli --- v3->v4: - Add symphony legacy dtb to use old brcm wifi module v2->v3: -=20 v1->v2: - Added Wifi/BT dtsi variants for both iw61x and brcm legacy modules arch/arm64/boot/dts/freescale/Makefile | 1 + .../imx8mm-var-som-symphony-legacy.dts | 19 ++++++++ .../dts/freescale/imx8mm-var-som-symphony.dts | 1 + .../imx8mm-var-som-wifi-brcm-legacy.dtsi | 12 +++++ .../imx8mm-var-som-wifi-bt-iw61x.dtsi | 45 +++++++++++++++++++ .../boot/dts/freescale/imx8mm-var-som.dtsi | 6 --- 6 files changed, 78 insertions(+), 6 deletions(-) create mode 100644 arch/arm64/boot/dts/freescale/imx8mm-var-som-symphony-l= egacy.dts create mode 100644 arch/arm64/boot/dts/freescale/imx8mm-var-som-wifi-brcm-= legacy.dtsi create mode 100644 arch/arm64/boot/dts/freescale/imx8mm-var-som-wifi-bt-iw= 61x.dtsi diff --git a/arch/arm64/boot/dts/freescale/Makefile b/arch/arm64/boot/dts/f= reescale/Makefile index bae24b53bce6..420b434bcd3a 100644 --- a/arch/arm64/boot/dts/freescale/Makefile +++ b/arch/arm64/boot/dts/freescale/Makefile @@ -161,6 +161,7 @@ dtb-$(CONFIG_ARCH_MXC) +=3D imx8mm-tqma8mqml-mba8mx.dtb dtb-$(CONFIG_ARCH_MXC) +=3D imx8mm-tx8m-1610-moduline-iv-306-d.dtb dtb-$(CONFIG_ARCH_MXC) +=3D imx8mm-tx8m-1610-moduline-mini-111.dtb dtb-$(CONFIG_ARCH_MXC) +=3D imx8mm-var-som-symphony.dtb +dtb-$(CONFIG_ARCH_MXC) +=3D imx8mm-var-som-symphony-legacy.dtb dtb-$(CONFIG_ARCH_MXC) +=3D imx8mm-venice-gw71xx-0x.dtb dtb-$(CONFIG_ARCH_MXC) +=3D imx8mm-venice-gw72xx-0x.dtb dtb-$(CONFIG_ARCH_MXC) +=3D imx8mm-venice-gw73xx-0x.dtb diff --git a/arch/arm64/boot/dts/freescale/imx8mm-var-som-symphony-legacy.d= ts b/arch/arm64/boot/dts/freescale/imx8mm-var-som-symphony-legacy.dts new file mode 100644 index 000000000000..faa707402de9 --- /dev/null +++ b/arch/arm64/boot/dts/freescale/imx8mm-var-som-symphony-legacy.dts @@ -0,0 +1,19 @@ +// SPDX-License-Identifier: (GPL-2.0+ OR MIT) +/* + * Copyright 2026 Variscite Ltd. + */ + +#include "imx8mm-var-som-symphony.dts" +#include "imx8mm-var-som-wifi-brcm-legacy.dtsi" + +&bluetooth_iw61x { + status =3D "disabled"; +}; + +&iw61x_pwrseq { + status =3D "disabled"; +}; + +&usdhc1 { + /delete-property/ mmc-pwrseq; +}; diff --git a/arch/arm64/boot/dts/freescale/imx8mm-var-som-symphony.dts b/ar= ch/arm64/boot/dts/freescale/imx8mm-var-som-symphony.dts index 9f4e004f0a37..2b608470da8e 100644 --- a/arch/arm64/boot/dts/freescale/imx8mm-var-som-symphony.dts +++ b/arch/arm64/boot/dts/freescale/imx8mm-var-som-symphony.dts @@ -7,6 +7,7 @@ =20 #include #include "imx8mm-var-som.dtsi" +#include "imx8mm-var-som-wifi-bt-iw61x.dtsi" =20 / { model =3D "Variscite VAR-SOM-MX8MM Symphony evaluation board"; diff --git a/arch/arm64/boot/dts/freescale/imx8mm-var-som-wifi-brcm-legacy.= dtsi b/arch/arm64/boot/dts/freescale/imx8mm-var-som-wifi-brcm-legacy.dtsi new file mode 100644 index 000000000000..f44a846ea6f9 --- /dev/null +++ b/arch/arm64/boot/dts/freescale/imx8mm-var-som-wifi-brcm-legacy.dtsi @@ -0,0 +1,12 @@ +// SPDX-License-Identifier: (GPL-2.0+ OR MIT) +/* + * Copyright 2026 Variscite Ltd. + */ + +/* WIFI */ +&usdhc1 { + brcmf: wifi@1 { + reg =3D <1>; + compatible =3D "brcm,bcm4329-fmac"; + }; +}; diff --git a/arch/arm64/boot/dts/freescale/imx8mm-var-som-wifi-bt-iw61x.dts= i b/arch/arm64/boot/dts/freescale/imx8mm-var-som-wifi-bt-iw61x.dtsi new file mode 100644 index 000000000000..15990d141d2a --- /dev/null +++ b/arch/arm64/boot/dts/freescale/imx8mm-var-som-wifi-bt-iw61x.dtsi @@ -0,0 +1,45 @@ +// SPDX-License-Identifier: (GPL-2.0+ OR MIT) +/* + * Copyright 2026 Variscite Ltd. + */ + +/ { + iw61x_pwrseq: wifi-pwrseq { + compatible =3D "mmc-pwrseq-simple"; + post-power-on-delay-ms =3D <100>; + power-off-delay-us =3D <10000>; + reset-gpios =3D <&gpio2 10 GPIO_ACTIVE_LOW>, /* WIFI_RESET */ + <&gpio2 20 GPIO_ACTIVE_LOW>; /* WIFI_PWR_EN */ + }; +}; + +&uart2 { + pinctrl-0 =3D <&pinctrl_uart2>, <&pinctrl_bt>; + + bluetooth_iw61x: bluetooth { + compatible =3D "nxp,88w8987-bt"; + }; +}; + +/* WIFI */ +&usdhc1 { + pinctrl-0 =3D <&pinctrl_usdhc1>, <&pinctrl_wifi>; + pinctrl-1 =3D <&pinctrl_usdhc1_100mhz>, <&pinctrl_wifi>; + pinctrl-2 =3D <&pinctrl_usdhc1_200mhz>, <&pinctrl_wifi>; + mmc-pwrseq =3D <&iw61x_pwrseq>; +}; + +&iomuxc { + pinctrl_bt: bluetoothgrp { + fsl,pins =3D < + MX8MM_IOMUXC_SD1_DATA4_GPIO2_IO6 0xc1 + >; + }; + + pinctrl_wifi: wifigrp { + fsl,pins =3D < + MX8MM_IOMUXC_SD2_WP_GPIO2_IO20 0x140 + MX8MM_IOMUXC_SD1_RESET_B_GPIO2_IO10 0xc1 + >; + }; +}; diff --git a/arch/arm64/boot/dts/freescale/imx8mm-var-som.dtsi b/arch/arm64= /boot/dts/freescale/imx8mm-var-som.dtsi index 21a4d87c0e26..c37badc4cf27 100644 --- a/arch/arm64/boot/dts/freescale/imx8mm-var-som.dtsi +++ b/arch/arm64/boot/dts/freescale/imx8mm-var-som.dtsi @@ -390,7 +390,6 @@ &usbotg2 { status =3D "okay"; }; =20 -/* WIFI */ &usdhc1 { #address-cells =3D <1>; #size-cells =3D <0>; @@ -402,11 +401,6 @@ &usdhc1 { non-removable; keep-power-in-suspend; status =3D "okay"; - - brcmf: wifi@1 { - reg =3D <1>; - compatible =3D "brcm,bcm4329-fmac"; - }; }; =20 /* SD */ --=20 2.47.3