From nobody Sun Dec 14 11:16:14 2025 Received: from mail-ej1-f44.google.com (mail-ej1-f44.google.com [209.85.218.44]) (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 A337A3590BE for ; Wed, 29 Oct 2025 19:29:11 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.44 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1761766153; cv=none; b=uW7RHL2vmUiYHaQzHVzDOxoxj+E81Ohqh7qW37Tlg0wdfQF87YAFiDNvlS8GrzP3S5+XPmnDZEJcNLSpNk+L0q5gNtntahSJwqJqSrsWl14T0QgIMFHxNQb1mOIde+3hNsLB0toWoIkIk3PI0EY0oNEodudi73xHpFbGm8HBoUU= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1761766153; c=relaxed/simple; bh=whFzpc1JabPaAo10HjUjIy4z4qlcYRtwGhxtqr+pOMQ=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=pUv1dddvUQrmJoxbHkmsTTWRZhe2+fie2Kjr/ZTVkWhV0j64dk/VACeqggbnsbKuKSmiFUx0HkvCXDgMucxLHTynSW4gkFknOm5seVf7XNajMhXP76RJZy8Y1UXKFvRu69e9UJOL+/UwZJcSkpQ6WtyIznhH7IBdGl7uLcm6wfE= 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=YwZZ1vOq; arc=none smtp.client-ip=209.85.218.44 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="YwZZ1vOq" Received: by mail-ej1-f44.google.com with SMTP id a640c23a62f3a-b6d3340dc2aso69814766b.0 for ; Wed, 29 Oct 2025 12:29:11 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1761766150; x=1762370950; 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=DAZL73WPFIHN2VTWaQ6XP1b9wcDV8dTDSuc2UCDs70I=; b=YwZZ1vOqApT6b8sfoLllElLcA1f7DEq02lmgevYe5HYXa54rzAkP9MsIuhR4CkuSEh QsPNy8gzGCkEhus7xyCCtoDyyFTq9/1blogbOCzOtzIbf1QR0GZ2/JYt2wPT+hYrwFg1 Kf8qZekVjC12yKt9osbfoOzr627uf2gzWlf8709xU2Kwr7Uh3EgGjCKmpTzGIDM945a0 mdhL8wT53h9WYq0urq1jhIROTKKY07bD7TCcRBZRe4xyx+csUMfqBR5N+RsB2MRFkQXY Ew4HpYvzuGW+OJUrEhMvuc5Dm2byWF/Ll5Pfti26eVh9R0gFqOUGBb+WRsQ5CO8BCDfe p38A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1761766150; x=1762370950; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=DAZL73WPFIHN2VTWaQ6XP1b9wcDV8dTDSuc2UCDs70I=; b=HrUX2tuF8gwYuuoWm6mZQz9R4FkBZT0+2HtC2f9tlosQ6bU+SJBiAYtQdo0w7Y1pHX k24b/kImzdFGw4113LdF0YQ2U/lvfjo4ywFlUIUqCqsMhv5Odp2v2qimmxl03NqiyK0Z 3OaeyHgEvp9x3FLg0enUWmm0gD2VP++qkby14wuujzXEkU/CPM4iPX1E/epKoN5y8bVn iQED4IB6WJS9LUNYAY9eQdNL0PD4XXJVBN6u0hOVIAM50uqxkxKAhm4u6zUEwOB1wQXF Br5ZCy0D6CFQLjRhRQe1bjbs3zMIZF67MFJ8nFcB8hltDSys8yJIc/hquvDrtFK7Fh2N hG9w== X-Forwarded-Encrypted: i=1; AJvYcCW+JzNJzL3Hecsm+inotecZT+kRw63xQMnIsZjaE1j0ycLeTLiMZTpA5EXAQosgU8Yg3twLADkpGoG4IQY=@vger.kernel.org X-Gm-Message-State: AOJu0YwT1F0gP0jY3RmT1gmC1wbU27n7MJDASvQxyPByqAl/yEQeYZAr xaLWCT4CIN8WoamNwzGKbjxZJJckVQpsDaIEEQs4DcClUHocQiJoo1M2k2h7REzW X-Gm-Gg: ASbGnctqrymrbniF9p9irE3mdnpo1W7ATh3QviSylRqMfiI1k952NjOGz/5yPsEzGhw ow0ZNNModBS2/4sY3ulSd19h8BQL6gj6g9cx133NRvPwqb77es1rrxZRboQG6Otnlot9yiaMkDF GiXnBi87S7QGqIS16YHVRqZ8yitZDC3cZwZtVQJx37uu6TOVpGeMRi/ByJuVO9u1MOXkR1XiEYe B+R4O/k6S0yBDsXE4G5eI1wMQlVuHaCtassZbWPNd4yfG64KEmGJ2d7yD25n1F8qNFweqPwEoXW CYXe76dNx/OhyUmLCAgPCNNvaT7WHTcDUWu9w85MGe/IfSjeSvFMPFQCdZiDRaBE8/+3Uob4RCi QmSn72zj6Kzl9jAEZynomfHeIqLxVhgJ87OdWLbNGP2gKB4J4YCRX1nnOXFd196WArskpdZuCOa FKoo8nhHFXaUrM+DS5AYKFVj4cyjiYvHgcmttMChTuz/XjSY8AqeGq1MVV4Yfcdg== X-Google-Smtp-Source: AGHT+IFoA8vHjH7L7A7O5BYxTWm3kdq9AbZkEIotO1WtkkfV9Jwy/FnFo8J2wfIiFOBVGEd666tsSA== X-Received: by 2002:a17:906:7947:b0:b6d:545e:44f6 with SMTP id a640c23a62f3a-b7051f630abmr98050966b.12.1761766149655; Wed, 29 Oct 2025 12:29:09 -0700 (PDT) Received: from Lord-Beerus.station (net-93-146-98-100.cust.vodafonedsl.it. [93.146.98.100]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-b6d8548eda6sm1496673266b.75.2025.10.29.12.29.08 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 29 Oct 2025 12:29:09 -0700 (PDT) From: Stefano Radaelli To: devicetree@vger.kernel.org, linux-kernel@vger.kernel.org Cc: Stefano Radaelli , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Shawn Guo , Sascha Hauer , Pengutronix Kernel Team , Fabio Estevam , imx@lists.linux.dev, linux-arm-kernel@lists.infradead.org Subject: [PATCH v1 1/4] arm64: dts: freescale: imx93-var-som: Add WiFi and Bluetooth support Date: Wed, 29 Oct 2025 20:28:46 +0100 Message-ID: <20251029192852.656806-2-stefano.radaelli21@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20251029192852.656806-1-stefano.radaelli21@gmail.com> References: <20251029192852.656806-1-stefano.radaelli21@gmail.com> 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" Add device tree nodes for the WiFi and Bluetooth module mounted on the VAR-SOM-MX93. The module can be based on either the NXP IW612 or IW611 chipset, depending on the configuration chosen by the customer. Regardless of the chipset used, WiFi communicates over SDIO and Bluetooth over UART. Signed-off-by: Stefano Radaelli --- .../boot/dts/freescale/imx93-var-som.dtsi | 94 ++++++++++++++++++- 1 file changed, 93 insertions(+), 1 deletion(-) diff --git a/arch/arm64/boot/dts/freescale/imx93-var-som.dtsi b/arch/arm64/= boot/dts/freescale/imx93-var-som.dtsi index a5f09487d803..97198007b545 100644 --- a/arch/arm64/boot/dts/freescale/imx93-var-som.dtsi +++ b/arch/arm64/boot/dts/freescale/imx93-var-som.dtsi @@ -12,7 +12,7 @@ /{ model =3D "Variscite VAR-SOM-MX93 module"; compatible =3D "variscite,var-som-mx93", "fsl,imx93"; =20 - mmc_pwrseq: mmc-pwrseq { + usdhc3_pwrseq: mmc-pwrseq { compatible =3D "mmc-pwrseq-simple"; post-power-on-delay-ms =3D <100>; power-off-delay-us =3D <10000>; @@ -70,6 +70,18 @@ led@1 { }; }; =20 +/* BT module */ +&lpuart5 { + pinctrl-names =3D "default"; + pinctrl-0 =3D <&pinctrl_lpuart5>, <&pinctrl_bluetooth>; + uart-has-rtscts; + status =3D "okay"; + + bluetooth { + compatible =3D "nxp,88w8987-bt"; + }; +}; + /* eMMC */ &usdhc1 { pinctrl-names =3D "default", "state_100mhz", "state_200mhz"; @@ -81,7 +93,27 @@ &usdhc1 { status =3D "okay"; }; =20 +/* WiFi */ +&usdhc3 { + pinctrl-names =3D "default", "state_100mhz", "state_200mhz", "sleep"; + pinctrl-0 =3D <&pinctrl_usdhc3>, <&pinctrl_usdhc3_wlan>; + pinctrl-1 =3D <&pinctrl_usdhc3_100mhz>, <&pinctrl_usdhc3_wlan>; + pinctrl-2 =3D <&pinctrl_usdhc3_200mhz>, <&pinctrl_usdhc3_wlan>; + pinctrl-3 =3D <&pinctrl_usdhc3_sleep>, <&pinctrl_usdhc3_wlan>; + bus-width =3D <4>; + mmc-pwrseq =3D <&usdhc3_pwrseq>; + non-removable; + wakeup-source; + status =3D "okay"; +}; + &iomuxc { + pinctrl_bluetooth: bluetoothgrp { + fsl,pins =3D < + MX93_PAD_ENET2_MDIO__GPIO4_IO15 0x51e + >; + }; + pinctrl_eqos: eqosgrp { fsl,pins =3D < MX93_PAD_ENET1_MDC__ENET_QOS_MDC 0x57e @@ -108,6 +140,15 @@ MX93_PAD_UART2_TXD__GPIO1_IO07 0x51e >; }; =20 + pinctrl_lpuart5: lpuart5grp { + fsl,pins =3D < + MX93_PAD_DAP_TDO_TRACESWO__LPUART5_TX 0x31e + MX93_PAD_DAP_TDI__LPUART5_RX 0x31e + MX93_PAD_DAP_TMS_SWDIO__LPUART5_RTS_B 0x31e + MX93_PAD_DAP_TCLK_SWCLK__LPUART5_CTS_B 0x31e + >; + }; + pinctrl_usdhc1: usdhc1grp { fsl,pins =3D < MX93_PAD_SD1_CLK__USDHC1_CLK 0x15fe @@ -123,4 +164,55 @@ MX93_PAD_SD1_DATA7__USDHC1_DATA7 0x13fe MX93_PAD_SD1_STROBE__USDHC1_STROBE 0x15fe >; }; + + pinctrl_usdhc3: usdhc3grp { + fsl,pins =3D < + MX93_PAD_SD3_CLK__USDHC3_CLK 0x1582 /* SDIO_B_CLK */ + MX93_PAD_SD3_CMD__USDHC3_CMD 0x40001382 /* SDIO_B_CM= D */ + MX93_PAD_SD3_DATA0__USDHC3_DATA0 0x40001382 /* SDIO_B_D0= */ + MX93_PAD_SD3_DATA1__USDHC3_DATA1 0x40001382 /* SDIO_B_D1= */ + MX93_PAD_SD3_DATA2__USDHC3_DATA2 0x40001382 /* SDIO_B_D2= */ + MX93_PAD_SD3_DATA3__USDHC3_DATA3 0x40001382 /* SDIO_B_D3= */ + >; + }; + + pinctrl_usdhc3_100mhz: usdhc3-100mhzgrp { + fsl,pins =3D < + MX93_PAD_SD3_CLK__USDHC3_CLK 0x158e /* SDIO_B_CLK */ + MX93_PAD_SD3_CMD__USDHC3_CMD 0x4000138e /* SDIO_B_CM= D */ + MX93_PAD_SD3_DATA0__USDHC3_DATA0 0x4000138e /* SDIO_B_D0= */ + MX93_PAD_SD3_DATA1__USDHC3_DATA1 0x4000138e /* SDIO_B_D1= */ + MX93_PAD_SD3_DATA2__USDHC3_DATA2 0x4000138e /* SDIO_B_D2= */ + MX93_PAD_SD3_DATA3__USDHC3_DATA3 0x4000138e /* SDIO_B_D3= */ + >; + }; + + pinctrl_usdhc3_200mhz: usdhc3-200mhzgrp { + fsl,pins =3D < + MX93_PAD_SD3_CLK__USDHC3_CLK 0x15fe /* SDIO_B_CLK */ + MX93_PAD_SD3_CMD__USDHC3_CMD 0x400013fe /* SDIO_B_CM= D */ + MX93_PAD_SD3_DATA0__USDHC3_DATA0 0x400013fe /* SDIO_B_D0= */ + MX93_PAD_SD3_DATA1__USDHC3_DATA1 0x400013fe /* SDIO_B_D1= */ + MX93_PAD_SD3_DATA2__USDHC3_DATA2 0x400013fe /* SDIO_B_D2= */ + MX93_PAD_SD3_DATA3__USDHC3_DATA3 0x400013fe /* SDIO_B_D3= */ + >; + }; + + pinctrl_usdhc3_sleep: usdhc3-sleepgrp { + fsl,pins =3D < + MX93_PAD_SD3_CLK__GPIO3_IO20 0x400 + MX93_PAD_SD3_CMD__GPIO3_IO21 0x400 + MX93_PAD_SD3_DATA0__GPIO3_IO22 0x400 + MX93_PAD_SD3_DATA1__GPIO3_IO23 0x400 + MX93_PAD_SD3_DATA2__GPIO3_IO24 0x400 + MX93_PAD_SD3_DATA3__GPIO3_IO25 0x400 + >; + }; + + pinctrl_usdhc3_wlan: usdhc3-wlangrp { + fsl,pins =3D < + MX93_PAD_ENET2_MDC__GPIO4_IO14 0x51e /* WIFI_REG_ON = */ + MX93_PAD_SD2_RESET_B__GPIO3_IO07 0x51e /* WIFI_PWR_EN = */ + >; + }; }; --=20 2.43.0 From nobody Sun Dec 14 11:16:14 2025 Received: from mail-ej1-f42.google.com (mail-ej1-f42.google.com [209.85.218.42]) (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 3201B359708 for ; Wed, 29 Oct 2025 19:29:13 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.42 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1761766155; cv=none; b=fwjejKek7kDt/sFUfNppvm8SWLIMDDRThRkUG8SxauXNzY0m/NUf1GNfUbqG9+Mka4jgDDVRXIAt+h5hRreUZqeD03oys/W9RZ9VVgYjjnkPZmQ6FqZvlqbpypxt/MYOu9qfQ5CsyggC5da2af0NeMK+9OPw0B3CsC77SUX/Qow= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1761766155; c=relaxed/simple; bh=E+yxGzCZFcyhRl056ULuyl5WPwp58wUUUI9XLCSFWXk=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=sNrWnQzR9SfvC8wXXYBVUQsPtU/3LYVAGa2F/EqKtAP0pqurArQe4IZkf0FYASrfdLagfja9DIgIbnBqt/2leVsLoiLl9vsoEXKQbOblOftQ/aXKJrYFxnRZ323BKYkMn+iZqrFvJ58Di2OEi8ROTyr9igA5jmWUvUNPM7Qxso0= 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=LYWalxJi; arc=none smtp.client-ip=209.85.218.42 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="LYWalxJi" Received: by mail-ej1-f42.google.com with SMTP id a640c23a62f3a-b3e7cc84b82so57254966b.0 for ; Wed, 29 Oct 2025 12:29:12 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1761766151; x=1762370951; 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=5pWDmbZrTdABcUlBNCeOKZzPd6c0px/j6MB6LEuyup4=; b=LYWalxJibNo9Wa03NbmeC0FC+cHs0RBRj/wXs6ueIS6ksddb1Al5fI5v0otUH3ZU9s t4y2YdezBIIt6kyQ3oA+cYHDOL9XigVxtorrgqm8E1dwgqRpFRyx7eui+8LEOGS2JyGK f6U8cHL/J2lHjLh02ET6x7Z3nqoLnydWBdZpYKqxBBkloDYqWEOpztWbmXNq43Zs6GP4 OU3FYA8sNoS81SltNz+n9VsJp0bPVBECOaq//3/gZOoU/c7Wbc0VPLG0PQafNvw4i3Ck Ucpn6/gkL/inq1GwCKokzESo/uA5+jbnoZeWGiGO8eLGyJhLaj0Y87thTH5GItMP35yz YAeQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1761766151; x=1762370951; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=5pWDmbZrTdABcUlBNCeOKZzPd6c0px/j6MB6LEuyup4=; b=cozvOx95LpHGKIBSrQuwedQ4pm4tFhwHA7/L1GQ59c/DRys8tfbWcKAsix+5E+mDS2 17IexER0OHCENLqqKpnm0DchYPosrt878NkYbHcdh7AwQSB5W0e8SMilHLj7o/ASz50F dhdaYCybEB/PqKIfcbY4E0XhJdqQO9mRY5ELQL6TkPUpwrUw5C0bX/ZFGFzXAUdrA+Wo 6svMU1yKr5qdcMNlK881c/FWhMQA4qYrgi1moR4xsuCEk3SHZ8L3C2gS9GDotZoKungs CgO0hOnxqCA+vnLwusaiinB8ZZV2v3wY1aleQ9cqDMSDxevhzWYUnpvv2uMSehfY3s1n Kgkw== X-Forwarded-Encrypted: i=1; AJvYcCWxLwJHsFopb3Z6vunGr/qJYikG81v3RDJSi/LnHyjUmqxRRt7Rwvn1rXWdQtctrUWc9ZzoaJo50NjD914=@vger.kernel.org X-Gm-Message-State: AOJu0Ywch0rp+l4UvQYd/lFFGChUTS6hwcqs3JZgrgms/XJGn41K6kGl hYG+5qzqQteov/h6FqLZ7jcHtMpMSFvOZZQqprmBWlhal2necCAbEIuU X-Gm-Gg: ASbGncsmS4BGc/FixKM36kwl/mbD0g+20y09XsBPMtXKzxYaduRkfjBCFmN0gF63a+x vIEooXdCIvDQndK8akuX4nbUmrlYNnalT8CeFrxOSvzlVLOxhkJOcdk7JSsPIM4FwMoGLDfkzU/ Lf7/b4O/abumJuohNxn8Ysdj6ZhOBd7jyG0m3wW5CrcRyA/Xoowl4Xf2QEgX2WGCuiiVuOUPYTK KiNrXoSqp0SnYUvbHcgxCKEg888FKUTs9gb5X7Eko7gUrGRe+kzITPzZms999kkgXN24ZlW6zsB Q8sN0xsUnXTVZbgsJb1gQly/uhB/LY7g+03o2jPEK93pydlAersPvNQpaj5LcGXIhUJVXG2zev2 3Qt+WEx+3alayVYhZxzbg/a2qJdkQXxQcPoqYCdlMlQYZJ6jDWiZv9+CfQpd22ax+KlNcee1Asq bdF6Eol2NXobVKSZxcSC62D11ijuxdzidjlTnDuUqA8GPrjNhBuGCXbp26z0Whkg== X-Google-Smtp-Source: AGHT+IHwJhZkEKqRnVEte1O7I0899f550vGZfsEycCCZE4aJZvfMSJzZMXQacN9shYw9JF12C9LbCw== X-Received: by 2002:a17:907:a03:b0:b04:626e:f43d with SMTP id a640c23a62f3a-b703d533318mr342078366b.47.1761766151112; Wed, 29 Oct 2025 12:29:11 -0700 (PDT) Received: from Lord-Beerus.station (net-93-146-98-100.cust.vodafonedsl.it. [93.146.98.100]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-b6d8548eda6sm1496673266b.75.2025.10.29.12.29.10 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 29 Oct 2025 12:29:10 -0700 (PDT) From: Stefano Radaelli To: devicetree@vger.kernel.org, linux-kernel@vger.kernel.org Cc: Stefano Radaelli , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Shawn Guo , Sascha Hauer , Pengutronix Kernel Team , Fabio Estevam , imx@lists.linux.dev, linux-arm-kernel@lists.infradead.org Subject: [PATCH v1 2/4] arm64: dts: freescale: imx93-var-som: Add PMIC support Date: Wed, 29 Oct 2025 20:28:47 +0100 Message-ID: <20251029192852.656806-3-stefano.radaelli21@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20251029192852.656806-1-stefano.radaelli21@gmail.com> References: <20251029192852.656806-1-stefano.radaelli21@gmail.com> 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" The VAR-SOM-MX93 features Dual Freescale/NXP PCA9541 chip as a Power Management Integrated circuit (PMIC). The PMIC is programmable via the I2C interface and its associated register map, and this patch adds its support. Signed-off-by: Stefano Radaelli --- .../boot/dts/freescale/imx93-var-som.dtsi | 98 +++++++++++++++++++ 1 file changed, 98 insertions(+) diff --git a/arch/arm64/boot/dts/freescale/imx93-var-som.dtsi b/arch/arm64/= boot/dts/freescale/imx93-var-som.dtsi index 97198007b545..368530f5831f 100644 --- a/arch/arm64/boot/dts/freescale/imx93-var-som.dtsi +++ b/arch/arm64/boot/dts/freescale/imx93-var-som.dtsi @@ -70,6 +70,90 @@ led@1 { }; }; =20 +&lpi2c3 { + clock-frequency =3D <400000>; + pinctrl-names =3D "default", "sleep", "gpio"; + pinctrl-0 =3D <&pinctrl_lpi2c3>; + pinctrl-1 =3D <&pinctrl_lpi2c3_gpio>; + pinctrl-2 =3D <&pinctrl_lpi2c3_gpio>; + scl-gpios =3D <&gpio2 29 GPIO_ACTIVE_HIGH>; + sda-gpios =3D <&gpio2 28 GPIO_ACTIVE_HIGH>; + status =3D "okay"; + + pmic@25 { + compatible =3D "nxp,pca9451a"; + reg =3D <0x25>; + + regulators { + buck1: BUCK1 { + regulator-name =3D "BUCK1"; + regulator-min-microvolt =3D <650000>; + regulator-max-microvolt =3D <2237500>; + regulator-boot-on; + regulator-always-on; + regulator-ramp-delay =3D <3125>; + }; + + buck2: BUCK2 { + regulator-name =3D "BUCK2"; + regulator-min-microvolt =3D <600000>; + regulator-max-microvolt =3D <2187500>; + regulator-boot-on; + regulator-always-on; + regulator-ramp-delay =3D <3125>; + }; + + buck4: BUCK4{ + regulator-name =3D "BUCK4"; + regulator-min-microvolt =3D <600000>; + regulator-max-microvolt =3D <3400000>; + regulator-boot-on; + regulator-always-on; + }; + + buck5: BUCK5{ + regulator-name =3D "BUCK5"; + regulator-min-microvolt =3D <600000>; + regulator-max-microvolt =3D <3400000>; + regulator-boot-on; + regulator-always-on; + }; + + buck6: BUCK6 { + regulator-name =3D "BUCK6"; + regulator-min-microvolt =3D <600000>; + regulator-max-microvolt =3D <3400000>; + regulator-boot-on; + regulator-always-on; + }; + + ldo1: LDO1 { + regulator-name =3D "LDO1"; + regulator-min-microvolt =3D <1600000>; + regulator-max-microvolt =3D <3300000>; + regulator-boot-on; + regulator-always-on; + }; + + ldo4: LDO4 { + regulator-name =3D "LDO4"; + regulator-min-microvolt =3D <800000>; + regulator-max-microvolt =3D <3300000>; + regulator-boot-on; + regulator-always-on; + }; + + ldo5: LDO5 { + regulator-name =3D "LDO5"; + regulator-min-microvolt =3D <1800000>; + regulator-max-microvolt =3D <3300000>; + regulator-boot-on; + regulator-always-on; + }; + }; + }; +}; + /* BT module */ &lpuart5 { pinctrl-names =3D "default"; @@ -140,6 +224,20 @@ MX93_PAD_UART2_TXD__GPIO1_IO07 0x51e >; }; =20 + pinctrl_lpi2c3: lpi2c3grp { + fsl,pins =3D < + MX93_PAD_GPIO_IO28__LPI2C3_SDA 0x40000b9e + MX93_PAD_GPIO_IO29__LPI2C3_SCL 0x40000b9e + >; + }; + + pinctrl_lpi2c3_gpio: lpi2c3-gpiogrp { + fsl,pins =3D < + MX93_PAD_GPIO_IO28__GPIO2_IO28 0x40000b9e + MX93_PAD_GPIO_IO29__GPIO2_IO29 0x40000b9e + >; + }; + pinctrl_lpuart5: lpuart5grp { fsl,pins =3D < MX93_PAD_DAP_TDO_TRACESWO__LPUART5_TX 0x31e --=20 2.43.0 From nobody Sun Dec 14 11:16:14 2025 Received: from mail-ej1-f54.google.com (mail-ej1-f54.google.com [209.85.218.54]) (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 A4372359FAA for ; Wed, 29 Oct 2025 19:29:14 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.54 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1761766156; cv=none; b=NNBnc5InZQB8FFI1wvYxPgfKUkD0DA8tTr2ET4hGA9FWHy/KJyWQkqlZmyQ7Gt+L8dKPjRR1SuZpQWNFJ3ifEIDoSwnO0pYy5G1YgsJIPIoAEPtCozATSAK+QzAaS/3uy9z5gVsiDNd7JUjIMfTDmUrnCGSBICH7lkMPSu0sv5A= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1761766156; c=relaxed/simple; bh=L4cc62I8VBtR9WYn3KE48vIMlnYDeTk5okhOWpkUMz8=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=PPlp+cBrfi/RDPT5uU6No2qeQewhgSLZ9LT52Pqyzsnzuw/d1DOAzyNqNekCgHIR0pHOaC47kuQJOTwqBpdTaFrcvfllYtt+wwVDNAzOIU9VYm0O4np876Gr+Zw0vSy6PXCQhEyX+C5RF7inr3vD7PhR3CMYJsY5My20g7UC5o4= 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=bB3cQBUY; arc=none smtp.client-ip=209.85.218.54 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="bB3cQBUY" Received: by mail-ej1-f54.google.com with SMTP id a640c23a62f3a-afcb7ae6ed0so57281166b.3 for ; Wed, 29 Oct 2025 12:29:14 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1761766153; x=1762370953; 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=+QiFp/LdLdfHAJfOJPJO9VTxDlMuNiD8Zbuk8ezHLYs=; b=bB3cQBUY2Sk+BlS028oWK0FNDLPcooOY0/tR3murTWV+dYNrJ0sCAXxVwfPk+mArJD oVX4HFde/NBVr4e9Lhs6Am5aettcsVLSJ5Bl5J6jAfe2wQ/Dq0e6uM6wydU8cnUQii8c Y9is9pdnDXhBh5LOnTCgbti4SB4z4A1SuRICYtpaMGrTeKJaAZC83aZgHCpOX6Ar+OVt 5OcVxDeXvPgTM/TSVo22ZxxyQUMRt+cj5YF8Hl7jBjOrqahOWOvtzgpOoQK2YXx0xgSR 9SKlSd8+VSYnATkf8cbJG2qyv//9Ph3eKgAA+udRGEnpkXu+0h0sbEhnH7ucYkwJDb17 MxTQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1761766153; x=1762370953; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=+QiFp/LdLdfHAJfOJPJO9VTxDlMuNiD8Zbuk8ezHLYs=; b=esDnr7zpiWBh7bYJziDAEbj4hQivAy/Y24W3+cbVi9YFHeiTW34oHCISIFQLNITy// E98TEDa+ROlUpwuG09qxgkACHx0WaCxoREcW9nOpnqRm5KFVLY9f5FL2mC1ixg9HkaI5 XQcx/DI2H0fUTdjb78Bv2EUz5T5Al0z+7MGgZHXZcxoBArp8u50zNLsmgcWXCL4fAY9B EtW8qFNIagszMwh2IlQ6MbWeG1A24eFoxXogsELHPI1/+i/jE14/TReTAe0RBUdgQw8p gWQxy+orK49ayDmVCRNTgTcfQ0ZiI3pm5T4nBlP4Bwpwyu7DurG+N7zZ9f67WDQbIhgT 9EDA== X-Forwarded-Encrypted: i=1; AJvYcCUUCZlVI5ug3fLUtQfjpU1S7fU28Twi0xgGhgDylI3U8Ui4rfOJnS/7RykR88rqfw2de2Txg2ptZ6A1qWw=@vger.kernel.org X-Gm-Message-State: AOJu0YzHPK+PlJ5jUneN/lSToLbAWHn93CwAKFoaZ/EYlnQuQ0Lql6Ze M6SA2+hBtkvWgeFag1GTlYNyKvTiJx8tS5xBkJAngYbGvVzLw8CLUVxJ X-Gm-Gg: ASbGncssJY881z3k58qCpASY6Mf8EGcK7FiubxFqz8gYwTlcQ1H5PXSDIHGWR5/LScs dNXeNSGD36JqEPgswN0QIplO8ytEpbwK3TipZIoWbqFvW7RgwYf8xzrVhuiAgewQO4lCY2KdiN3 ubL7xTfwewG53R0u6irapVbR+eTOmqpCjNmvDDSJOXjeue4IFvnlEF+hPWFWZeAJXd5546c2xB2 egLhAAfozcx+BYo05DcFKR9uuXg7mmW054VBuB1Vty/LSHTilgYgbL7NZcGwrrhLr+XZBUpKudo XzFm53113HHfHX3V50K2j13tLBCIMAn8rSIxxQZZGAR9G94sI4giU84IxdbGw8rZoS/0KA/kcxy fhpWYRuLjv7tUGHnS7ZyDZuL6cnHaH7JNTAHtLySo7Ai08UIXgOUiePkvCBdyP7hAEGRCDxIyL9 UeK1+Kf5pBMDtRjYnZYKQpAG7u1wi9WiHkMW9QlFoBPtcmSSJbUFCHdNq+uAEwtQ== X-Google-Smtp-Source: AGHT+IFMO9AToKhALDtmsrq81s5iqoQxzOiv7HbkBgHJatpEZpryGrj89HkqN9nJYwlK5nQZ6d5XOA== X-Received: by 2002:a17:907:c0f:b0:b6f:9da9:4b46 with SMTP id a640c23a62f3a-b703d5333b1mr421529766b.43.1761766152587; Wed, 29 Oct 2025 12:29:12 -0700 (PDT) Received: from Lord-Beerus.station (net-93-146-98-100.cust.vodafonedsl.it. [93.146.98.100]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-b6d8548eda6sm1496673266b.75.2025.10.29.12.29.11 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 29 Oct 2025 12:29:12 -0700 (PDT) From: Stefano Radaelli To: devicetree@vger.kernel.org, linux-kernel@vger.kernel.org Cc: Stefano Radaelli , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Shawn Guo , Sascha Hauer , Pengutronix Kernel Team , Fabio Estevam , imx@lists.linux.dev, linux-arm-kernel@lists.infradead.org Subject: [PATCH v1 3/4] arm64: dts: freescale: imx93-var-som: Add support for WM8904 audio codec Date: Wed, 29 Oct 2025 20:28:48 +0100 Message-ID: <20251029192852.656806-4-stefano.radaelli21@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20251029192852.656806-1-stefano.radaelli21@gmail.com> References: <20251029192852.656806-1-stefano.radaelli21@gmail.com> 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" The VAR-SOM-MX93 can integrate the WM8904, a high-performance ultra-low-power stereo codec optimized for portable audio applications. This patch adds the WM8904 device to the appropriate I2C bus, enables the SAI peripheral, and introduces the sound node to expose the sound card to the system. Signed-off-by: Stefano Radaelli --- .../boot/dts/freescale/imx93-var-som.dtsi | 93 +++++++++++++++++++ 1 file changed, 93 insertions(+) diff --git a/arch/arm64/boot/dts/freescale/imx93-var-som.dtsi b/arch/arm64/= boot/dts/freescale/imx93-var-som.dtsi index 368530f5831f..d94b40d1d804 100644 --- a/arch/arm64/boot/dts/freescale/imx93-var-som.dtsi +++ b/arch/arm64/boot/dts/freescale/imx93-var-som.dtsi @@ -12,6 +12,34 @@ /{ model =3D "Variscite VAR-SOM-MX93 module"; compatible =3D "variscite,var-som-mx93", "fsl,imx93"; =20 + sound { + compatible =3D "simple-audio-card"; + simple-audio-card,bitclock-master =3D <&codec_dai>; + simple-audio-card,format =3D "i2s"; + simple-audio-card,frame-master =3D <&codec_dai>; + simple-audio-card,name =3D "wm8904-audio"; + simple-audio-card,routing =3D + "Headphone Jack", "HPOUTL", + "Headphone Jack", "HPOUTR", + "IN2L", "Line In Jack", + "IN2R", "Line In Jack", + "IN1L", "Microphone Jack", + "IN1R", "Microphone Jack"; + simple-audio-card,widgets =3D + "Microphone", "Microphone Jack", + "Headphone", "Headphone Jack", + "Line", "Line In Jack"; + simple-audio-card,mclk-fs =3D <256>; + + codec_dai: simple-audio-card,codec { + sound-dai =3D <&wm8904>; + }; + + simple-audio-card,cpu { + sound-dai =3D <&sai1>; + }; + }; + usdhc3_pwrseq: mmc-pwrseq { compatible =3D "mmc-pwrseq-simple"; post-power-on-delay-ms =3D <100>; @@ -152,6 +180,36 @@ ldo5: LDO5 { }; }; }; + + wm8904: audio-codec@1a { + compatible =3D "wlf,wm8904"; + reg =3D <0x1a>; + #sound-dai-cells =3D <0>; + clocks =3D <&clk IMX93_CLK_SAI1_GATE>; + clock-names =3D "mclk"; + AVDD-supply =3D <&buck5>; + CPVDD-supply =3D <&buck5>; + DBVDD-supply =3D <&buck4>; + DCVDD-supply =3D <&buck5>; + MICVDD-supply =3D <&buck5>; + wlf,drc-cfg-names =3D "default", "peaklimiter", "tradition", + "soft", "music"; + /* + * Config registers per name, respectively: + * KNEE_IP =3D 0, KNEE_OP =3D 0, HI_COMP =3D 1, LO_COMP =3D 1 + * KNEE_IP =3D -24, KNEE_OP =3D -6, HI_COMP =3D 1/4, LO_COMP =3D 1 + * KNEE_IP =3D -42, KNEE_OP =3D -3, HI_COMP =3D 0, LO_COMP =3D 1 + * KNEE_IP =3D -45, KNEE_OP =3D -9, HI_COMP =3D 1/8, LO_COMP =3D 1 + * KNEE_IP =3D -30, KNEE_OP =3D -10.5, HI_COMP =3D 1/4, LO_COMP =3D 1 + */ + wlf,drc-cfg-regs =3D /bits/ 16 <0x01af 0x3248 0x0000 0x0000>, + /bits/ 16 <0x04af 0x324b 0x0010 0x0408>, + /bits/ 16 <0x04af 0x324b 0x0028 0x0704>, + /bits/ 16 <0x04af 0x324b 0x0018 0x078c>, + /bits/ 16 <0x04af 0x324b 0x0010 0x050e>; + /* GPIO1 =3D DMIC_CLK, don't touch others */ + wlf,gpio-cfg =3D <0x0018>, <0xffff>, <0xffff>, <0xffff>; + }; }; =20 /* BT module */ @@ -166,6 +224,17 @@ bluetooth { }; }; =20 +&sai1 { + pinctrl-names =3D "default", "sleep"; + pinctrl-0 =3D <&pinctrl_sai1>; + pinctrl-1 =3D <&pinctrl_sai1_sleep>; + assigned-clocks =3D <&clk IMX93_CLK_SAI1>; + assigned-clock-parents =3D <&clk IMX93_CLK_AUDIO_PLL>; + assigned-clock-rates =3D <12288000>; + fsl,sai-mclk-direction-output; + status =3D "okay"; +}; + /* eMMC */ &usdhc1 { pinctrl-names =3D "default", "state_100mhz", "state_200mhz"; @@ -247,6 +316,30 @@ MX93_PAD_DAP_TCLK_SWCLK__LPUART5_CTS_B 0x31e >; }; =20 + pinctrl_sai1: sai1grp { + fsl,pins =3D < + MX93_PAD_SAI1_TXC__SAI1_TX_BCLK 0x31e + MX93_PAD_SAI1_TXFS__SAI1_TX_SYNC 0x31e + MX93_PAD_SAI1_TXD0__SAI1_TX_DATA00 0x31e + MX93_PAD_SAI1_RXD0__SAI1_RX_DATA00 0x31e + MX93_PAD_I2C2_SDA__SAI1_RX_BCLK 0x31e + MX93_PAD_I2C2_SCL__SAI1_RX_SYNC 0x31e + MX93_PAD_UART2_RXD__SAI1_MCLK 0x31e + >; + }; + + pinctrl_sai1_sleep: sai1-sleepgrp { + fsl,pins =3D < + MX93_PAD_SAI1_TXC__GPIO1_IO12 0x31e + MX93_PAD_SAI1_TXFS__GPIO1_IO11 0x31e + MX93_PAD_SAI1_TXD0__GPIO1_IO13 0x31e + MX93_PAD_SAI1_RXD0__GPIO1_IO14 0x31e + MX93_PAD_UART2_RXD__GPIO1_IO06 0x31e + MX93_PAD_I2C2_SDA__GPIO1_IO03 0x31e + MX93_PAD_I2C2_SCL__GPIO1_IO02 0x31e + >; + }; + pinctrl_usdhc1: usdhc1grp { fsl,pins =3D < MX93_PAD_SD1_CLK__USDHC1_CLK 0x15fe --=20 2.43.0 From nobody Sun Dec 14 11:16:14 2025 Received: from mail-ej1-f49.google.com (mail-ej1-f49.google.com [209.85.218.49]) (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 1D79A35A12A for ; Wed, 29 Oct 2025 19:29:15 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.49 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1761766157; cv=none; b=DlSQfGnQH/J2IAGjAmYHlWzcbe0afyHvlLhTIWa5i/xMBqF5bpHUR94I8o9CZWwYvqh76m3wYXDzuKI//jvVqoU6/Q75k8qrPCsBysZgvPDY6cyFC9WjAfQlV1rFE0dH9V+umUas89gMP+ADDavlxSLViU0xUi98mQfe8GKpYOM= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1761766157; c=relaxed/simple; bh=TBS7ZMz/huddl9pLh96AmfhkHxVmvREzsHwTliKCOsE=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=EyYvs9PQ1MnCz18wQOGcjL5oEQS9DSKFkfuDROuKIPp+WzDsBH6+xOy6rR67xjhX1wmgH+8butOGv/okRsyHI8uBMR2T7ncT86QmMSTLNbTFCOsVc0wdgXN1fyFMl8RwVXwXzNElIkgAyEAYirOZdRw2Xn0aryS/TIFY4MgNYc8= 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=JUZmMkZ3; arc=none smtp.client-ip=209.85.218.49 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="JUZmMkZ3" Received: by mail-ej1-f49.google.com with SMTP id a640c23a62f3a-b6d83bf1077so50548666b.3 for ; Wed, 29 Oct 2025 12:29:15 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1761766154; x=1762370954; 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=drvlRfVB/NoPKWYb6A7Zkbz4VYcKiU0cQ5EAHKwC8TU=; b=JUZmMkZ39iMJbFiULSQsrQpuA8x9zkAGnJQcW2KlU7izme11Lj/4GlALEvMHVT2VrY ok7T/TTr54A3oUhqkhzMgQT0691ejORxMCYan7kETuXC7tJgfvNMatJ8ykzD4wUZIOm8 lK5k12BgrNVu0LgqZQUlFEDD6K+14BFCzhq5oyVaQq5caJtohk8tPFw05yXsQIKk+tK8 GGkAzo5NVrWkKOuO98+dBJFPP/TjE+JxF325Ua6Fm86wvpUr7VZBaXSnungHnZ2LrtFz NjTXDOQMaB1Lid87rEqY0/MpxUbAj5jS7c99SVeG3zcn1YV7XZWShR+v4TlFW7lcsyty K4fQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1761766154; x=1762370954; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=drvlRfVB/NoPKWYb6A7Zkbz4VYcKiU0cQ5EAHKwC8TU=; b=VgCnZamJzSUAz4ZgiFh0Crqp+KDFLrir2s6M7E3m6ceJcPUuNkJJb438xySkpkz/ZD DU/ULX6r7ZdJzzPg2QiBR+lWinTobcF3CuLxwAYP4mxCld3vHzWqcIXAdPhRcMWS3/CT 4tNu4l3+4RgsB5aFZ4K+hBD3oDgAG/nJQaJjG1ODjOY872zTh0yQqscUK4pNNXHTL/xg NwmHrnBDPDi12CWDZL74hLB3Xg5/STiugQZUFcYatYcdUbh/HMlswdzcvJtc91NZ4pnf frGqOWvzkoUYMMZoXEODED+YqlmNGJ22KWhn0NxfWlV6sUBdsMzNqGQICC3j0Fid3+FZ VKHA== X-Forwarded-Encrypted: i=1; AJvYcCXhSfVhk3qqUHShmx2tP1VDHdumHX5AmIrnVjJA+CDRDbpdI2TGBfEnGvWp6zZieGDimJxU0LlHfjNc1Ko=@vger.kernel.org X-Gm-Message-State: AOJu0YxK0f++ThfRODOmWZiDa0PmlXRxXiD7dbMdAYNg6Ir2/lk8o2yz NnrFsh1ZcV20/daUULl3MzlqoTXvOZgvd0PWRphUOf3xr7IxGvdIm4lL X-Gm-Gg: ASbGncuhScRE+5/twLcMxDOMGSh5wAhmo3tf+nJK+4oRPBC4F4DobRb4jFM4uGqCL2m 2wrEOaXPxDuZ035YgqdSODtpAB1QqYQ6Tky5LJizcex9kpXevLZqxDLJD1XsMNgtDAriYfOJKGZ 9npho97voHzNGvc2kkwTxq4es6lj0PPH34tndqKNqj7aF4H4mLaQxJDFAIqDlWQ430b5neX1y5I O0gYJJmrqaeX7VVpWzLk9D+MEqzBfLjDCy9k723UxCwFn3ry9MSMEVxGBvm7Jn4qiSVou6NaDv8 0lvnu/n3VSMUjvudglG1u1qcZsYvgr5Kg1K/2X1A1mWqc9s75LfOBiq9w/83XbFU1WPT4ZoK8qo FIKxySNoBPQG8107ROICPpq0RZITBzNCys6hlEsHPya9ofz0+JqRNBFTo0e818N0hlAT2toCywu Kpma4optL+2sq2QIlkMCT8NsehIXbnj8DxIZT/akov3Vz3gJQvCJhBl/K6Bcm98w== X-Google-Smtp-Source: AGHT+IHVJORke3FbLcazCdqb6IzzPmDXwSbtp/S5D/AcSmwvYP+0vUHCAfCC9o5lV9yehDEJzSKsyQ== X-Received: by 2002:a17:907:9342:b0:b4a:ac1e:7866 with SMTP id a640c23a62f3a-b703d52573cmr367554666b.45.1761766154134; Wed, 29 Oct 2025 12:29:14 -0700 (PDT) Received: from Lord-Beerus.station (net-93-146-98-100.cust.vodafonedsl.it. [93.146.98.100]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-b6d8548eda6sm1496673266b.75.2025.10.29.12.29.13 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 29 Oct 2025 12:29:13 -0700 (PDT) From: Stefano Radaelli To: devicetree@vger.kernel.org, linux-kernel@vger.kernel.org Cc: Stefano Radaelli , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Shawn Guo , Sascha Hauer , Pengutronix Kernel Team , Fabio Estevam , imx@lists.linux.dev, linux-arm-kernel@lists.infradead.org Subject: [PATCH v1 4/4] arm64: dts: freescale: imx93-var-som: Add support for ADS7846 touchscreen Date: Wed, 29 Oct 2025 20:28:49 +0100 Message-ID: <20251029192852.656806-5-stefano.radaelli21@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20251029192852.656806-1-stefano.radaelli21@gmail.com> References: <20251029192852.656806-1-stefano.radaelli21@gmail.com> 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" The VAR-SOM-MX93 integrates an ADS7846 resistive touchscreen controller. The controller is physically located on the SOM, and its signals are routed to the SOM pins, allowing carrier boards to make use of it. This patch adds the ADS7846 node and the appropriate SPI controller. Signed-off-by: Stefano Radaelli --- .../boot/dts/freescale/imx93-var-som.dtsi | 47 +++++++++++++++++++ 1 file changed, 47 insertions(+) diff --git a/arch/arm64/boot/dts/freescale/imx93-var-som.dtsi b/arch/arm64/= boot/dts/freescale/imx93-var-som.dtsi index d94b40d1d804..01adf7b5ac12 100644 --- a/arch/arm64/boot/dts/freescale/imx93-var-som.dtsi +++ b/arch/arm64/boot/dts/freescale/imx93-var-som.dtsi @@ -212,6 +212,38 @@ wm8904: audio-codec@1a { }; }; =20 +&lpspi8 { + pinctrl-names =3D "default"; + pinctrl-0 =3D <&pinctrl_lpspi8>; + cs-gpios =3D <&gpio2 12 GPIO_ACTIVE_LOW>; + status =3D "okay"; + + /* Resistive touch controller */ + ads7846: touchscreen@0 { + compatible =3D "ti,ads7846"; + reg =3D <0>; + pinctrl-names =3D "default"; + pinctrl-0 =3D <&pinctrl_restouch>; + interrupt-parent =3D <&gpio4>; + interrupts =3D <29 IRQ_TYPE_EDGE_FALLING>; + spi-max-frequency =3D <1000000>; + pendown-gpio =3D <&gpio4 29 0>; + vcc-supply =3D <&buck5>; + ti,x-min =3D /bits/ 16 <125>; + ti,x-max =3D /bits/ 16 <4008>; + ti,y-min =3D /bits/ 16 <282>; + ti,y-max =3D /bits/ 16 <3864>; + ti,x-plate-ohms =3D /bits/ 16 <180>; + ti,pressure-max =3D /bits/ 16 <255>; + ti,debounce-max =3D /bits/ 16 <10>; + ti,debounce-tol =3D /bits/ 16 <3>; + ti,debounce-rep =3D /bits/ 16 <1>; + ti,settle-delay-usec =3D /bits/ 16 <150>; + ti,keep-vref-on; + wakeup-source; + }; +}; + /* BT module */ &lpuart5 { pinctrl-names =3D "default"; @@ -307,6 +339,15 @@ MX93_PAD_GPIO_IO29__GPIO2_IO29 0x4000= 0b9e >; }; =20 + pinctrl_lpspi8: lpspi8grp { + fsl,pins =3D < + MX93_PAD_GPIO_IO12__GPIO2_IO12 0x31e + MX93_PAD_GPIO_IO13__LPSPI8_SIN 0x31e + MX93_PAD_GPIO_IO14__LPSPI8_SOUT 0x31e + MX93_PAD_GPIO_IO15__LPSPI8_SCK 0x31e + >; + }; + pinctrl_lpuart5: lpuart5grp { fsl,pins =3D < MX93_PAD_DAP_TDO_TRACESWO__LPUART5_TX 0x31e @@ -316,6 +357,12 @@ MX93_PAD_DAP_TCLK_SWCLK__LPUART5_CTS_B 0x31e >; }; =20 + pinctrl_restouch: restouchgrp { + fsl,pins =3D < + MX93_PAD_CCM_CLKO4__GPIO4_IO29 0x31e + >; + }; + pinctrl_sai1: sai1grp { fsl,pins =3D < MX93_PAD_SAI1_TXC__SAI1_TX_BCLK 0x31e --=20 2.43.0