From nobody Thu Sep 24 22:21:40 2026 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id C5BC945D5E3; Sat, 19 Sep 2026 10:28:25 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1789813705; cv=none; b=dbunBR/gBHP8WhV7/XvT60fDA2U7JLpwdzbYWXzamAG2K1KzAk1SypTCMigThnUudzMTY+PxSlD7daHQzIptGgh9Pnr05IcbAZgey3mhfr02lXcuQ2r002SP939PXaMYFHi62hG1a3uYvgKFUClhEynOp8tvOBzekjjjiO6oVx8= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1789813705; c=relaxed/simple; bh=tuo9FTC9trpH9PTGtyXsmxAlQQNcjXaX7nP/LygpwVE=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=fzuVCb5hb51cggYKaFoOUIsn99BxpzKQcD08cK8iq2lwOYQGmGLZFvxH8lW3BhoGu9KU74478riz5pSm6aLZHCdxitRrrwrUQDam04GnmUdYuhka0Vth6HuYjL+OalIGLhOQ2LF8XlimglxYCXCdhlK20fKKdWgV0ZbheSEggfg= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=jwFvZTGR; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="jwFvZTGR" Received: by smtp.kernel.org (Postfix) with ESMTPS id 5951DC2BCF7; Sat, 19 Sep 2026 10:28:25 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1789813705; bh=tuo9FTC9trpH9PTGtyXsmxAlQQNcjXaX7nP/LygpwVE=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=jwFvZTGRmUC+k+oN6aF/64mcm5/dTwrKKBO4BmG2zNjSHm1VvKoi2Vd2yB2wwvhWJ fBAA6YDspa84ZI8iy7uM9uwtxcLziZh21sK7o6+eNm8l5MLRPnUiuehzwnJdP1JNyz cyEl+CSxfrCLYARIJUeFExL9HZpSIR+oZ7EVOdNQ7ttEjQQrrGME86neXXaKd1VFZ5 N+lZNfKNlyryi8LIo6uesEQeRI3pIyKs9pX+gnGPqJ8eywT/hEp/1IGTxef/MSDtNI ui+LOUSdfy66yhx15sA9dJ0Kw+NOURIrOpA46LY7/LRzsBJDFsPtkbcxxMwysTDIw/ U8ylbA4LqWHnQ== Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 36CCEC982CC; Sat, 19 Sep 2026 10:28:25 +0000 (UTC) From: =?utf-8?q?=E5=AE=89=E5=AE=B9_via_B4_Relay?= Date: Sat, 19 Sep 2026 18:28:17 +0800 Subject: [PATCH v7 1/3] dt-bindings: arm: rockchip: Add FriendlyElec NanoPi R28S 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: <20260919-r28s-upstream-v7-1-e80a6f8ef521@proton.me> References: <20260919-r28s-upstream-v7-0-e80a6f8ef521@proton.me> In-Reply-To: <20260919-r28s-upstream-v7-0-e80a6f8ef521@proton.me> To: Rob Herring , Krzysztof Kozlowski , Conor Dooley , Heiko Stuebner Cc: devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rockchip@lists.infradead.org, linux-kernel@vger.kernel.org, Chukun Pan , Jonas Karlman , jensen , Andrey Korshunov , Diederik de Haas , Conor Dooley , =?utf-8?q?=E5=AE=89=E5=AE=B9?= X-Mailer: b4 0.15.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=1622; i=HystericalDragons@proton.me; h=from:subject:message-id; bh=GjgiG/CwrGYA6nG9hPXid2MYCUCClI7qpstAQn8fUNs=; b=owGbwMvMwCUmepz3XUtTHjvjabUkhqx1ycdlp/poMgdu33paPfj0iRvdTS61+64sX2JaLHfRf 7qgVW9rRykLgxgXg6yYIovspupIoVXRM4tYpI7DzGFlAhnCwMUpABM5Uc/wT/lQ1nMphfCFHz/z G5yNNl24NULE+t3uKE+JlFqpjthpfxgZfl6zswvNaqm3W872/J/n4y2q7z8Kb4l453N7C6fu/+Y adgA= X-Developer-Key: i=HystericalDragons@proton.me; a=openpgp; fpr=1DB27B5912AA5B9972041AC715C70DEE84826E07 X-Endpoint-Received: by B4 Relay for HystericalDragons@proton.me/default with auth_id=1004 X-Original-From: =?utf-8?q?=E5=AE=89=E5=AE=B9?= Reply-To: HystericalDragons@proton.me From: =E5=AE=89=E5=AE=B9 The NanoPi R28S is a dual gigabit Ethernet router board based on the Rockchip RK3528 SoC. It shares its base devicetree with the NanoPi Zero2, so fold both boards into a single RK3528 series entry, which further RK3528 based NanoPi boards can join without renaming it. Acked-by: Conor Dooley Signed-off-by: =E5=AE=89=E5=AE=B9 --- Documentation/devicetree/bindings/arm/rockchip.yaml | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/Documentation/devicetree/bindings/arm/rockchip.yaml b/Document= ation/devicetree/bindings/arm/rockchip.yaml index 81744fbee9..dc69999862 100644 --- a/Documentation/devicetree/bindings/arm/rockchip.yaml +++ b/Documentation/devicetree/bindings/arm/rockchip.yaml @@ -347,6 +347,13 @@ properties: - friendlyarm,nanopi-r2s-plus - const: rockchip,rk3328 =20 + - description: FriendlyElec NanoPi RK3528 series boards + items: + - enum: + - friendlyarm,nanopi-r28s + - friendlyarm,nanopi-zero2 + - const: rockchip,rk3528 + - description: FriendlyElec NanoPi R3S items: - const: friendlyarm,nanopi-r3s @@ -388,11 +395,6 @@ properties: - const: friendlyarm,nanopi-r76s - const: rockchip,rk3576 =20 - - description: FriendlyElec NanoPi Zero2 - items: - - const: friendlyarm,nanopi-zero2 - - const: rockchip,rk3528 - - description: FriendlyElec NanoPC T6 series boards items: - enum: --=20 2.55.0 From nobody Thu Sep 24 22:21:40 2026 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id C54D03C09F5; Sat, 19 Sep 2026 10:28:25 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1789813705; cv=none; b=qlT2AkoVJrtldNaheNXLlny26Bw5ZqaE/qSQ+cp+ZqTNvWvEqL7fx3yCEszVQ2rj9uPGupKwGcCWPQyEFAzSM8oQitH63ufwqw5Y8GQLWAiyibtL00FANBSJKEqoUEwt7JeJ96Y7E4x6DQ+JMPF6hmIIj9JBXUOJU8PfGhwCY2M= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1789813705; c=relaxed/simple; bh=GklM1ZNU9RcI1qd3Ywbc0TKR4fgsIHhPR8uVaoNB6k0=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=pkWvC2eP+Un/slMGyIgczSe1HQKfkqIc7+jEqi51gOIx08BBcI1RTAKmqKK5mc5whHBWWTxV4mQK+2zv+NdA8Z7dajE3hq1Nq1cYGkMxWIoQEvWP/NQ8BwPJucUSmxeE2o2GrBg5j7m4Hkqc8kSzKQzWPnlfqj8LxrjTAwaZ4uQ= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=Ym2au2K+; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="Ym2au2K+" Received: by smtp.kernel.org (Postfix) with ESMTPS id 649F5C2BCFA; Sat, 19 Sep 2026 10:28:25 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1789813705; bh=GklM1ZNU9RcI1qd3Ywbc0TKR4fgsIHhPR8uVaoNB6k0=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=Ym2au2K+0vcBXf6ju6+ZF1Bu5sT+VCumHLkMwQZErqZUwNUA7jJlPz2Wh/ZlmX7j1 YWgAAYJ2v7N9P0BjI2tUbOpIjg7T6ecKluKAX5NC9U7NbQISqbtd2BtCXU9lY5X0PW cME5i2u2+Z0cl+h7b/bJAWBwbq+XbML+bddraIVITATu3/hLsjSPdaa7nyktIPoplm HCX3wqoLS66dAMEbYUIC+qnfSZiFSTUA1hIkJ5meOlMf+bwdHTpZ3otYHamBgyup+U iZdx/kziNC7u4dWtL5B3Gn2PZuRogde+mP9Ar0zy9oLtLVSH6vS1r1QB7YVKq5WAOK jpzQmxNtsVcGQ== Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 4727FC982E1; Sat, 19 Sep 2026 10:28:25 +0000 (UTC) From: =?utf-8?q?=E5=AE=89=E5=AE=B9_via_B4_Relay?= Date: Sat, 19 Sep 2026 18:28:18 +0800 Subject: [PATCH v7 2/3] arm64: dts: rockchip: Split out the common NanoPi RK3528 parts 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: <20260919-r28s-upstream-v7-2-e80a6f8ef521@proton.me> References: <20260919-r28s-upstream-v7-0-e80a6f8ef521@proton.me> In-Reply-To: <20260919-r28s-upstream-v7-0-e80a6f8ef521@proton.me> To: Rob Herring , Krzysztof Kozlowski , Conor Dooley , Heiko Stuebner Cc: devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rockchip@lists.infradead.org, linux-kernel@vger.kernel.org, Chukun Pan , Jonas Karlman , jensen , Andrey Korshunov , Diederik de Haas , =?utf-8?q?=E5=AE=89=E5=AE=B9?= X-Mailer: b4 0.15.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=15840; i=HystericalDragons@proton.me; h=from:subject:message-id; bh=OVYqUKVBomUQYh86hFJiuZIMUUesPgC4S44gBgQRULw=; b=owGbwMvMwCUmepz3XUtTHjvjabUkhqx1ycenTC63e3ct5AP3Q8GkGcmPrsXciGKp1k07//WYv Xlaz37ujlIWBjEuBlkxRRbZTdWRQquiZxaxSB2HmcPKBDKEgYtTACaidIjhfwmT42euQN3+mDiR P8+6ROLfvm2NY+9U7i+sCrJItur5w8hwtMD1S9rOon+RnSarkzKibETq/l9ieSfY0BG9kUWCk48 XAA== X-Developer-Key: i=HystericalDragons@proton.me; a=openpgp; fpr=1DB27B5912AA5B9972041AC715C70DEE84826E07 X-Endpoint-Received: by B4 Relay for HystericalDragons@proton.me/default with auth_id=1004 X-Original-From: =?utf-8?q?=E5=AE=89=E5=AE=B9?= Reply-To: HystericalDragons@proton.me From: =E5=AE=89=E5=AE=B9 The FriendlyElec NanoPi Zero2 and the NanoPi R28S share their power tree, storage, RGMII Ethernet, RTC, LEDs and debug console. Move those parts into rk3528-nanopi.dtsi so the NanoPi R28S can reuse them, and leave only the board specific nodes in the NanoPi Zero2 devicetree. Both boards drive a green LED from GPIO4_PB1, but give it a different purpose, so the common file describes the LED itself and each board adds the function, trigger and default state. While moving the LED pins give them the usual _pin suffix, which frees the led1 label for the LED node. Suggested-by: Chukun Pan Signed-off-by: =E5=AE=89=E5=AE=B9 --- .../boot/dts/rockchip/rk3528-nanopi-zero2.dts | 290 +----------------= --- arch/arm64/boot/dts/rockchip/rk3528-nanopi.dtsi | 291 +++++++++++++++++= ++++ 2 files changed, 296 insertions(+), 285 deletions(-) diff --git a/arch/arm64/boot/dts/rockchip/rk3528-nanopi-zero2.dts b/arch/ar= m64/boot/dts/rockchip/rk3528-nanopi-zero2.dts index 97d85124d2..05ae03622e 100644 --- a/arch/arm64/boot/dts/rockchip/rk3528-nanopi-zero2.dts +++ b/arch/arm64/boot/dts/rockchip/rk3528-nanopi-zero2.dts @@ -2,41 +2,12 @@ =20 /dts-v1/; =20 -#include -#include -#include -#include "rk3528.dtsi" +#include "rk3528-nanopi.dtsi" =20 / { model =3D "FriendlyElec NanoPi Zero2"; compatible =3D "friendlyarm,nanopi-zero2", "rockchip,rk3528"; =20 - aliases { - ethernet0 =3D &gmac1; - i2c1 =3D &i2c1; - mmc0 =3D &sdhci; - mmc1 =3D &sdmmc; - serial0 =3D &uart0; - }; - - chosen { - stdout-path =3D "serial0:1500000n8"; - }; - - adc-keys-0 { - compatible =3D "adc-keys"; - io-channels =3D <&saradc 0>; - io-channel-names =3D "buttons"; - keyup-threshold-microvolt =3D <1800000>; - poll-interval =3D <100>; - - button-maskrom { - label =3D "MASK"; - linux,code =3D ; - press-threshold-microvolt =3D <0>; - }; - }; - adc-keys-1 { compatible =3D "adc-keys"; io-channels =3D <&saradc 1>; @@ -51,28 +22,6 @@ button-recovery { }; }; =20 - leds { - compatible =3D "gpio-leds"; - pinctrl-names =3D "default"; - pinctrl-0 =3D <&led1>, <&led_sys>; - - led-0 { - color =3D ; - default-state =3D "on"; - function =3D LED_FUNCTION_HEARTBEAT; - gpios =3D <&gpio4 RK_PB0 GPIO_ACTIVE_HIGH>; - linux,default-trigger =3D "heartbeat"; - }; - - led-1 { - color =3D ; - default-state =3D "on"; - function =3D LED_FUNCTION_STATUS; - gpios =3D <&gpio4 RK_PB1 GPIO_ACTIVE_HIGH>; - linux,default-trigger =3D "default-on"; - }; - }; - vcc0v6_ddr: regulator-0v6-vcc-ddr { compatible =3D "regulator-fixed"; regulator-name =3D "vcc0v6_ddr"; @@ -83,66 +32,6 @@ vcc0v6_ddr: regulator-0v6-vcc-ddr { vin-supply =3D <&vcc5v0_sys>; }; =20 - vdd_0v9: regulator-0v9-vdd { - compatible =3D "regulator-fixed"; - regulator-name =3D "vdd_0v9"; - regulator-always-on; - regulator-boot-on; - regulator-min-microvolt =3D <900000>; - regulator-max-microvolt =3D <900000>; - vin-supply =3D <&vcc5v0_sys>; - }; - - vcc_ddr: regulator-1v1-vcc-ddr { - compatible =3D "regulator-fixed"; - regulator-name =3D "vcc_ddr"; - regulator-always-on; - regulator-boot-on; - regulator-min-microvolt =3D <1100000>; - regulator-max-microvolt =3D <1100000>; - vin-supply =3D <&vcc5v0_sys>; - }; - - vcc_1v8: regulator-1v8-vcc { - compatible =3D "regulator-fixed"; - regulator-name =3D "vcc_1v8"; - regulator-always-on; - regulator-boot-on; - regulator-min-microvolt =3D <1800000>; - regulator-max-microvolt =3D <1800000>; - vin-supply =3D <&vcc_3v3>; - }; - - vcc_3v3: regulator-3v3-vcc { - compatible =3D "regulator-fixed"; - regulator-name =3D "vcc_3v3"; - regulator-always-on; - regulator-boot-on; - regulator-min-microvolt =3D <3300000>; - regulator-max-microvolt =3D <3300000>; - vin-supply =3D <&vcc5v0_sys>; - }; - - vcc3v3_sd: regulator-3v3-vcc-sd { - compatible =3D "regulator-fixed"; - gpios =3D <&gpio4 RK_PA1 GPIO_ACTIVE_LOW>; - pinctrl-names =3D "default"; - pinctrl-0 =3D <&sdmmc_pwren_l>; - regulator-name =3D "vcc3v3_sd"; - regulator-min-microvolt =3D <3300000>; - regulator-max-microvolt =3D <3300000>; - vin-supply =3D <&vcc_3v3>; - }; - - vcc5v0_sys: regulator-5v0-vcc-sys { - compatible =3D "regulator-fixed"; - regulator-name =3D "vcc5v0_sys"; - regulator-always-on; - regulator-boot-on; - regulator-min-microvolt =3D <5000000>; - regulator-max-microvolt =3D <5000000>; - }; - usb2_host_5v: regulator-5v0-usb2-host { compatible =3D "regulator-fixed"; enable-active-high; @@ -154,138 +43,15 @@ usb2_host_5v: regulator-5v0-usb2-host { regulator-max-microvolt =3D <5000000>; vin-supply =3D <&vcc5v0_sys>; }; - - vccio_sd: regulator-vccio-sd { - compatible =3D "regulator-gpio"; - gpios =3D <&gpio4 RK_PB6 GPIO_ACTIVE_HIGH>; - pinctrl-names =3D "default"; - pinctrl-0 =3D <&sdmmc_vol_ctrl_h>; - regulator-name =3D "vccio_sd"; - regulator-min-microvolt =3D <1800000>; - regulator-max-microvolt =3D <3300000>; - states =3D <1800000 0x0>, <3300000 0x1>; - vin-supply =3D <&vcc5v0_sys>; - }; - - vdd_arm: regulator-vdd-arm { - compatible =3D "pwm-regulator"; - pwms =3D <&pwm1 0 5000 PWM_POLARITY_INVERTED>; - pwm-supply =3D <&vcc5v0_sys>; - regulator-name =3D "vdd_arm"; - regulator-always-on; - regulator-boot-on; - regulator-min-microvolt =3D <746000>; - regulator-max-microvolt =3D <1201000>; - regulator-settling-time-up-us =3D <250>; - }; - - vdd_logic: regulator-vdd-logic { - compatible =3D "pwm-regulator"; - pwms =3D <&pwm2 0 5000 PWM_POLARITY_INVERTED>; - pwm-supply =3D <&vcc5v0_sys>; - regulator-name =3D "vdd_logic"; - regulator-always-on; - regulator-boot-on; - regulator-min-microvolt =3D <705000>; - regulator-max-microvolt =3D <1006000>; - regulator-settling-time-up-us =3D <250>; - }; -}; - -&cpu0 { - cpu-supply =3D <&vdd_arm>; -}; - -&cpu1 { - cpu-supply =3D <&vdd_arm>; -}; - -&cpu2 { - cpu-supply =3D <&vdd_arm>; -}; - -&cpu3 { - cpu-supply =3D <&vdd_arm>; }; =20 -&gmac1 { - clock_in_out =3D "output"; - phy-handle =3D <&rgmii_phy>; - phy-mode =3D "rgmii-id"; - phy-supply =3D <&vcc_3v3>; - pinctrl-names =3D "default"; - pinctrl-0 =3D <&rgmii_miim>, <&rgmii_tx_bus2>, <&rgmii_rx_bus2>, - <&rgmii_rgmii_clk>, <&rgmii_rgmii_bus>; - status =3D "okay"; -}; - -&gpu { - mali-supply =3D <&vdd_logic>; - status =3D "okay"; -}; - -&i2c1 { - pinctrl-names =3D "default"; - pinctrl-0 =3D <&i2c1m0_xfer>; - status =3D "okay"; - - hym8563: rtc@51 { - compatible =3D "haoyu,hym8563"; - reg =3D <0x51>; - #clock-cells =3D <0>; - interrupt-parent =3D <&gpio4>; - interrupts =3D ; - pinctrl-names =3D "default"; - pinctrl-0 =3D <&rtc_int_l>; - wakeup-source; - }; -}; - -&mdio1 { - rgmii_phy: ethernet-phy@1 { - compatible =3D "ethernet-phy-ieee802.3-c22"; - reg =3D <0x1>; - pinctrl-names =3D "default"; - pinctrl-0 =3D <&gmac1_rstn_l>; - reset-assert-us =3D <20000>; - reset-deassert-us =3D <100000>; - reset-gpios =3D <&gpio4 RK_PC2 GPIO_ACTIVE_LOW>; - }; +&led1 { + default-state =3D "on"; + function =3D LED_FUNCTION_STATUS; + linux,default-trigger =3D "default-on"; }; =20 &pinctrl { - ethernet { - gmac1_rstn_l: gmac1-rstn-l { - rockchip,pins =3D <4 RK_PC2 RK_FUNC_GPIO &pcfg_pull_none>; - }; - }; - - leds { - led1: led1 { - rockchip,pins =3D <4 RK_PB1 RK_FUNC_GPIO &pcfg_pull_none>; - }; - - led_sys: led-sys { - rockchip,pins =3D <4 RK_PB0 RK_FUNC_GPIO &pcfg_pull_none>; - }; - }; - - rtc { - rtc_int_l: rtc-int-l { - rockchip,pins =3D <4 RK_PC1 RK_FUNC_GPIO &pcfg_pull_up>; - }; - }; - - sdmmc { - sdmmc_vol_ctrl_h: sdmmc-vol-ctrl-h { - rockchip,pins =3D <4 RK_PB6 RK_FUNC_GPIO &pcfg_pull_none>; - }; - - sdmmc_pwren_l: sdmmc-pwren-l { - rockchip,pins =3D <4 RK_PA1 RK_FUNC_GPIO &pcfg_pull_none>; - }; - }; - usb { usb20_host1_pwren: usb20-host1-pwren { rockchip,pins =3D <4 RK_PB5 RK_FUNC_GPIO &pcfg_pull_none>; @@ -293,52 +59,6 @@ usb20_host1_pwren: usb20-host1-pwren { }; }; =20 -&pwm1 { - pinctrl-names =3D "default"; - pinctrl-0 =3D <&pwm1m0_pins>; - status =3D "okay"; -}; - -&pwm2 { - pinctrl-names =3D "default"; - pinctrl-0 =3D <&pwm2m0_pins>; - status =3D "okay"; -}; - -&saradc { - vref-supply =3D <&vcc_1v8>; - status =3D "okay"; -}; - -&sdhci { - bus-width =3D <8>; - cap-mmc-highspeed; - mmc-hs200-1_8v; - no-sd; - no-sdio; - non-removable; - vmmc-supply =3D <&vcc_3v3>; - vqmmc-supply =3D <&vcc_1v8>; - status =3D "okay"; -}; - -&sdmmc { - bus-width =3D <4>; - cap-mmc-highspeed; - cap-sd-highspeed; - disable-wp; - sd-uhs-sdr104; - vmmc-supply =3D <&vcc3v3_sd>; - vqmmc-supply =3D <&vccio_sd>; - status =3D "okay"; -}; - -&uart0 { - pinctrl-names =3D "default"; - pinctrl-0 =3D <&uart0m0_xfer>; - status =3D "okay"; -}; - &usb_host0_ehci { status =3D "okay"; }; diff --git a/arch/arm64/boot/dts/rockchip/rk3528-nanopi.dtsi b/arch/arm64/b= oot/dts/rockchip/rk3528-nanopi.dtsi new file mode 100644 index 0000000000..4b3f26dab6 --- /dev/null +++ b/arch/arm64/boot/dts/rockchip/rk3528-nanopi.dtsi @@ -0,0 +1,291 @@ +// SPDX-License-Identifier: (GPL-2.0+ OR MIT) + +#include +#include +#include +#include "rk3528.dtsi" + +/ { + aliases { + ethernet0 =3D &gmac1; + i2c1 =3D &i2c1; + mmc0 =3D &sdhci; + mmc1 =3D &sdmmc; + serial0 =3D &uart0; + }; + + chosen { + stdout-path =3D "serial0:1500000n8"; + }; + + adc-keys-0 { + compatible =3D "adc-keys"; + io-channels =3D <&saradc 0>; + io-channel-names =3D "buttons"; + keyup-threshold-microvolt =3D <1800000>; + poll-interval =3D <100>; + + button-maskrom { + label =3D "MASK"; + linux,code =3D ; + press-threshold-microvolt =3D <0>; + }; + }; + + leds: leds { + compatible =3D "gpio-leds"; + pinctrl-names =3D "default"; + pinctrl-0 =3D <&led_sys_pin>, <&led1_pin>; + + led-0 { + color =3D ; + default-state =3D "on"; + function =3D LED_FUNCTION_HEARTBEAT; + gpios =3D <&gpio4 RK_PB0 GPIO_ACTIVE_HIGH>; + linux,default-trigger =3D "heartbeat"; + }; + + /* The purpose of the second LED differs per board. */ + led1: led-1 { + color =3D ; + gpios =3D <&gpio4 RK_PB1 GPIO_ACTIVE_HIGH>; + }; + }; + + vdd_0v9: regulator-0v9-vdd { + compatible =3D "regulator-fixed"; + regulator-name =3D "vdd_0v9"; + regulator-always-on; + regulator-boot-on; + regulator-min-microvolt =3D <900000>; + regulator-max-microvolt =3D <900000>; + vin-supply =3D <&vcc5v0_sys>; + }; + + vcc_ddr: regulator-1v1-vcc-ddr { + compatible =3D "regulator-fixed"; + regulator-name =3D "vcc_ddr"; + regulator-always-on; + regulator-boot-on; + regulator-min-microvolt =3D <1100000>; + regulator-max-microvolt =3D <1100000>; + vin-supply =3D <&vcc5v0_sys>; + }; + + vcc_1v8: regulator-1v8-vcc { + compatible =3D "regulator-fixed"; + regulator-name =3D "vcc_1v8"; + regulator-always-on; + regulator-boot-on; + regulator-min-microvolt =3D <1800000>; + regulator-max-microvolt =3D <1800000>; + vin-supply =3D <&vcc_3v3>; + }; + + vcc_3v3: regulator-3v3-vcc { + compatible =3D "regulator-fixed"; + regulator-name =3D "vcc_3v3"; + regulator-always-on; + regulator-boot-on; + regulator-min-microvolt =3D <3300000>; + regulator-max-microvolt =3D <3300000>; + vin-supply =3D <&vcc5v0_sys>; + }; + + vcc3v3_sd: regulator-3v3-vcc-sd { + compatible =3D "regulator-fixed"; + gpios =3D <&gpio4 RK_PA1 GPIO_ACTIVE_LOW>; + pinctrl-names =3D "default"; + pinctrl-0 =3D <&sdmmc_pwren_l>; + regulator-name =3D "vcc3v3_sd"; + regulator-min-microvolt =3D <3300000>; + regulator-max-microvolt =3D <3300000>; + vin-supply =3D <&vcc_3v3>; + }; + + vcc5v0_sys: regulator-5v0-vcc-sys { + compatible =3D "regulator-fixed"; + regulator-name =3D "vcc5v0_sys"; + regulator-always-on; + regulator-boot-on; + regulator-min-microvolt =3D <5000000>; + regulator-max-microvolt =3D <5000000>; + }; + + vccio_sd: regulator-vccio-sd { + compatible =3D "regulator-gpio"; + gpios =3D <&gpio4 RK_PB6 GPIO_ACTIVE_HIGH>; + pinctrl-names =3D "default"; + pinctrl-0 =3D <&sdmmc_vol_ctrl_h>; + regulator-name =3D "vccio_sd"; + regulator-min-microvolt =3D <1800000>; + regulator-max-microvolt =3D <3300000>; + states =3D <1800000 0x0>, <3300000 0x1>; + vin-supply =3D <&vcc5v0_sys>; + }; + + vdd_arm: regulator-vdd-arm { + compatible =3D "pwm-regulator"; + pwms =3D <&pwm1 0 5000 PWM_POLARITY_INVERTED>; + pwm-supply =3D <&vcc5v0_sys>; + regulator-name =3D "vdd_arm"; + regulator-always-on; + regulator-boot-on; + regulator-min-microvolt =3D <746000>; + regulator-max-microvolt =3D <1201000>; + regulator-settling-time-up-us =3D <250>; + }; + + vdd_logic: regulator-vdd-logic { + compatible =3D "pwm-regulator"; + pwms =3D <&pwm2 0 5000 PWM_POLARITY_INVERTED>; + pwm-supply =3D <&vcc5v0_sys>; + regulator-name =3D "vdd_logic"; + regulator-always-on; + regulator-boot-on; + regulator-min-microvolt =3D <705000>; + regulator-max-microvolt =3D <1006000>; + regulator-settling-time-up-us =3D <250>; + }; +}; + +&cpu0 { + cpu-supply =3D <&vdd_arm>; +}; + +&cpu1 { + cpu-supply =3D <&vdd_arm>; +}; + +&cpu2 { + cpu-supply =3D <&vdd_arm>; +}; + +&cpu3 { + cpu-supply =3D <&vdd_arm>; +}; + +&gmac1 { + clock_in_out =3D "output"; + phy-handle =3D <&rgmii_phy>; + phy-mode =3D "rgmii-id"; + phy-supply =3D <&vcc_3v3>; + pinctrl-names =3D "default"; + pinctrl-0 =3D <&rgmii_miim>, <&rgmii_tx_bus2>, <&rgmii_rx_bus2>, + <&rgmii_rgmii_clk>, <&rgmii_rgmii_bus>; + status =3D "okay"; +}; + +&gpu { + mali-supply =3D <&vdd_logic>; + status =3D "okay"; +}; + +&i2c1 { + pinctrl-names =3D "default"; + pinctrl-0 =3D <&i2c1m0_xfer>; + status =3D "okay"; + + hym8563: rtc@51 { + compatible =3D "haoyu,hym8563"; + reg =3D <0x51>; + #clock-cells =3D <0>; + interrupt-parent =3D <&gpio4>; + interrupts =3D ; + pinctrl-names =3D "default"; + pinctrl-0 =3D <&rtc_int_l>; + wakeup-source; + }; +}; + +&mdio1 { + rgmii_phy: ethernet-phy@1 { + compatible =3D "ethernet-phy-ieee802.3-c22"; + reg =3D <0x1>; + pinctrl-names =3D "default"; + pinctrl-0 =3D <&gmac1_rstn_l>; + reset-assert-us =3D <20000>; + reset-deassert-us =3D <100000>; + reset-gpios =3D <&gpio4 RK_PC2 GPIO_ACTIVE_LOW>; + }; +}; + +&pinctrl { + ethernet { + gmac1_rstn_l: gmac1-rstn-l { + rockchip,pins =3D <4 RK_PC2 RK_FUNC_GPIO &pcfg_pull_none>; + }; + }; + + leds { + led_sys_pin: led-sys-pin { + rockchip,pins =3D <4 RK_PB0 RK_FUNC_GPIO &pcfg_pull_none>; + }; + + led1_pin: led1-pin { + rockchip,pins =3D <4 RK_PB1 RK_FUNC_GPIO &pcfg_pull_none>; + }; + }; + + rtc { + rtc_int_l: rtc-int-l { + rockchip,pins =3D <4 RK_PC1 RK_FUNC_GPIO &pcfg_pull_up>; + }; + }; + + sdmmc { + sdmmc_pwren_l: sdmmc-pwren-l { + rockchip,pins =3D <4 RK_PA1 RK_FUNC_GPIO &pcfg_pull_none>; + }; + + sdmmc_vol_ctrl_h: sdmmc-vol-ctrl-h { + rockchip,pins =3D <4 RK_PB6 RK_FUNC_GPIO &pcfg_pull_none>; + }; + }; +}; + +&pwm1 { + pinctrl-names =3D "default"; + pinctrl-0 =3D <&pwm1m0_pins>; + status =3D "okay"; +}; + +&pwm2 { + pinctrl-names =3D "default"; + pinctrl-0 =3D <&pwm2m0_pins>; + status =3D "okay"; +}; + +&saradc { + vref-supply =3D <&vcc_1v8>; + status =3D "okay"; +}; + +&sdhci { + bus-width =3D <8>; + cap-mmc-highspeed; + mmc-hs200-1_8v; + no-sd; + no-sdio; + non-removable; + vmmc-supply =3D <&vcc_3v3>; + vqmmc-supply =3D <&vcc_1v8>; + status =3D "okay"; +}; + +&sdmmc { + bus-width =3D <4>; + cap-mmc-highspeed; + cap-sd-highspeed; + disable-wp; + sd-uhs-sdr104; + vmmc-supply =3D <&vcc3v3_sd>; + vqmmc-supply =3D <&vccio_sd>; + status =3D "okay"; +}; + +&uart0 { + pinctrl-names =3D "default"; + pinctrl-0 =3D <&uart0m0_xfer>; + status =3D "okay"; +}; --=20 2.55.0 From nobody Thu Sep 24 22:21:40 2026 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id C4F8E2F60CC; Sat, 19 Sep 2026 10:28:25 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1789813705; cv=none; b=cAs22PJuTb3tembsDzDtfNXLbDEEeY3XXGYaoxAY0goS3tuJzTMuHBA6abwjFXUSjfzOFsKsenf5z0/gt+XLCHrLCUygPG8421swxf5CEyXtFy7n2dkoL1uZbFyOmNbZ4SzPYio84IqwI0IPPXN56iTLdXvNKd5UDvHSli2uDI8= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1789813705; c=relaxed/simple; bh=4xyy6NrJdiBNfkE7H63oBX0hpY5sXGuE/HGHGvQygkg=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=NQb3i5beH8g/Yv036M0YoTCzLHAIXuo/fdbD6ygWB4/pgAkTD2k/2dMneol/VaxFw0/3sV5sR7jYy8RHk+LO1xsj7qAS2+xs3Opo1O7lBrUqI3+9eg+o65KCSrVGRI0mEVsPrEbiZYuUleYILQtAFK3aoWG/kgpDKgfP0M/i6DY= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=m6UrPncW; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="m6UrPncW" Received: by smtp.kernel.org (Postfix) with ESMTPS id 70EE8C2BCFB; Sat, 19 Sep 2026 10:28:25 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1789813705; bh=4xyy6NrJdiBNfkE7H63oBX0hpY5sXGuE/HGHGvQygkg=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=m6UrPncWcutPaC/aA0yIxH9fax80yaAC4ClT4eoUbOrn6o41hehlZcl9uWMElmqBo gsCJUv2sRl6zWDfdkHGFSSrrRwu1kJwlXW9QKqHuwqBu1ZwG6BGiLlPIwpi9TBeDaf sQnXhwMdtigDNul/9FwVY1a//5YVj+dvw6GbO6B1DGT5o5WUI9CeqHY113k3W6RTis WXCvUW9oVItEJw5miKrwUCUeuFqNOxPvwcEFi4NpBbddi2HotlLq43d8EZiTyitANE yqmYe8JjFfMM2O6NWe9PlJGg/0armj/LPMo3cpQa1OpSI7/ALVfQ58dSYUFNG55R8l /OlWTwFr7RTsg== Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 54D4AC982D7; Sat, 19 Sep 2026 10:28:25 +0000 (UTC) From: =?utf-8?q?=E5=AE=89=E5=AE=B9_via_B4_Relay?= Date: Sat, 19 Sep 2026 18:28:19 +0800 Subject: [PATCH v7 3/3] arm64: dts: rockchip: Add devicetree for the FriendlyElec NanoPi R28S 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: <20260919-r28s-upstream-v7-3-e80a6f8ef521@proton.me> References: <20260919-r28s-upstream-v7-0-e80a6f8ef521@proton.me> In-Reply-To: <20260919-r28s-upstream-v7-0-e80a6f8ef521@proton.me> To: Rob Herring , Krzysztof Kozlowski , Conor Dooley , Heiko Stuebner Cc: devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rockchip@lists.infradead.org, linux-kernel@vger.kernel.org, Chukun Pan , Jonas Karlman , jensen , Andrey Korshunov , Diederik de Haas , =?utf-8?q?=E5=AE=89=E5=AE=B9?= X-Mailer: b4 0.15.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=5467; i=HystericalDragons@proton.me; h=from:subject:message-id; bh=NuAc4jMDfk/Tx8+/OfV/iX5ruACbgsmXbYkj7OTFAfs=; b=owGbwMvMwCUmepz3XUtTHjvjabUkhqx1yceXr2ayXmq7evK12Getv6IOS7/RWDCr5tS/nrtyH +Yk1S9z7ihlYRDjYpAVU2SR3VQdKbQqemYRi9RxmDmsTCBDGLg4BWAihW8YGS5WrotmfXCFa8GR Oyopu0Kfah5es3NNpzn7309rdkxYlW7DyLD1uCPzZPa0hdkMVhIbjvdZnbpvwLkgednNhqZ/7KL 5zxkB X-Developer-Key: i=HystericalDragons@proton.me; a=openpgp; fpr=1DB27B5912AA5B9972041AC715C70DEE84826E07 X-Endpoint-Received: by B4 Relay for HystericalDragons@proton.me/default with auth_id=1004 X-Original-From: =?utf-8?q?=E5=AE=89=E5=AE=B9?= Reply-To: HystericalDragons@proton.me From: =E5=AE=89=E5=AE=B9 The NanoPi R28S is a dual gigabit Ethernet router board based on the Rockchip RK3528 SoC, designed and developed by FriendlyElec. It shares most of its design with the NanoPi Zero2, so it builds on the common rk3528-nanopi.dtsi. Specification: - Rockchip RK3528 - 1GB RAM - eMMC socket (optional) - MicroSD slot - 1x 1000Base-T (GMAC1, Realtek RTL8211F) - 1x 1000Base-T (PCIe, Realtek RTL8111H) - AICSemi AIC8800D80 SDIO WiFi + Bluetooth - 3x LEDs (SYS, LAN, WAN) - 1x USB 2.0 Type-C OTG, shared with the 5V power input - User and MaskROM buttons - Haoyu HYM8563 RTC - 1x USB Type-C debug UART (onboard WCH CH340E) The AIC8800D80 has no upstream driver yet, so only the SDIO and UART controllers it hangs off are enabled, along with the WiFi and Bluetooth wake and power pins taken from the schematics. Assisted-by: LLM Signed-off-by: =E5=AE=89=E5=AE=B9 --- arch/arm64/boot/dts/rockchip/Makefile | 1 + .../arm64/boot/dts/rockchip/rk3528-nanopi-r28s.dts | 160 +++++++++++++++++= ++++ 2 files changed, 161 insertions(+) diff --git a/arch/arm64/boot/dts/rockchip/Makefile b/arch/arm64/boot/dts/ro= ckchip/Makefile index b677914cd3..51a9889088 100644 --- a/arch/arm64/boot/dts/rockchip/Makefile +++ b/arch/arm64/boot/dts/rockchip/Makefile @@ -94,6 +94,7 @@ dtb-$(CONFIG_ARCH_ROCKCHIP) +=3D rk3399-vicharak-vaaman.d= tb dtb-$(CONFIG_ARCH_ROCKCHIP) +=3D rk3399pro-rock-pi-n10.dtb dtb-$(CONFIG_ARCH_ROCKCHIP) +=3D rk3528-armsom-sige1.dtb dtb-$(CONFIG_ARCH_ROCKCHIP) +=3D rk3528-hinlink-h28k.dtb +dtb-$(CONFIG_ARCH_ROCKCHIP) +=3D rk3528-nanopi-r28s.dtb dtb-$(CONFIG_ARCH_ROCKCHIP) +=3D rk3528-nanopi-zero2.dtb dtb-$(CONFIG_ARCH_ROCKCHIP) +=3D rk3528-radxa-e20c.dtb dtb-$(CONFIG_ARCH_ROCKCHIP) +=3D rk3528-rock-2a.dtb diff --git a/arch/arm64/boot/dts/rockchip/rk3528-nanopi-r28s.dts b/arch/arm= 64/boot/dts/rockchip/rk3528-nanopi-r28s.dts new file mode 100644 index 0000000000..294b66f60e --- /dev/null +++ b/arch/arm64/boot/dts/rockchip/rk3528-nanopi-r28s.dts @@ -0,0 +1,160 @@ +// SPDX-License-Identifier: (GPL-2.0+ OR MIT) +/* + * Copyright (c) 2022 Rockchip Electronics Co., Ltd. + * Copyright (c) 2026 FriendlyElec Computer Tech. Co., Ltd. + * Copyright (c) 2026 =E5=AE=89=E5=AE=B9 + */ + +/dts-v1/; + +#include "rk3528-nanopi.dtsi" + +/ { + model =3D "FriendlyElec NanoPi R28S"; + compatible =3D "friendlyarm,nanopi-r28s", "rockchip,rk3528"; + + aliases { + mmc2 =3D &sdio0; + serial2 =3D &uart2; + }; + + gpio-keys { + compatible =3D "gpio-keys"; + pinctrl-names =3D "default"; + pinctrl-0 =3D <&gpio4_b2_usr_btn>; + + button-user { + debounce-interval =3D <50>; + gpios =3D <&gpio4 RK_PB2 GPIO_ACTIVE_LOW>; + label =3D "USER"; + linux,code =3D ; + wakeup-source; + }; + }; + + sdio_pwrseq: sdio-pwrseq { + compatible =3D "mmc-pwrseq-simple"; + pinctrl-names =3D "default"; + pinctrl-0 =3D <&pwr_wf>; + post-power-on-delay-ms =3D <100>; + reset-gpios =3D <&gpio1 RK_PC2 GPIO_ACTIVE_LOW>; + }; +}; + +&combphy { + status =3D "okay"; +}; + +&led1 { + default-state =3D "off"; + function =3D LED_FUNCTION_WAN; + linux,default-trigger =3D "netdev"; +}; + +&leds { + pinctrl-names =3D "default"; + pinctrl-0 =3D <&led_sys_pin>, <&led1_pin>, <&led2_pin>; + + led-2 { + color =3D ; + default-state =3D "off"; + function =3D LED_FUNCTION_LAN; + gpios =3D <&gpio4 RK_PB3 GPIO_ACTIVE_HIGH>; + linux,default-trigger =3D "netdev"; + }; +}; + +&pcie { + pinctrl-names =3D "default"; + pinctrl-0 =3D <&pcie_eth_perstb>; + reset-gpios =3D <&gpio4 RK_PC0 GPIO_ACTIVE_HIGH>; + vpcie3v3-supply =3D <&vcc_3v3>; + status =3D "okay"; +}; + +&pinctrl { + bluetooth { + bt_wake_host: bt-wake-host { + rockchip,pins =3D <1 RK_PB5 RK_FUNC_GPIO &pcfg_pull_down>; + }; + + host_wake_bt: host-wake-bt { + rockchip,pins =3D <1 RK_PB4 RK_FUNC_GPIO &pcfg_pull_none>; + }; + }; + + gpio-keys { + gpio4_b2_usr_btn: gpio4-b2-usr-btn { + rockchip,pins =3D <4 RK_PB2 RK_FUNC_GPIO &pcfg_pull_up>; + }; + }; + + leds { + led2_pin: led2-pin { + rockchip,pins =3D <4 RK_PB3 RK_FUNC_GPIO &pcfg_pull_none>; + }; + }; + + pcie { + pcie_eth_perstb: pcie-eth-perstb { + rockchip,pins =3D <4 RK_PC0 RK_FUNC_GPIO &pcfg_pull_none>; + }; + }; + + wifi { + host_wake_wl: host-wake-wl { + rockchip,pins =3D <1 RK_PA6 RK_FUNC_GPIO &pcfg_pull_none>; + }; + + pwr_wf: pwr-wf { + rockchip,pins =3D <1 RK_PC2 RK_FUNC_GPIO &pcfg_pull_none>; + }; + + wl_wake_host: wl-wake-host { + rockchip,pins =3D <1 RK_PA7 RK_FUNC_GPIO &pcfg_pull_down>; + }; + }; +}; + +&sdio0 { + bus-width =3D <4>; + cap-sd-highspeed; + cap-sdio-irq; + keep-power-in-suspend; + mmc-pwrseq =3D <&sdio_pwrseq>; + no-mmc; + no-sd; + non-removable; + sd-uhs-sdr104; + vmmc-supply =3D <&vcc_3v3>; + vqmmc-supply =3D <&vcc_1v8>; + status =3D "okay"; +}; + +&uart2 { + dma-names =3D "tx", "rx"; + pinctrl-names =3D "default"; + pinctrl-0 =3D <&uart2m1_xfer>, <&uart2m1_ctsn>, <&uart2m1_rtsn>; + uart-has-rtscts; + status =3D "okay"; +}; + +&usb_host0_xhci { + /* + * The Type-C port is also the 5V power input, so it comes up as a + * device, but host mode works with an externally powered hub. + */ + extcon =3D <&usb2phy>; + maximum-speed =3D "high-speed"; + phys =3D <&usb2phy_otg>; + phy-names =3D "usb2-phy"; + status =3D "okay"; +}; + +&usb2phy { + status =3D "okay"; +}; + +&usb2phy_otg { + status =3D "okay"; +}; --=20 2.55.0