From nobody Sun Apr 5 13:05:45 2026 Received: from mail-wm1-f45.google.com (mail-wm1-f45.google.com [209.85.128.45]) (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 4FA0E3F7870 for ; Thu, 19 Mar 2026 18:41:59 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.45 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773945721; cv=none; b=it6/1yHfRPJ33OsSUQzDSiL8bstB5ElolNPTq4oVEThYa3RUJJvZSFi1KrIdOuWlqqwqR1SUDkecOwSfhrb5ZXPiAH2pOwkUw3j46rlPqukGaySl2i1qV4MqYHRGbY47yz79VH+WcC4RC4iE5O2mSLe2cIOi88d2QH6c4/n8lwQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773945721; c=relaxed/simple; bh=BM2gvpse60F5Afr+VPCPLl+VC+QrAszo9XAnzuXymqQ=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=arXuDp8YhZH3ueXCT8GsdlmErGm70sBOy0GnkRKQevnA7uUBhYNborR9jM3ZkgfjiV0sjX1rbcx+Y+zaRPBPdQq7wQJZ3d0ATjJiF/BgtnlcuqTHWTAtnQ+uINQlXkvkKheQ4Klyn9bHTIO5Ezw+dY1HB9yBQJL+ICXjs4FxU0g= 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=DJMKCRyQ; arc=none smtp.client-ip=209.85.128.45 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="DJMKCRyQ" Received: by mail-wm1-f45.google.com with SMTP id 5b1f17b1804b1-48374014a77so10512785e9.3 for ; Thu, 19 Mar 2026 11:41:59 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1773945718; x=1774550518; 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=s8vxnjwZOXE7HlXyNRQ9zVADAHm3YyuOJfN0fYbFcx0=; b=DJMKCRyQd/zWRRqeH52d8jmdEUVVhXlUFFM39tXiopoliWTzowbbSDnhNpvI9XsCWe BIAOkJCuVaslHCUqVThXoZonBwQU2zIvvxVMqYjdDnFKjOUlrR6dGwbpyglV/KUiCsjI 5pBdDXbfX3vLptqsXyTZvOLRsKpkifBpWFhznd3aI/5iooFKo7snopmdL+9vs6NeIBFg JDEE7f4kpZpqPbNcG5YkD8s5vss2sDpdTwoQOC3YuiJyZJ1xIDkqS/DO+qRi8jtmnJNu y8q2om8EsQC+EvAvk0dRkHUkv0ZoPnGak5Ja8Vu7b5Bv6gCEuqUr5WJv7comEQUwTpAo WO/w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1773945718; x=1774550518; 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=s8vxnjwZOXE7HlXyNRQ9zVADAHm3YyuOJfN0fYbFcx0=; b=DcowVvXzJVusLVQA36y8+F/Q7NaswNbqIr9vHnUY9lpbyMZkV9GFDjBI2+dTTGxNbl vuKzjV0U2K807FZ6loHcWjDjkDeOINSyt0XAny+R9UwaZYugjlzd5k/7xznCbybSHg4r 4YQyGwx9q5S461p9ikU3YD9Uq62KMejSipaTWjlOQtn1VPQnDGmf7UWpRtkbyWLpyGP0 xLyA+rFJrGzNbBbxqZAAPMWJuzc1kRhNIJSVxaaJc/LO4LOWG5QnK4FMV9SHbbbnjgXc PyFdsmPEnU86T/b6DH2fvJSv8e2PJPjNFPaMKk1XGZtOfMwTBTqflHyWtR5PrnblNhzl zQcA== X-Gm-Message-State: AOJu0Yx2JNDLRDgadayMbnlZkxajS4uClTp6qglAMxxWOdnEj1qoVzHR sHJEf7WpamE+yUj1Os3het2LB+GHPyrpT60XIg3JxkjK4LTYaoPfjoqbRXf4Ig== X-Gm-Gg: ATEYQzz8LQkyrARYH3KPqFG+5eYJLIYne6KtpsQFufTRRcQOuQF5tih78Uu7ivoxMUs LjGejb2opupChUHsKtjz9HOz2IxPhIWzLCshqWf36Cu+Jb0RRA2MH3+PWRljNabLt+VbnIbHIJP pKeAEOxdJSYhDGG+7hmXQ8g62o7NqlRIzj9MRLHe9NrbQ6g8iWQlxu4Usnzgo6viW4QQRP9ICfc 0XzTxeH1LPZFIZn6DF66uKSRYRFqD1FzJgkU5bEb+s0upJnryOLzaqa34vTwkP6wAFBsoDNeHZ9 WNRdu7XmHUS/mlZMUhTBUGU7ipc0xbBcqBaggdNLy3N5SrReguKjUyFW2+usXjMvT2VOIlJ/qM7 JX//Z+0RX62AF3HS6CDqZp/yeTn60wA0+Em3SkvaYYIVT50SIl0uzEn3Zew+2WrzdKcVYdpUbse hZ//cxhOYosz06f3CR8kJ+3BpvHOhnwLeWieyj8nE32lFFFrPAQuxHdITNysUfalv99TzjZtZ0b 9FNsQIQeFRZXZJlUC6cxbuh74gIbShwM1CZ+SzW/2cqfAsX3w== X-Received: by 2002:a05:600c:8b31:b0:485:40a4:364 with SMTP id 5b1f17b1804b1-486fee1af50mr2335955e9.26.1773945717254; Thu, 19 Mar 2026 11:41:57 -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.56 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 19 Mar 2026 11:41:56 -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 07/11] arm64: dts: imx8mm-var-som-symphony: Move USB configuration from SOM Date: Thu, 19 Mar 2026 19:40:27 +0100 Message-ID: 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 --- v3->v4: -=20 v2->v3: -=20 v1->v2: -=20 .../dts/freescale/imx8mm-var-som-symphony.dts | 48 ++++++++++++------- .../boot/dts/freescale/imx8mm-var-som.dtsi | 12 ----- 2 files changed, 32 insertions(+), 28 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 2b608470da8e..a425ee0ed8a9 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>; @@ -133,13 +134,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>; + + port { + typec1_dr_sw: endpoint { + remote-endpoint =3D <&usb1_drd_sw>; + }; + }; }; }; =20 @@ -187,27 +195,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 { @@ -262,6 +272,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