From nobody Sun Feb 8 16:53:12 2026 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id F34A1C6FD1D for ; Thu, 23 Mar 2023 11:00:08 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229849AbjCWLAH (ORCPT ); Thu, 23 Mar 2023 07:00:07 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:58632 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231168AbjCWK7c (ORCPT ); Thu, 23 Mar 2023 06:59:32 -0400 Received: from metis.ext.pengutronix.de (metis.ext.pengutronix.de [IPv6:2001:67c:670:201:290:27ff:fe1d:cc33]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 2FF271EBDC for ; Thu, 23 Mar 2023 03:58:39 -0700 (PDT) Received: from drehscheibe.grey.stw.pengutronix.de ([2a0a:edc0:0:c01:1d::a2]) by metis.ext.pengutronix.de with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1pfIeN-0000lT-A1; Thu, 23 Mar 2023 11:58:31 +0100 Received: from [2a0a:edc0:0:1101:1d::28] (helo=dude02.red.stw.pengutronix.de) by drehscheibe.grey.stw.pengutronix.de with esmtp (Exim 4.94.2) (envelope-from ) id 1pfIeM-00682G-5J; Thu, 23 Mar 2023 11:58:30 +0100 Received: from mfe by dude02.red.stw.pengutronix.de with local (Exim 4.94.2) (envelope-from ) id 1pfIeL-008gli-41; Thu, 23 Mar 2023 11:58:29 +0100 From: Marco Felsch To: robh+dt@kernel.org, krzysztof.kozlowski+dt@linaro.org, shawnguo@kernel.org, linux-imx@nxp.com, festevam@gmail.com Cc: linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, kernel@pengutronix.de Subject: [PATCH] arm64: dts: imx8mp-evk: add dual-role usb port1 support Date: Thu, 23 Mar 2023 11:58:26 +0100 Message-Id: <20230323105826.2058003-1-m.felsch@pengutronix.de> X-Mailer: git-send-email 2.30.2 MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-SA-Exim-Connect-IP: 2a0a:edc0:0:c01:1d::a2 X-SA-Exim-Mail-From: mfe@pengutronix.de X-SA-Exim-Scanned: No (on metis.ext.pengutronix.de); SAEximRunCond expanded to false X-PTX-Original-Recipient: linux-kernel@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" The i.MX8MP-EVK has a dual-role usb-type-c port marked as PORT1. By this commit the dual-role support is added which allows the user-space to assign usb-gadget functions to it via the configFS. Signed-off-by: Marco Felsch --- arch/arm64/boot/dts/freescale/imx8mp-evk.dts | 59 ++++++++++++++++++++ 1 file changed, 59 insertions(+) diff --git a/arch/arm64/boot/dts/freescale/imx8mp-evk.dts b/arch/arm64/boot= /dts/freescale/imx8mp-evk.dts index f2d93437084be..982fe35f09a7e 100644 --- a/arch/arm64/boot/dts/freescale/imx8mp-evk.dts +++ b/arch/arm64/boot/dts/freescale/imx8mp-evk.dts @@ -5,7 +5,9 @@ =20 /dts-v1/; =20 +#include #include +#include #include "imx8mp.dtsi" =20 / { @@ -336,6 +338,34 @@ &i2c2 { pinctrl-names =3D "default"; pinctrl-0 =3D <&pinctrl_i2c2>; status =3D "okay"; + + tcpc@50 { + compatible =3D "nxp,ptn5110"; + reg =3D <0x50>; + pinctrl-names =3D "default"; + pinctrl-0 =3D <&pinctrl_tcpc>; + interrupt-parent =3D <&gpio4>; + interrupts =3D <19 IRQ_TYPE_LEVEL_LOW>; + + connector { + compatible =3D "usb-c-connector"; + label =3D "USB-C"; + power-role =3D "dual"; + data-role =3D "dual"; + try-power-role =3D "sink"; + source-pdos =3D ; + sink-pdos =3D ; + op-sink-microwatt =3D <15000000>; + self-powered; + }; + + port { + usb_con_ss: endpoint { + remote-endpoint =3D <&usb_dwc3_0_drd>; + }; + }; + }; }; =20 &i2c3 { @@ -449,14 +479,37 @@ &uart2 { status =3D "okay"; }; =20 +&usb3_phy0 { + status =3D "okay"; +}; + &usb3_phy1 { status =3D "okay"; }; =20 +&usb3_0 { + status =3D "okay"; +}; + &usb3_1 { status =3D "okay"; }; =20 +&usb_dwc3_0 { + dr_mode =3D "otg"; + hnp-disable; + srp-disable; + adp-disable; + usb-role-switch; + status =3D "okay"; + + port { + usb_dwc3_0_drd: endpoint { + remote-endpoint =3D <&usb_con_ss>; + }; + }; +}; + &usb_dwc3_1 { pinctrl-names =3D "default"; pinctrl-0 =3D <&pinctrl_usb1_vbus>; @@ -666,6 +719,12 @@ MX8MP_IOMUXC_SD2_RESET_B__GPIO2_IO19 0x40 >; }; =20 + pinctrl_tcpc: tcpcgrp { + fsl,pins =3D < + MX8MP_IOMUXC_SAI1_TXD7__GPIO4_IO19 0x159 + >; + }; + pinctrl_uart1: uart1grp { fsl,pins =3D < MX8MP_IOMUXC_UART1_RXD__UART1_DCE_RX 0x140 --=20 2.30.2