From nobody Thu Apr 9 23:27:31 2026 Received: from mail-wm1-f53.google.com (mail-wm1-f53.google.com [209.85.128.53]) (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 1A9793AE703 for ; Thu, 5 Mar 2026 17:25:02 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.53 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772731505; cv=none; b=MF7+n1BAPTV2Mh7xth/lfymKqZiYbeoh3bx6frwvdwnsd2Y7tCKYAcBNdEzi4RX6rnPGnGkqmM4F1nJqLNkojF6XzpFgRVXQePZ52JqXCW8mIlvJbmsxHyXj/GEWTjLkfxU60kfwZCFNwBGh/KLHdoQwPwNVINisQlfS23W9HdA= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772731505; c=relaxed/simple; bh=dHovZ9LaAnZyCg2cc/B1vZvik1SyXQfKFZ/xvJZXa78=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=bCKLOQDv5A+jDnvvi++hCE+SOn4E0ZMkFZtZ5/nUUhzGdFIUrc9O8+VDxD0JKwg8CTEB3QGKVV1vNRsyNBkQWxQG7997HKdS+IGq7lWKOznlvB1GgM6+30se3tdrFoilLOX3ov7aaN9L0JGArv5uqqlFjMK/ATZopuzc8k5+1VU= 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=cMBqiO20; arc=none smtp.client-ip=209.85.128.53 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="cMBqiO20" Received: by mail-wm1-f53.google.com with SMTP id 5b1f17b1804b1-48379a42f76so71477575e9.0 for ; Thu, 05 Mar 2026 09:25:02 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1772731501; x=1773336301; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=M+gIWIMeZ1+FqNtpP8c8MmWwIEyqkbZzeQ4vhQsXykc=; b=cMBqiO20iLX+lP9NHSwzlC2olTh+IX4SNfJuRvP2LxRkQscJ5BGwDRFkQAX3Pa7gOE nevHaitr38RYCurDCTsNmKUqWwKvF5yRzh5PB8GMOdTb5TKSo/uTWslxpgAXUY7LyCK9 2cY6i7QUaSdgBg30nBL1gouOLppTJgtYDgX/G1G5MSOQtkmUjfGYnKcWs3Uj8tMzolYi 63/TP1GqjtyWzYguwTPlFVlvztBlB2tN9U1r/QDyen2GsIWA3UEFYuOg9a4k6hWt9sBH eqGQj+lRbDSJ+G4PJIM0vH3o5TLQrjMDikz6lcjERNQ65cb6Gax/kaAGOn73SaqPgIZ5 vY5Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1772731501; x=1773336301; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=M+gIWIMeZ1+FqNtpP8c8MmWwIEyqkbZzeQ4vhQsXykc=; b=HvJoP29Zo8mRi9lAp5yPwKOKL78RGkPqOYQ/bwcsoX4O+prWBpqJw7BoNdonI54Hqi q0xyT/RJ3MxLNOAu5t0Y1s/9OZYEunS8eXMaJggGfvdozRQUpNJNulVZe9u+AxatPhIC IuNfTtBjnXf2DRIB7UtX2w5aKlA5sg5TqMEsLhG64vbs4fQXRiW7mMV3fOcziXYg/SJb X7ZYEVW9mhixWIC+BPOTjGj/QiJA9Nuos2d8NyjSFaPRjw3acNjpYiqknJu/uJvCqmI5 C7ZF7uuoH66K7FLv6d1z4cpcVX9FDn4c6djk6YpIa/PbAz1hYHDYi23RQZqPAIhaWx/I vdWg== X-Forwarded-Encrypted: i=1; AJvYcCWbpC6FmOVNHTqLuWbSTegWYnH1MDDj/9IgHjGEXE5KjZuo8cypvJrsIjIaDIAj8tDar4qx8oLH/B3WCAU=@vger.kernel.org X-Gm-Message-State: AOJu0YwoiVA8ZhfU3Tw8fVuMwh8aUuvwSK2Dk2PnMLASts22v62T9GHu 48gdGyi/pMVLn4Ag5waGGnzLlcVUfB6J/XQ+DZb4c2bi/4LsyQ8DmVKu X-Gm-Gg: ATEYQzyMXajXhg56oxcagztEDXy3o4dZJudTRtE5RvBREOU9RBoPlqeiJDa1pOuIvcT ID8IWTMgatRKeSb7lwfd9+3ARPtUes5OWcXwgPhlBsZ7afIHPmN84qLBz3fOh2TOB84nDtGGvi/ bJOcJIMmlyueVIHvZZAurutDPZwT0WMB45uHAYFdHc+KJk6py9H3iyiGWrCIbC9midT4XpFkL5r uQJBmnqEG5/afbfaplpi6OajKqD0XPOnbUwOEy+4dx4UW2NzE9Mwlyy4IiApoiPirFaZGOEX/65 RiKRg8grLTcFd1PxpOC5rrA613T2OPo2jPZZ97Xv3qtoYEnho7gYaJWb+w/HtI7x1FEK3Y1hnx+ EYmT+Mq9pMsURtcdehP7bgfOCgS/ljmJa0gw+YzV7LddFlxe8atwW6vJ4j+wAAgXrXTcMCjgyyH YmEXROjPfGEkAfXVLnU4uLWuPEI5hNNBiKAE0LAzx98XM8fUHFmGFRE+xvg0BttbzqbciQOpeUK pcDNBKGLiSOF3NYLf7jSNN+ozY= X-Received: by 2002:a05:600c:3ba2:b0:47a:814c:ee95 with SMTP id 5b1f17b1804b1-4851984bc7dmr116197755e9.12.1772731501153; Thu, 05 Mar 2026 09:25:01 -0800 (PST) Received: from ernest.hoecke-nb (248.201.173.83.static.wline.lns.sme.cust.swisscom.ch. [83.173.201.248]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4851fafe4c9sm67153495e9.15.2026.03.05.09.25.00 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 05 Mar 2026 09:25:00 -0800 (PST) From: Ernest Van Hoecke Date: Thu, 05 Mar 2026 18:24:33 +0100 Subject: [PATCH 5/6] arm64: dts: freescale: imx95-verdin: Add Mallow carrier board Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260305-verdin-imx95-upstream-frank-li-base-v1-5-823fad02def9@toradex.com> References: <20260305-verdin-imx95-upstream-frank-li-base-v1-0-823fad02def9@toradex.com> In-Reply-To: <20260305-verdin-imx95-upstream-frank-li-base-v1-0-823fad02def9@toradex.com> To: Rob Herring , Krzysztof Kozlowski , Conor Dooley , Shawn Guo , Frank Li , Sascha Hauer , Pengutronix Kernel Team , Fabio Estevam Cc: Ernest Van Hoecke , Emanuele Ghidoli , Francesco Dolcini , devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, imx@lists.linux.dev, linux-arm-kernel@lists.infradead.org X-Mailer: b4 0.13.0 From: Ernest Van Hoecke Add support for the Verdin i.MX95 SoM mated with the Mallow carrier board. Link: https://www.toradex.com/computer-on-modules/verdin-arm-family/nxp-imx= 95 Link: https://www.toradex.com/products/carrier-board/mallow-carrier-board Signed-off-by: Ernest Van Hoecke --- arch/arm64/boot/dts/freescale/Makefile | 2 + .../boot/dts/freescale/imx95-verdin-mallow.dtsi | 223 +++++++++++++++++= ++++ .../dts/freescale/imx95-verdin-nonwifi-mallow.dts | 21 ++ .../dts/freescale/imx95-verdin-wifi-mallow.dts | 21 ++ 4 files changed, 267 insertions(+) diff --git a/arch/arm64/boot/dts/freescale/Makefile b/arch/arm64/boot/dts/f= reescale/Makefile index 34af11b1ef6b..e3c34f8f40cd 100644 --- a/arch/arm64/boot/dts/freescale/Makefile +++ b/arch/arm64/boot/dts/freescale/Makefile @@ -455,9 +455,11 @@ dtb-$(CONFIG_ARCH_MXC) +=3D imx95-tqma9596sa-mb-smarc-= 2.dtb dtb-$(CONFIG_ARCH_MXC) +=3D imx95-verdin-nonwifi-dahlia.dtb dtb-$(CONFIG_ARCH_MXC) +=3D imx95-verdin-nonwifi-dev.dtb dtb-$(CONFIG_ARCH_MXC) +=3D imx95-verdin-nonwifi-ivy.dtb +dtb-$(CONFIG_ARCH_MXC) +=3D imx95-verdin-nonwifi-mallow.dtb dtb-$(CONFIG_ARCH_MXC) +=3D imx95-verdin-wifi-dahlia.dtb dtb-$(CONFIG_ARCH_MXC) +=3D imx95-verdin-wifi-dev.dtb dtb-$(CONFIG_ARCH_MXC) +=3D imx95-verdin-wifi-ivy.dtb +dtb-$(CONFIG_ARCH_MXC) +=3D imx95-verdin-wifi-mallow.dtb =20 imx95-15x15-evk-pcie0-ep-dtbs =3D imx95-15x15-evk.dtb imx-pcie0-ep.dtbo dtb-$(CONFIG_ARCH_MXC) +=3D imx95-15x15-evk-pcie0-ep.dtb diff --git a/arch/arm64/boot/dts/freescale/imx95-verdin-mallow.dtsi b/arch/= arm64/boot/dts/freescale/imx95-verdin-mallow.dtsi new file mode 100644 index 000000000000..53506b7550f5 --- /dev/null +++ b/arch/arm64/boot/dts/freescale/imx95-verdin-mallow.dtsi @@ -0,0 +1,223 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT +/* + * Copyright (c) Toradex + * + * Common dtsi for Verdin iMX95 SoM on Mallow carrier board + * + * https://www.toradex.com/computer-on-modules/verdin-arm-family/nxp-imx95 + * https://www.toradex.com/products/carrier-board/mallow-carrier-board + */ + +#include + +/ { + aliases { + eeprom1 =3D &carrier_eeprom; + }; + + leds { + compatible =3D "gpio-leds"; + pinctrl-names =3D "default"; + pinctrl-0 =3D <&pinctrl_qspi1_clk_gpio>, + <&pinctrl_qspi1_cs_gpio>, + <&pinctrl_qspi1_io0_gpio>, + <&pinctrl_qspi1_io1_gpio>; + + /* SODIMM 52 - USER_LED_1_RED */ + led-0 { + color =3D ; + function =3D LED_FUNCTION_DEBUG; + function-enumerator =3D <1>; + gpios =3D <&gpio5 9 GPIO_ACTIVE_HIGH>; + }; + + /* SODIMM 54 - USER_LED_1_GREEN */ + led-1 { + color =3D ; + function =3D LED_FUNCTION_DEBUG; + function-enumerator =3D <1>; + gpios =3D <&gpio5 10 GPIO_ACTIVE_HIGH>; + }; + + /* SODIMM 56 - USER_LED_2_RED */ + led-2 { + color =3D ; + function =3D LED_FUNCTION_DEBUG; + function-enumerator =3D <2>; + gpios =3D <&gpio5 0 GPIO_ACTIVE_HIGH>; + }; + + /* SODIMM 58 - USER_LED_2_GREEN */ + led-3 { + color =3D ; + function =3D LED_FUNCTION_DEBUG; + function-enumerator =3D <2>; + gpios =3D <&gpio5 1 GPIO_ACTIVE_HIGH>; + }; + }; +}; + +/* Verdin ADC_1, ADC_2, ADC_3 and ADC_4 */ +&adc1 { + status =3D "okay"; +}; + +/* Verdin ETH_1 (On-module PHY) */ +&enetc_port0 { + status =3D "okay"; +}; + +/* Verdin CAN_1 */ +&flexcan1 { + status =3D "okay"; +}; + +/* Verdin CAN_2 */ +&flexcan2 { + status =3D "okay"; +}; + +&gpio1 { + pinctrl-names =3D "default"; + pinctrl-0 =3D <&pinctrl_ctrl_sleep_moci>; +}; + +&gpio2 { + pinctrl-names =3D "default"; + pinctrl-0 =3D <&pinctrl_gpio1>, + <&pinctrl_gpio2>, + <&pinctrl_gpio3>; +}; + +&gpio3 { + pinctrl-names =3D "default"; + pinctrl-0 =3D <&pinctrl_gpio6>; +}; + +&gpio4 { + pinctrl-names =3D "default"; + pinctrl-0 =3D <&pinctrl_gpio5>; +}; + +&gpio5 { + pinctrl-names =3D "default"; + pinctrl-0 =3D <&pinctrl_gpio4>; +}; + +/* Verdin I2C_3_HDMI */ +&i3c2 { + status =3D "okay"; +}; + +/* Verdin I2C_2_DSI */ +&lpi2c3 { + status =3D "okay"; +}; + +/* Verdin I2C_1 */ +&lpi2c4 { + status =3D "okay"; + + temperature-sensor@4f { + compatible =3D "ti,tmp1075"; + reg =3D <0x4f>; + }; + + carrier_eeprom: eeprom@57 { + compatible =3D "st,24c02", "atmel,24c02"; + reg =3D <0x57>; + pagesize =3D <16>; + }; +}; + +/* Verdin I2C_4_CSI */ +&lpi2c5 { + status =3D "okay"; +}; + +/* Verdin SPI_1 */ +&lpspi6 { + pinctrl-names =3D "default"; + pinctrl-0 =3D <&pinctrl_lpspi6>, + <&pinctrl_spi1_cs>, + <&pinctrl_qspi1_cs2_gpio>; + cs-gpios =3D <&gpio4 29 GPIO_ACTIVE_LOW>, + <&som_gpio_expander 13 GPIO_ACTIVE_LOW>, + <&gpio5 11 GPIO_ACTIVE_LOW>; + + tpm@2 { + compatible =3D "infineon,slb9670", "tcg,tpm_tis-spi"; + reg =3D <2>; + pinctrl-names =3D "default"; + pinctrl-0 =3D <&pinctrl_qspi1_dqs_gpio>; + interrupt-parent =3D <&gpio5>; + interrupts =3D <8 IRQ_TYPE_EDGE_FALLING>; + spi-max-frequency =3D <18500000>; + }; +}; + +/* Verdin UART_3, used as the Linux console */ +&lpuart1 { + status =3D "okay"; +}; + +/* Verdin UART_4 */ +&lpuart2 { + status =3D "okay"; +}; + +/* Verdin UART_1 */ +&lpuart7 { + status =3D "okay"; +}; + +/* Verdin UART_2 */ +&lpuart8 { + status =3D "okay"; +}; + +/* Verdin PCIE_1 */ +&pcie0 { + status =3D "okay"; +}; + +/* Verdin PWM_1 */ +&tpm4 { + status =3D "okay"; +}; + +/* Verdin PWM_2 */ +&tpm5 { + status =3D "okay"; +}; + +/* Verdin PWM_3_DSI */ +&tpm6 { + status =3D "okay"; +}; + +/* Verdin USB_1 */ +&usb2 { + status =3D "okay"; +}; + +/* Verdin USB_2 */ +&usb3 { + fsl,permanently-attached; + + status =3D "okay"; +}; + +&usb3_phy { + status =3D "okay"; +}; + +/* Verdin SD_1 */ +&usdhc2 { + status =3D "okay"; +}; + +/* Verdin CTRL_WAKE1_MICO# */ +&verdin_gpio_keys { + status =3D "okay"; +}; diff --git a/arch/arm64/boot/dts/freescale/imx95-verdin-nonwifi-mallow.dts = b/arch/arm64/boot/dts/freescale/imx95-verdin-nonwifi-mallow.dts new file mode 100644 index 000000000000..5a9c0e4a79c9 --- /dev/null +++ b/arch/arm64/boot/dts/freescale/imx95-verdin-nonwifi-mallow.dts @@ -0,0 +1,21 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT +/* + * Copyright (c) Toradex + * + * https://www.toradex.com/computer-on-modules/verdin-arm-family/nxp-imx95 + * https://www.toradex.com/products/carrier-board/mallow-carrier-board + */ + +/dts-v1/; + +#include "imx95-verdin.dtsi" +#include "imx95-verdin-nonwifi.dtsi" +#include "imx95-verdin-mallow.dtsi" + +/ { + model =3D "Toradex Verdin iMX95 on Mallow Board"; + compatible =3D "toradex,verdin-imx95-nonwifi-mallow", + "toradex,verdin-imx95-nonwifi", + "toradex,verdin-imx95", + "fsl,imx95"; +}; diff --git a/arch/arm64/boot/dts/freescale/imx95-verdin-wifi-mallow.dts b/a= rch/arm64/boot/dts/freescale/imx95-verdin-wifi-mallow.dts new file mode 100644 index 000000000000..eaa67a39be1c --- /dev/null +++ b/arch/arm64/boot/dts/freescale/imx95-verdin-wifi-mallow.dts @@ -0,0 +1,21 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT +/* + * Copyright (c) Toradex + * + * https://www.toradex.com/computer-on-modules/verdin-arm-family/nxp-imx95 + * https://www.toradex.com/products/carrier-board/mallow-carrier-board + */ + +/dts-v1/; + +#include "imx95-verdin.dtsi" +#include "imx95-verdin-wifi.dtsi" +#include "imx95-verdin-mallow.dtsi" + +/ { + model =3D "Toradex Verdin iMX95 WB on Mallow Board"; + compatible =3D "toradex,verdin-imx95-wifi-mallow", + "toradex,verdin-imx95-wifi", + "toradex,verdin-imx95", + "fsl,imx95"; +}; --=20 2.43.0