From nobody Sat Apr 11 10:48:26 2026 Received: from mail-wm1-f46.google.com (mail-wm1-f46.google.com [209.85.128.46]) (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 E125745106F for ; Fri, 6 Mar 2026 19:58:48 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.46 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772827135; cv=none; b=J+unV00FnUkLQfUL0Q35o7Ay7hLm5i0c8MkgYlS0Nxi2Nfa05jMT9MFwJb7fcf94vCikBJnrCvPfe8oyR3F2RgNEFnejVsNB9bDEhjytF2t56Gb20HS8Hnet5G5soj/2qRABuKCSje1oDTi8kaKYq9GHE3vhBLNNUBvCKXZcJks= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772827135; c=relaxed/simple; bh=xTRveRJF2dl7CBQyRHlw6rc1lcP+lhknVliLp+7BJd0=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=KpDhf1KnCd/lucMp9Gw/FVAn6uZgzkHQqN6dDT3+1NG2uZuHsAG9NADt4O1D56MviDE2DKG7Cdou/smiWRrmKHvuEjMq4lPZfzmTMK4ALj21ezZs+ftbWp2F9VpQr6ahbLW0/HKtyYm1wk0GE9VFsCV50AzT76LXmh4+w80WA8Q= 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=BG0fCfrQ; arc=none smtp.client-ip=209.85.128.46 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="BG0fCfrQ" Received: by mail-wm1-f46.google.com with SMTP id 5b1f17b1804b1-4836e3288cdso65435645e9.0 for ; Fri, 06 Mar 2026 11:58:48 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1772827127; x=1773431927; 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=9tXjij1D9KtsqrCPi7i7680wT/H004NOdFpzApfvwok=; b=BG0fCfrQd5k2rnPc5FpfltQMX0+6HXfwOZyOuXKIM3hkLRs7bKnrrf6OzL8K4V6Jgl aZvuNH4xXu21zBZwvw6iywe9/bYw99GU9qADyZlCO4OOt7MW8atfGelEm82wopo4iw3u FEsnakSUpZ6w/J042iKgs3XtozTwcpEmIu97KtrDnUyat37g8RiX0A2OVAosBhvqhtok DcrPd2JKpWOuX24bc3mKgYU4d69+bmOChUVQUIOgAAvRqjhwnABflQWO8hLBqDKUIw+F fORPB0zOI4E4D1XDKbn+kSG4lc6Xuk+En/iiJIQyy+foHr7x8Ssj2HEGr37LAOc2dzPe mZ/w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1772827127; x=1773431927; 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=9tXjij1D9KtsqrCPi7i7680wT/H004NOdFpzApfvwok=; b=lSG687g1HYJTghRzK9jPUTDjVycnRdEwZJrCP6i5U+XYtdRa9wNRdFZniBnNc7nQK6 n1dtwJYGJPsrpjVC4lfg/gropT/K++e1IkzJf74teV6odnsTyCt8Ny8Q7HkJdD+vjrP1 9cXHruo4wPj4qNGlMxHStbGA2xZnFB+JcZmbcLxOw2Cn9XyJtvtSdYRdbkpyuNv0K+8P 1pXW4Ap/IZ9xjZ/bwo+RmRUusWE+ouaFtsX4IgLuKVzAVr6ET2Dlo4ORcbYIov7K+BsM rX/QMtnopw/bnsU/jWIngl5KIz+zM0ni5RJShFudXX5MjD/b/Itygdql+ZpKVbzrzBF7 dmcg== X-Gm-Message-State: AOJu0YzaUipXkOfV4ecV2aOdZjulhUjqEIflZPr4ONn6WvZFCG6aWj02 2zSp6kW63XZ5axDc3Oh2N4OM5YDbVMTp8xeGmQlTVBV09Zwrb4eUS2GYkS6lpQ== X-Gm-Gg: ATEYQzxf15OQP26YDSi/IWg9m1KQAoTi3CIRBCxRkqhImFE9MdMnfU3RCRsiwo07JxX xEjCtXrQYF/bV5O0CBuki+Sl1AAL+N7sUzBkAsDi9eALsknU4EVauUVq9gDf0kC4j9e8FPlNilh Tv3pEmzM6HFvYPFi8wUveTYKKndW7ZJEu7XH2GanmLjKk6hgCBMxTssfJAtMVjWwtVUJGru9l3e v0OrJzSsFY0gXmCKPv6skN5ixttbZGpeX+9ZbIZ2PBvSU8On8LbF+RiMQJlVrEnWQGUSomJ80kN 9UWYRMW1G0eSjGFJAEYPxibfIzejdduzD+xmyHDnixCwMQ/Sx6nzJR/2m7YCOOl664eoQfjkMQd c4FTrKanijEObGvhuiIKTabwzG3dHiohyn5kZ4cGyrPKL5mJBsqxyVitGacWfiJ5KX5lIa7vkFo SPgThLAcNgBGP4Z0OuMyE8Nb64lcZ54kRlm8rISFYk2HIthcu9CxgOAi7gYczBLj6HK5e3Rkg8q +Nd3LMWr/NvtZx4b/bbRjYUHEGJYswU8CIgx8s//Wir0FoDYA== X-Received: by 2002:a05:600c:8705:b0:479:1348:c63e with SMTP id 5b1f17b1804b1-4852674e8camr56209175e9.9.1772827127154; Fri, 06 Mar 2026 11:58:47 -0800 (PST) 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-48523803b5fsm25167265e9.7.2026.03.06.11.58.46 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 06 Mar 2026 11:58:46 -0800 (PST) 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 , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Frank Li , Sascha Hauer , Pengutronix Kernel Team , Fabio Estevam Subject: [PATCH v2 07/11] arm64: dts: imx8mm-var-som-symphony: Move USB configuration from SOM Date: Fri, 6 Mar 2026 20:58:26 +0100 Message-ID: <04b20cb1abdea86c551a851a19eba8fce1640c87.1772826534.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 Move the USB controller configuration out of the i.MX8MM VAR-SOM dtsi and into the VAR-SOM Symphony carrier board dts. The SOM does not provide any USB connectors and carrier boards may choose whether and how to route USB, therefore USB should be described in the carrier-specific device tree instead of the SOM include. While moving the nodes, align the Symphony USB description with the carrier design by enabling both USB controllers, wiring USB1 to the PTN5150 Type-C controller for dual-role operation, and updating the PHY tuning and VBUS regulator pinctrl (including a sleep state). Signed-off-by: Stefano Radaelli --- v1->v2: -=20 .../dts/freescale/imx8mm-var-som-symphony.dts | 52 ++++++++++++------- .../boot/dts/freescale/imx8mm-var-som.dtsi | 12 ----- 2 files changed, 34 insertions(+), 30 deletions(-) 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 51ac8ee34c3b..86246de8f36f 100644 --- a/arch/arm64/boot/dts/freescale/imx8mm-var-som-symphony.dts +++ b/arch/arm64/boot/dts/freescale/imx8mm-var-som-symphony.dts @@ -32,6 +32,7 @@ reg_usb_otg2_vbus: regulator-usb-otg2-vbus { compatible =3D "regulator-fixed"; pinctrl-names =3D "default"; pinctrl-0 =3D <&pinctrl_reg_usb_otg2_vbus>; + pinctrl-1 =3D <&pinctrl_reg_usb_otg2_vbus_sleep>; regulator-name =3D "usb_otg2_vbus"; regulator-min-microvolt =3D <5000000>; regulator-max-microvolt =3D <5000000>; @@ -140,13 +141,20 @@ enet-sel-hog { }; }; =20 - extcon_usbotg1: typec@3d { + /* USB Type-C Controller */ + ptn5150: typec@3d { compatible =3D "nxp,ptn5150"; reg =3D <0x3d>; - interrupt-parent =3D <&gpio1>; - interrupts =3D <11 IRQ_TYPE_LEVEL_LOW>; pinctrl-names =3D "default"; pinctrl-0 =3D <&pinctrl_ptn5150>; + interrupt-parent =3D <&gpio1>; + interrupts =3D <11 IRQ_TYPE_NONE>; + + port { + typec1_dr_sw: endpoint { + remote-endpoint =3D <&usb1_drd_sw>; + }; + }; }; }; =20 @@ -194,27 +202,29 @@ &uart4 { }; =20 &usbotg1 { - disable-over-current; - extcon =3D <&extcon_usbotg1>, <&extcon_usbotg1>; + dr_mode =3D "otg"; + hnp-disable; + srp-disable; + adp-disable; + usb-role-switch; + samsung,picophy-pre-emp-curr-control =3D <3>; + samsung,picophy-dc-vol-level-adjust =3D <7>; + status =3D "okay"; + + port { + usb1_drd_sw: endpoint { + remote-endpoint =3D <&typec1_dr_sw>; + }; + }; }; =20 &usbotg2 { dr_mode =3D "host"; vbus-supply =3D <®_usb_otg2_vbus>; - srp-disable; - hnp-disable; - adp-disable; + samsung,picophy-pre-emp-curr-control =3D <3>; + samsung,picophy-dc-vol-level-adjust =3D <7>; disable-over-current; - /delete-property/ usb-role-switch; - /* - * FIXME: having USB2 enabled hangs the boot just after: - * [ 1.943365] ci_hdrc ci_hdrc.1: EHCI Host Controller - * [ 1.948287] ci_hdrc ci_hdrc.1: new USB bus registered, assigned bus= number 1 - * [ 1.971006] ci_hdrc ci_hdrc.1: USB 2.0 started, EHCI 1.00 - * [ 1.977203] hub 1-0:1.0: USB hub found - * [ 1.980987] hub 1-0:1.0: 1 port detected - */ - status =3D "disabled"; + status =3D "okay"; }; =20 &pinctrl_fec1 { @@ -269,6 +279,12 @@ MX8MM_IOMUXC_SAI3_TXD_GPIO5_IO1 0x16 >; }; =20 + pinctrl_reg_usb_otg2_vbus_sleep: regusbotg2vbus-sleepgrp { + fsl,pins =3D < + MX8MM_IOMUXC_SAI3_TXD_GPIO5_IO1 0x120 + >; + }; + pinctrl_reg_usdhc2_vmmc: regusdhc2vmmcgrp { fsl,pins =3D < MX8MM_IOMUXC_SD2_RESET_B_GPIO2_IO19 0x41 diff --git a/arch/arm64/boot/dts/freescale/imx8mm-var-som.dtsi b/arch/arm64= /boot/dts/freescale/imx8mm-var-som.dtsi index c37badc4cf27..75f56dc89b8e 100644 --- a/arch/arm64/boot/dts/freescale/imx8mm-var-som.dtsi +++ b/arch/arm64/boot/dts/freescale/imx8mm-var-som.dtsi @@ -378,18 +378,6 @@ &uart2 { status =3D "okay"; }; =20 -&usbotg1 { - dr_mode =3D "otg"; - usb-role-switch; - status =3D "okay"; -}; - -&usbotg2 { - dr_mode =3D "otg"; - usb-role-switch; - status =3D "okay"; -}; - &usdhc1 { #address-cells =3D <1>; #size-cells =3D <0>; --=20 2.47.3