From nobody Wed Dec 17 08:45:06 2025 Received: from sender3-pp-f112.zoho.com (sender3-pp-f112.zoho.com [136.143.184.112]) (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 71A8C220F5B; Fri, 9 May 2025 12:32:35 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=pass smtp.client-ip=136.143.184.112 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1746793957; cv=pass; b=FdFhx9p8eYXfCkxlPJYkB5zAby1mqe9tV34rSjoYbwwKP2M9WOjWpGnphroqL0EtdVUvsSQtebduQh0GeSLcp+qcGuqtzS7qf3TiMRODMHvIfuyYTmiwQq5VGexhhda/lX6xoVlVvn+57Il+n1ajRZqZabiJ868WJ0Zl28Sdk6c= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1746793957; c=relaxed/simple; bh=7exv76pE9WTIBhbWeEjyw+QMTLuIi+Vi/oAYAp62DjM=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=ZlhhZQOnpq0KcqujvfVhFXpbIYJ490bqXnSa4oNjqbD6WeaLcyRpTb7pHtKfdkXYx7Hcz+cot6AmlZrOFhqOWsfJK9Wa67qQgtZDoZXaR1SMkiMH+J6/sdA7FTlOrYDsIRPtqiQvg9UN+n1niQogmZeub/Vx3Da75vJEvrY/xvM= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=collabora.com; spf=pass smtp.mailfrom=collabora.com; dkim=pass (1024-bit key) header.d=collabora.com header.i=nicolas.frattaroli@collabora.com header.b=Z4vB6UfR; arc=pass smtp.client-ip=136.143.184.112 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=collabora.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=collabora.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=collabora.com header.i=nicolas.frattaroli@collabora.com header.b="Z4vB6UfR" ARC-Seal: i=1; a=rsa-sha256; t=1746793935; cv=none; d=zohomail.com; s=zohoarc; b=iXsLC+WQyvz1lZEZo4IRKOrulJgxy0rCF5bC9VZcvzT35YlfiLP0Qn65urAvv5/f2XEO1QpfbQ5+2coWPu9/FS5qDo2i4YbJY3tzS11xW74uobj52yfMKFgX4msb4oPb+OkSa+d55qhyuETjjm3czPio2AluABL0Ka4tsD/+tN8= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1746793935; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:MIME-Version:Message-ID:References:Subject:Subject:To:To:Message-Id:Reply-To; bh=ApfxD9/XCiwSS8Ht1mSzUW0TktlTZHS7Rs9rDYQUcjU=; b=O8vzBNpg6vCiKMBeiT0Vdq8tGmaSUOBX35as4HL++IHgOnICN7pw4RsUNTSeZo473+FCKVMpQxJ5wqPVuTgthvyd7Ihe1+N172EwG+HPnEO2Z4TxTGTUUs0+neUeHerkLYZmNbL2BLccvzT7b4M2jobUXka80JeWq3xYaxNXEx0= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass header.i=collabora.com; spf=pass smtp.mailfrom=nicolas.frattaroli@collabora.com; dmarc=pass header.from= DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; t=1746793935; s=zohomail; d=collabora.com; i=nicolas.frattaroli@collabora.com; h=From:From:Date:Date:Subject:Subject:MIME-Version:Content-Type:Content-Transfer-Encoding:Message-Id:Message-Id:References:In-Reply-To:To:To:Cc:Cc:Reply-To; bh=ApfxD9/XCiwSS8Ht1mSzUW0TktlTZHS7Rs9rDYQUcjU=; b=Z4vB6UfRRnGUGTcmemsqqluVBCxUJiCzY8Rxfu2hkB7QwG15RgQ9qnqDKjS+XCcq bXUCbPl6TjAvIKVmF359f5urxH5k0z7RNyKjh0oDJfoFab/z385v5c4nzW6wSTbyCsl cx/UcS7SXpJjpkKVdejVW/qGSrAmjkWdr1BhinhY= Received: by mx.zohomail.com with SMTPS id 1746793933666787.5415614720451; Fri, 9 May 2025 05:32:13 -0700 (PDT) From: Nicolas Frattaroli Date: Fri, 09 May 2025 14:31:41 +0200 Subject: [PATCH 1/3] dt-bindings: arm: rockchip: add RADXA ROCK 5T 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: <20250509-add-rock5t-v1-1-cff1de74eced@collabora.com> References: <20250509-add-rock5t-v1-0-cff1de74eced@collabora.com> In-Reply-To: <20250509-add-rock5t-v1-0-cff1de74eced@collabora.com> To: Rob Herring , Krzysztof Kozlowski , Conor Dooley , Heiko Stuebner , Sebastian Reichel Cc: kernel@collabora.com, devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rockchip@lists.infradead.org, linux-kernel@vger.kernel.org, Nicolas Frattaroli X-Mailer: b4 0.14.2 The RADXA ROCK 5T is a single board computer aimed at industrial use. Its design is similar to the ROCK 5B+, but it does away with one of the USB-C PD inputs, and uses one combination USB3/SATA/PCIe PHY for an additional second 2.5G PCIe network card instead of USB3. Link: https://radxa.com/products/rock5/5t/ Signed-off-by: Nicolas Frattaroli Acked-by: Krzysztof Kozlowski --- Documentation/devicetree/bindings/arm/rockchip.yaml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/Documentation/devicetree/bindings/arm/rockchip.yaml b/Document= ation/devicetree/bindings/arm/rockchip.yaml index 8f324417a3bdb3f5e11b03c86d18df4b6f60a43c..d48522806ce3c36f4531f8d6a99= 9838e9eeb49fe 100644 --- a/Documentation/devicetree/bindings/arm/rockchip.yaml +++ b/Documentation/devicetree/bindings/arm/rockchip.yaml @@ -961,6 +961,11 @@ properties: - const: radxa,rock-s0 - const: rockchip,rk3308 =20 + - description: Radxa ROCK 5T + items: + - const: radxa,rock-5t + - const: rockchip,rk3588 + - description: Radxa ZERO 3W/3E items: - enum: --=20 2.49.0 From nobody Wed Dec 17 08:45:06 2025 Received: from sender4-pp-f112.zoho.com (sender4-pp-f112.zoho.com [136.143.188.112]) (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 7AA8829114A; Fri, 9 May 2025 12:32:39 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=pass smtp.client-ip=136.143.188.112 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1746793962; cv=pass; b=G5xIjEtUsmlKy2C1JxlRkXyrqWQoA5TPc9vRnhb0dt2+q7vi4PoE+5AqiZOvz6eXGcoc2gBZx7ol2ozfDNajDJLTtFw1aOoy/7i+hiRBcGEztV0VCTo3ghUuszbLtqW7CINoaYHCbyKz8dP1m/9uDU9mDzSMRGJfKaZxKxGptms= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1746793962; c=relaxed/simple; bh=wskEbOLNsmKsEpyvJaj9OxtyL1SZ9kzmuAc4scoN2sw=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=RE7oi+pVpPYVvhXhro7huzMiDMZNRMINIa+wq3Tnjgxd3A15rQZwzPwwFWqSZWibWji8dBlUHMwsa1jrchcJ0jNimCZz2lfivW1oq0IPOpPhZmMLjUk6HRYK8T59DFpp5KwuVu6WTnPloujT/jFwYvWQOSXbqlZnajd3Q+HjvmQ= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=collabora.com; spf=pass smtp.mailfrom=collabora.com; dkim=pass (1024-bit key) header.d=collabora.com header.i=nicolas.frattaroli@collabora.com header.b=OoSbLh/H; arc=pass smtp.client-ip=136.143.188.112 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=collabora.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=collabora.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=collabora.com header.i=nicolas.frattaroli@collabora.com header.b="OoSbLh/H" ARC-Seal: i=1; a=rsa-sha256; t=1746793939; cv=none; d=zohomail.com; s=zohoarc; b=nz5MttAEMm1XdVxl5Gq6UvCpZEDmIYtgBUzyi620zCLXwmXJfrntgAxfg+Y/kcQGaHGeg5U9hj/kJt2nNUbvEcLZKyAaaKcZuqO+/u+I2PnAKOX5mC4XvPSqE27EFMXJ5MUq+wOM++yo0lAL/4jkFNA4I2gwb1GQof3mVY1Efhg= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1746793939; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:MIME-Version:Message-ID:References:Subject:Subject:To:To:Message-Id:Reply-To; bh=kJ5IOSaNsjn9tIXeKu6ADiCM2kMH5HkIytBCeo1p7Rk=; b=VFTJbrbGMcJKMjj4qqDxNgKhxD1kOnSzWkP5XTiQPVubdbYm35He/8Ps4+yixzMnI2BTF6gWqE3bZVYOqsP/psdsp2czXie6NiDCjaFdxMuWx6j6Wmz52DvJICuE214oG8btVhhyM/gNk1nnoULLKDAKJKerEaufpAYGs0v4oYM= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass header.i=collabora.com; spf=pass smtp.mailfrom=nicolas.frattaroli@collabora.com; dmarc=pass header.from= DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; t=1746793939; s=zohomail; d=collabora.com; i=nicolas.frattaroli@collabora.com; h=From:From:Date:Date:Subject:Subject:MIME-Version:Content-Type:Content-Transfer-Encoding:Message-Id:Message-Id:References:In-Reply-To:To:To:Cc:Cc:Reply-To; bh=kJ5IOSaNsjn9tIXeKu6ADiCM2kMH5HkIytBCeo1p7Rk=; b=OoSbLh/HZF3RSI7IFWGgXMM4aJKS7gkCE89Nci1NvPa9xZz7xyFlnueYE5vAPbaZ 2YnoIKY3KgWofX9nqVZPWEi3xtEjdGkbhG5lfBcoLXh3pY6dtXCSFBNjOxLPQijn/y4 RzV3IncKpZ529LgcN4BHbefRKHkQwhGiEMV8ihhs= Received: by mx.zohomail.com with SMTPS id 1746793937341325.4886213247996; Fri, 9 May 2025 05:32:17 -0700 (PDT) From: Nicolas Frattaroli Date: Fri, 09 May 2025 14:31:42 +0200 Subject: [PATCH 2/3] arm64: dts: rockchip: reorganise common rock5* nodes 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: <20250509-add-rock5t-v1-2-cff1de74eced@collabora.com> References: <20250509-add-rock5t-v1-0-cff1de74eced@collabora.com> In-Reply-To: <20250509-add-rock5t-v1-0-cff1de74eced@collabora.com> To: Rob Herring , Krzysztof Kozlowski , Conor Dooley , Heiko Stuebner , Sebastian Reichel Cc: kernel@collabora.com, devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rockchip@lists.infradead.org, linux-kernel@vger.kernel.org, Nicolas Frattaroli X-Mailer: b4 0.14.2 In preparation for the addition of a device tree for ROCK 5T, reorganise the already existing ROCK 5B and ROCK 5B+ device trees. All functionality shared between just 5B and 5B+ is moved into the shared rk3588-rock-5b.dtsi, whereas all nodes that will be shared with the ROCK 5T as well are now present in rk3588-rock-5b-5bp-5t.dtsi, which the former includes. Signed-off-by: Nicolas Frattaroli --- .../boot/dts/rockchip/rk3588-rock-5b-5bp-5t.dtsi | 1012 ++++++++++++++++= ++++ arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dtsi | 1012 +---------------= ---- 2 files changed, 1020 insertions(+), 1004 deletions(-) diff --git a/arch/arm64/boot/dts/rockchip/rk3588-rock-5b-5bp-5t.dtsi b/arch= /arm64/boot/dts/rockchip/rk3588-rock-5b-5bp-5t.dtsi new file mode 100644 index 0000000000000000000000000000000000000000..f086f0ff9f65b514ba89f04f461= 4a6c0c6abefff --- /dev/null +++ b/arch/arm64/boot/dts/rockchip/rk3588-rock-5b-5bp-5t.dtsi @@ -0,0 +1,1012 @@ +// SPDX-License-Identifier: (GPL-2.0+ OR MIT) + +/dts-v1/; + +#include +#include +#include +#include +#include "rk3588.dtsi" + +/ { + aliases { + mmc0 =3D &sdhci; + mmc1 =3D &sdmmc; + mmc2 =3D &sdio; + }; + + chosen { + stdout-path =3D "serial2:1500000n8"; + }; + + hdmi0-con { + compatible =3D "hdmi-connector"; + type =3D "a"; + + port { + hdmi0_con_in: endpoint { + remote-endpoint =3D <&hdmi0_out_con>; + }; + }; + }; + + hdmi1-con { + compatible =3D "hdmi-connector"; + type =3D "a"; + + port { + hdmi1_con_in: endpoint { + remote-endpoint =3D <&hdmi1_out_con>; + }; + }; + }; + + fan: pwm-fan { + compatible =3D "pwm-fan"; + cooling-levels =3D <0 120 150 180 210 240 255>; + fan-supply =3D <&vcc5v0_sys>; + pwms =3D <&pwm1 0 50000 0>; + #cooling-cells =3D <2>; + }; + + rfkill-bt { + compatible =3D "rfkill-gpio"; + label =3D "rfkill-m2-bt"; + radio-type =3D "bluetooth"; + shutdown-gpios =3D <&gpio3 RK_PD5 GPIO_ACTIVE_HIGH>; + }; + + vcc12v_dcin: regulator-vcc12v-dcin { + compatible =3D "regulator-fixed"; + regulator-name =3D "vcc12v_dcin"; + regulator-always-on; + regulator-boot-on; + regulator-min-microvolt =3D <12000000>; + regulator-max-microvolt =3D <12000000>; + }; + + vcc3v3_pcie2x1l0: regulator-vcc3v3-pcie2x1l0 { + compatible =3D "regulator-fixed"; + enable-active-high; + regulator-name =3D "vcc3v3_pcie2x1l0"; + regulator-always-on; + regulator-boot-on; + regulator-min-microvolt =3D <3300000>; + regulator-max-microvolt =3D <3300000>; + startup-delay-us =3D <50000>; + vin-supply =3D <&vcc5v0_sys>; + status =3D "disabled"; + }; + + vcc3v3_pcie2x1l2: regulator-vcc3v3-pcie2x1l2 { + compatible =3D "regulator-fixed"; + regulator-name =3D "vcc3v3_pcie2x1l2"; + regulator-min-microvolt =3D <3300000>; + regulator-max-microvolt =3D <3300000>; + startup-delay-us =3D <5000>; + vin-supply =3D <&vcc_3v3_s3>; + }; + + vcc3v3_pcie30: regulator-vcc3v3-pcie30 { + compatible =3D "regulator-fixed"; + enable-active-high; + gpios =3D <&gpio1 RK_PA4 GPIO_ACTIVE_HIGH>; + pinctrl-names =3D "default"; + pinctrl-0 =3D <&pcie3_vcc3v3_en>; + regulator-name =3D "vcc3v3_pcie30"; + regulator-min-microvolt =3D <3300000>; + regulator-max-microvolt =3D <3300000>; + startup-delay-us =3D <5000>; + vin-supply =3D <&vcc5v0_sys>; + }; + + vcc5v0_host: regulator-vcc5v0-host { + compatible =3D "regulator-fixed"; + regulator-name =3D "vcc5v0_host"; + regulator-boot-on; + regulator-always-on; + regulator-min-microvolt =3D <5000000>; + regulator-max-microvolt =3D <5000000>; + vin-supply =3D <&vcc5v0_sys>; + }; + + vcc5v0_sys: regulator-vcc5v0-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>; + vin-supply =3D <&vcc12v_dcin>; + }; + + vbus5v0_typec: vbus5v0-typec { + compatible =3D "regulator-fixed"; + enable-active-high; + gpio =3D <&gpio2 RK_PB6 GPIO_ACTIVE_HIGH>; + pinctrl-names =3D "default"; + pinctrl-0 =3D <&vbus5v0_typec_en>; + regulator-name =3D "vbus5v0_typec"; + regulator-min-microvolt =3D <5000000>; + regulator-max-microvolt =3D <5000000>; + vin-supply =3D <&vcc5v0_sys>; + }; + + vcc_1v1_nldo_s3: regulator-vcc-1v1-nldo-s3 { + compatible =3D "regulator-fixed"; + regulator-name =3D "vcc_1v1_nldo_s3"; + regulator-always-on; + regulator-boot-on; + regulator-min-microvolt =3D <1100000>; + regulator-max-microvolt =3D <1100000>; + vin-supply =3D <&vcc5v0_sys>; + }; +}; + +&combphy0_ps { + status =3D "okay"; +}; + +&combphy1_ps { + status =3D "okay"; +}; + +&combphy2_psu { + status =3D "okay"; +}; + +&cpu_b0 { + cpu-supply =3D <&vdd_cpu_big0_s0>; +}; + +&cpu_b1 { + cpu-supply =3D <&vdd_cpu_big0_s0>; +}; + +&cpu_b2 { + cpu-supply =3D <&vdd_cpu_big1_s0>; +}; + +&cpu_b3 { + cpu-supply =3D <&vdd_cpu_big1_s0>; +}; + +&cpu_l0 { + cpu-supply =3D <&vdd_cpu_lit_s0>; +}; + +&cpu_l1 { + cpu-supply =3D <&vdd_cpu_lit_s0>; +}; + +&cpu_l2 { + cpu-supply =3D <&vdd_cpu_lit_s0>; +}; + +&cpu_l3 { + cpu-supply =3D <&vdd_cpu_lit_s0>; +}; + +&gpu { + mali-supply =3D <&vdd_gpu_s0>; + status =3D "okay"; +}; + +&hdmi0 { + status =3D "okay"; +}; + +&hdmi0_in { + hdmi0_in_vp0: endpoint { + remote-endpoint =3D <&vp0_out_hdmi0>; + }; +}; + +&hdmi0_out { + hdmi0_out_con: endpoint { + remote-endpoint =3D <&hdmi0_con_in>; + }; +}; + +&hdmi0_sound { + status =3D "okay"; +}; + +&hdmi1 { + pinctrl-0 =3D <&hdmim0_tx1_cec &hdmim0_tx1_hpd + &hdmim1_tx1_scl &hdmim1_tx1_sda>; + status =3D "okay"; +}; + +&hdmi1_in { + hdmi1_in_vp1: endpoint { + remote-endpoint =3D <&vp1_out_hdmi1>; + }; +}; + +&hdmi1_out { + hdmi1_out_con: endpoint { + remote-endpoint =3D <&hdmi1_con_in>; + }; +}; + +&hdmi1_sound { + status =3D "okay"; +}; + +&hdmi_receiver_cma { + status =3D "okay"; +}; + +&hdmi_receiver { + pinctrl-0 =3D <&hdmim1_rx_cec &hdmim1_rx_hpdin &hdmim1_rx_scl &hdmim1_rx_= sda &hdmirx_hpd>; + pinctrl-names =3D "default"; +}; + +&hdptxphy0 { + status =3D "okay"; +}; + +&hdptxphy1 { + status =3D "okay"; +}; + +&i2c0 { + pinctrl-names =3D "default"; + pinctrl-0 =3D <&i2c0m2_xfer>; + status =3D "okay"; + + vdd_cpu_big0_s0: regulator@42 { + compatible =3D "rockchip,rk8602"; + reg =3D <0x42>; + fcs,suspend-voltage-selector =3D <1>; + regulator-name =3D "vdd_cpu_big0_s0"; + regulator-always-on; + regulator-boot-on; + regulator-min-microvolt =3D <550000>; + regulator-max-microvolt =3D <1050000>; + regulator-ramp-delay =3D <2300>; + vin-supply =3D <&vcc5v0_sys>; + + regulator-state-mem { + regulator-off-in-suspend; + }; + }; + + vdd_cpu_big1_s0: regulator@43 { + compatible =3D "rockchip,rk8603", "rockchip,rk8602"; + reg =3D <0x43>; + fcs,suspend-voltage-selector =3D <1>; + regulator-name =3D "vdd_cpu_big1_s0"; + regulator-always-on; + regulator-boot-on; + regulator-min-microvolt =3D <550000>; + regulator-max-microvolt =3D <1050000>; + regulator-ramp-delay =3D <2300>; + vin-supply =3D <&vcc5v0_sys>; + + regulator-state-mem { + regulator-off-in-suspend; + }; + }; +}; + +&i2c4 { + pinctrl-names =3D "default"; + pinctrl-0 =3D <&i2c4m1_xfer>; + status =3D "okay"; + + usbc0: usb-typec@22 { + compatible =3D "fcs,fusb302"; + reg =3D <0x22>; + interrupt-parent =3D <&gpio3>; + interrupts =3D ; + pinctrl-names =3D "default"; + pinctrl-0 =3D <&usbc0_int>; + vbus-supply =3D <&vbus5v0_typec>; + /* + * When the board is starting to send power-delivery messages + * too late (5 seconds according to the specification), the + * power-supply reacts with a hard-reset. That removes the + * power from VBUS for some time, which resets te whole board. + */ + status =3D "fail"; + + usb_con: connector { + compatible =3D "usb-c-connector"; + label =3D "USB-C"; + data-role =3D "dual"; + power-role =3D "sink"; + try-power-role =3D "sink"; + op-sink-microwatt =3D <1000000>; + sink-pdos =3D + , + ; + + ports { + #address-cells =3D <1>; + #size-cells =3D <0>; + + port@0 { + reg =3D <0>; + usbc0_role_sw: endpoint { + remote-endpoint =3D <&dwc3_0_role_switch>; + }; + }; + + port@1 { + reg =3D <1>; + usbc0_orien_sw: endpoint { + remote-endpoint =3D <&usbdp_phy0_orientation_switch>; + }; + }; + + port@2 { + reg =3D <2>; + dp_altmode_mux: endpoint { + remote-endpoint =3D <&usbdp_phy0_dp_altmode_mux>; + }; + }; + }; + }; + }; +}; + +&i2c6 { + status =3D "okay"; + + hym8563: rtc@51 { + compatible =3D "haoyu,hym8563"; + reg =3D <0x51>; + #clock-cells =3D <0>; + clock-output-names =3D "hym8563"; + pinctrl-names =3D "default"; + pinctrl-0 =3D <&hym8563_int>; + interrupt-parent =3D <&gpio0>; + interrupts =3D ; + wakeup-source; + }; +}; + +&i2c7 { + status =3D "okay"; + + es8316: audio-codec@11 { + compatible =3D "everest,es8316"; + reg =3D <0x11>; + clocks =3D <&cru I2S0_8CH_MCLKOUT>; + clock-names =3D "mclk"; + assigned-clocks =3D <&cru I2S0_8CH_MCLKOUT>; + assigned-clock-rates =3D <12288000>; + #sound-dai-cells =3D <0>; + + port { + es8316_p0_0: endpoint { + remote-endpoint =3D <&i2s0_8ch_p0_0>; + }; + }; + }; +}; + +&i2s0_8ch { + pinctrl-names =3D "default"; + pinctrl-0 =3D <&i2s0_lrck + &i2s0_mclk + &i2s0_sclk + &i2s0_sdi0 + &i2s0_sdo0>; + status =3D "okay"; + + i2s0_8ch_p0: port { + i2s0_8ch_p0_0: endpoint { + dai-format =3D "i2s"; + mclk-fs =3D <256>; + remote-endpoint =3D <&es8316_p0_0>; + }; + }; +}; + +&i2s5_8ch { + status =3D "okay"; +}; + +&i2s6_8ch { + status =3D "okay"; +}; + +&package_thermal { + polling-delay =3D <1000>; + + trips { + package_fan0: package-fan0 { + temperature =3D <55000>; + hysteresis =3D <2000>; + type =3D "active"; + }; + + package_fan1: package-fan1 { + temperature =3D <65000>; + hysteresis =3D <2000>; + type =3D "active"; + }; + }; + + cooling-maps { + map0 { + trip =3D <&package_fan0>; + cooling-device =3D <&fan THERMAL_NO_LIMIT 1>; + }; + + map1 { + trip =3D <&package_fan1>; + cooling-device =3D <&fan 2 THERMAL_NO_LIMIT>; + }; + }; +}; + +&pcie2x1l0 { + pinctrl-names =3D "default"; + pinctrl-0 =3D <&pcie2_0_rst>; + reset-gpios =3D <&gpio4 RK_PA5 GPIO_ACTIVE_HIGH>; + vpcie3v3-supply =3D <&vcc3v3_pcie2x1l0>; + status =3D "okay"; +}; + +&pcie2x1l2 { + pinctrl-names =3D "default"; + pinctrl-0 =3D <&pcie2_2_rst>; + reset-gpios =3D <&gpio3 RK_PB0 GPIO_ACTIVE_HIGH>; + vpcie3v3-supply =3D <&vcc3v3_pcie2x1l2>; + status =3D "okay"; +}; + +&pcie30phy { + status =3D "okay"; +}; + +&pcie3x4 { + pinctrl-names =3D "default"; + pinctrl-0 =3D <&pcie3_rst>; + reset-gpios =3D <&gpio4 RK_PB6 GPIO_ACTIVE_HIGH>; + vpcie3v3-supply =3D <&vcc3v3_pcie30>; + status =3D "okay"; +}; + +&pd_gpu { + domain-supply =3D <&vdd_gpu_s0>; +}; + +&pinctrl { + hym8563 { + hym8563_int: hym8563-int { + rockchip,pins =3D <0 RK_PB0 RK_FUNC_GPIO &pcfg_pull_none>; + }; + }; + + pcie2 { + pcie2_0_rst: pcie2-0-rst { + rockchip,pins =3D <4 RK_PA5 RK_FUNC_GPIO &pcfg_pull_none>; + }; + + pcie2_2_rst: pcie2-2-rst { + rockchip,pins =3D <3 RK_PB0 RK_FUNC_GPIO &pcfg_pull_none>; + }; + }; + + pcie3 { + pcie3_rst: pcie3-rst { + rockchip,pins =3D <4 RK_PB6 RK_FUNC_GPIO &pcfg_pull_none>; + }; + + pcie3_vcc3v3_en: pcie3-vcc3v3-en { + rockchip,pins =3D <1 RK_PA4 RK_FUNC_GPIO &pcfg_pull_none>; + }; + }; + + usb { + usbc0_int: usbc0-int { + rockchip,pins =3D <3 RK_PB4 RK_FUNC_GPIO &pcfg_pull_none>; + }; + + vbus5v0_typec_en: vbus5v0-typec-en { + rockchip,pins =3D <2 RK_PB6 RK_FUNC_GPIO &pcfg_pull_none>; + }; + }; +}; + +&pwm1 { + status =3D "okay"; +}; + +&saradc { + vref-supply =3D <&avcc_1v8_s0>; + status =3D "okay"; +}; + +&sdhci { + bus-width =3D <8>; + no-sdio; + no-sd; + non-removable; + mmc-hs400-1_8v; + mmc-hs400-enhanced-strobe; + status =3D "okay"; +}; + +&sdmmc { + max-frequency =3D <200000000>; + no-sdio; + no-mmc; + bus-width =3D <4>; + cap-mmc-highspeed; + cap-sd-highspeed; + cd-gpios =3D <&gpio0 RK_PA4 GPIO_ACTIVE_LOW>; + disable-wp; + sd-uhs-sdr104; + vmmc-supply =3D <&vcc_3v3_s3>; + vqmmc-supply =3D <&vccio_sd_s0>; + status =3D "okay"; +}; + +&sfc { + pinctrl-names =3D "default"; + pinctrl-0 =3D <&fspim2_pins>; + status =3D "okay"; + + flash@0 { + compatible =3D "jedec,spi-nor"; + reg =3D <0>; + spi-max-frequency =3D <104000000>; + spi-rx-bus-width =3D <4>; + spi-tx-bus-width =3D <1>; + vcc-supply =3D <&vcc_3v3_s3>; + }; +}; + +&spi2 { + status =3D "okay"; + assigned-clocks =3D <&cru CLK_SPI2>; + assigned-clock-rates =3D <200000000>; + pinctrl-names =3D "default"; + pinctrl-0 =3D <&spi2m2_cs0 &spi2m2_pins>; + num-cs =3D <1>; + + pmic@0 { + compatible =3D "rockchip,rk806"; + spi-max-frequency =3D <1000000>; + reg =3D <0x0>; + + interrupt-parent =3D <&gpio0>; + interrupts =3D <7 IRQ_TYPE_LEVEL_LOW>; + + pinctrl-names =3D "default"; + pinctrl-0 =3D <&pmic_pins>, <&rk806_dvs1_null>, + <&rk806_dvs2_null>, <&rk806_dvs3_null>; + + system-power-controller; + + vcc1-supply =3D <&vcc5v0_sys>; + vcc2-supply =3D <&vcc5v0_sys>; + vcc3-supply =3D <&vcc5v0_sys>; + vcc4-supply =3D <&vcc5v0_sys>; + vcc5-supply =3D <&vcc5v0_sys>; + vcc6-supply =3D <&vcc5v0_sys>; + vcc7-supply =3D <&vcc5v0_sys>; + vcc8-supply =3D <&vcc5v0_sys>; + vcc9-supply =3D <&vcc5v0_sys>; + vcc10-supply =3D <&vcc5v0_sys>; + vcc11-supply =3D <&vcc_2v0_pldo_s3>; + vcc12-supply =3D <&vcc5v0_sys>; + vcc13-supply =3D <&vcc_1v1_nldo_s3>; + vcc14-supply =3D <&vcc_1v1_nldo_s3>; + vcca-supply =3D <&vcc5v0_sys>; + + gpio-controller; + #gpio-cells =3D <2>; + + rk806_dvs1_null: dvs1-null-pins { + pins =3D "gpio_pwrctrl1"; + function =3D "pin_fun0"; + }; + + rk806_dvs2_null: dvs2-null-pins { + pins =3D "gpio_pwrctrl2"; + function =3D "pin_fun0"; + }; + + rk806_dvs3_null: dvs3-null-pins { + pins =3D "gpio_pwrctrl3"; + function =3D "pin_fun0"; + }; + + regulators { + vdd_gpu_s0: vdd_gpu_mem_s0: dcdc-reg1 { + regulator-boot-on; + regulator-min-microvolt =3D <550000>; + regulator-max-microvolt =3D <950000>; + regulator-ramp-delay =3D <12500>; + regulator-name =3D "vdd_gpu_s0"; + regulator-enable-ramp-delay =3D <400>; + + regulator-state-mem { + regulator-off-in-suspend; + }; + }; + + vdd_cpu_lit_s0: vdd_cpu_lit_mem_s0: dcdc-reg2 { + regulator-always-on; + regulator-boot-on; + regulator-min-microvolt =3D <550000>; + regulator-max-microvolt =3D <950000>; + regulator-ramp-delay =3D <12500>; + regulator-name =3D "vdd_cpu_lit_s0"; + + regulator-state-mem { + regulator-off-in-suspend; + }; + }; + + vdd_log_s0: dcdc-reg3 { + regulator-always-on; + regulator-boot-on; + regulator-min-microvolt =3D <675000>; + regulator-max-microvolt =3D <750000>; + regulator-ramp-delay =3D <12500>; + regulator-name =3D "vdd_log_s0"; + + regulator-state-mem { + regulator-off-in-suspend; + regulator-suspend-microvolt =3D <750000>; + }; + }; + + vdd_vdenc_s0: vdd_vdenc_mem_s0: dcdc-reg4 { + regulator-always-on; + regulator-boot-on; + regulator-min-microvolt =3D <550000>; + regulator-max-microvolt =3D <950000>; + regulator-ramp-delay =3D <12500>; + regulator-name =3D "vdd_vdenc_s0"; + + regulator-state-mem { + regulator-off-in-suspend; + }; + }; + + vdd_ddr_s0: dcdc-reg5 { + regulator-always-on; + regulator-boot-on; + regulator-min-microvolt =3D <675000>; + regulator-max-microvolt =3D <900000>; + regulator-ramp-delay =3D <12500>; + regulator-name =3D "vdd_ddr_s0"; + + regulator-state-mem { + regulator-off-in-suspend; + regulator-suspend-microvolt =3D <850000>; + }; + }; + + vdd2_ddr_s3: dcdc-reg6 { + regulator-always-on; + regulator-boot-on; + regulator-name =3D "vdd2_ddr_s3"; + + regulator-state-mem { + regulator-on-in-suspend; + }; + }; + + vcc_2v0_pldo_s3: dcdc-reg7 { + regulator-always-on; + regulator-boot-on; + regulator-min-microvolt =3D <2000000>; + regulator-max-microvolt =3D <2000000>; + regulator-ramp-delay =3D <12500>; + regulator-name =3D "vdd_2v0_pldo_s3"; + + regulator-state-mem { + regulator-on-in-suspend; + regulator-suspend-microvolt =3D <2000000>; + }; + }; + + vcc_3v3_s3: dcdc-reg8 { + regulator-always-on; + regulator-boot-on; + regulator-min-microvolt =3D <3300000>; + regulator-max-microvolt =3D <3300000>; + regulator-name =3D "vcc_3v3_s3"; + + regulator-state-mem { + regulator-on-in-suspend; + regulator-suspend-microvolt =3D <3300000>; + }; + }; + + vddq_ddr_s0: dcdc-reg9 { + regulator-always-on; + regulator-boot-on; + regulator-name =3D "vddq_ddr_s0"; + + regulator-state-mem { + regulator-off-in-suspend; + }; + }; + + vcc_1v8_s3: dcdc-reg10 { + regulator-always-on; + regulator-boot-on; + regulator-min-microvolt =3D <1800000>; + regulator-max-microvolt =3D <1800000>; + regulator-name =3D "vcc_1v8_s3"; + + regulator-state-mem { + regulator-on-in-suspend; + regulator-suspend-microvolt =3D <1800000>; + }; + }; + + avcc_1v8_s0: pldo-reg1 { + regulator-always-on; + regulator-boot-on; + regulator-min-microvolt =3D <1800000>; + regulator-max-microvolt =3D <1800000>; + regulator-name =3D "avcc_1v8_s0"; + + regulator-state-mem { + regulator-off-in-suspend; + }; + }; + + vcc_1v8_s0: pldo-reg2 { + regulator-always-on; + regulator-boot-on; + regulator-min-microvolt =3D <1800000>; + regulator-max-microvolt =3D <1800000>; + regulator-name =3D "vcc_1v8_s0"; + + regulator-state-mem { + regulator-off-in-suspend; + regulator-suspend-microvolt =3D <1800000>; + }; + }; + + avdd_1v2_s0: pldo-reg3 { + regulator-always-on; + regulator-boot-on; + regulator-min-microvolt =3D <1200000>; + regulator-max-microvolt =3D <1200000>; + regulator-name =3D "avdd_1v2_s0"; + + regulator-state-mem { + regulator-off-in-suspend; + }; + }; + + vcc_3v3_s0: pldo-reg4 { + regulator-always-on; + regulator-boot-on; + regulator-min-microvolt =3D <3300000>; + regulator-max-microvolt =3D <3300000>; + regulator-ramp-delay =3D <12500>; + regulator-name =3D "vcc_3v3_s0"; + + regulator-state-mem { + regulator-off-in-suspend; + }; + }; + + vccio_sd_s0: pldo-reg5 { + regulator-always-on; + regulator-boot-on; + regulator-min-microvolt =3D <1800000>; + regulator-max-microvolt =3D <3300000>; + regulator-ramp-delay =3D <12500>; + regulator-name =3D "vccio_sd_s0"; + + regulator-state-mem { + regulator-off-in-suspend; + }; + }; + + pldo6_s3: pldo-reg6 { + regulator-always-on; + regulator-boot-on; + regulator-min-microvolt =3D <1800000>; + regulator-max-microvolt =3D <1800000>; + regulator-name =3D "pldo6_s3"; + + regulator-state-mem { + regulator-on-in-suspend; + regulator-suspend-microvolt =3D <1800000>; + }; + }; + + vdd_0v75_s3: nldo-reg1 { + regulator-always-on; + regulator-boot-on; + regulator-min-microvolt =3D <750000>; + regulator-max-microvolt =3D <750000>; + regulator-name =3D "vdd_0v75_s3"; + + regulator-state-mem { + regulator-on-in-suspend; + regulator-suspend-microvolt =3D <750000>; + }; + }; + + vdd_ddr_pll_s0: nldo-reg2 { + regulator-always-on; + regulator-boot-on; + regulator-min-microvolt =3D <850000>; + regulator-max-microvolt =3D <850000>; + regulator-name =3D "vdd_ddr_pll_s0"; + + regulator-state-mem { + regulator-off-in-suspend; + regulator-suspend-microvolt =3D <850000>; + }; + }; + + avdd_0v75_s0: nldo-reg3 { + regulator-always-on; + regulator-boot-on; + regulator-min-microvolt =3D <750000>; + regulator-max-microvolt =3D <750000>; + regulator-name =3D "avdd_0v75_s0"; + + regulator-state-mem { + regulator-off-in-suspend; + }; + }; + + vdd_0v85_s0: nldo-reg4 { + regulator-always-on; + regulator-boot-on; + regulator-min-microvolt =3D <850000>; + regulator-max-microvolt =3D <850000>; + regulator-name =3D "vdd_0v85_s0"; + + regulator-state-mem { + regulator-off-in-suspend; + }; + }; + + vdd_0v75_s0: nldo-reg5 { + regulator-always-on; + regulator-boot-on; + regulator-min-microvolt =3D <750000>; + regulator-max-microvolt =3D <750000>; + regulator-name =3D "vdd_0v75_s0"; + + regulator-state-mem { + regulator-off-in-suspend; + }; + }; + }; + }; +}; + +&tsadc { + status =3D "okay"; +}; + +&uart2 { + pinctrl-0 =3D <&uart2m0_xfer>; + status =3D "okay"; +}; + +&u2phy0 { + status =3D "okay"; +}; + +&u2phy0_otg { + status =3D "okay"; +}; + +&u2phy1 { + status =3D "okay"; +}; + +&u2phy1_otg { + status =3D "okay"; +}; + +&u2phy2 { + status =3D "okay"; +}; + +&u2phy2_host { + /* connected to USB hub, which is powered by vcc5v0_sys */ + phy-supply =3D <&vcc5v0_sys>; + status =3D "okay"; +}; + +&u2phy3 { + status =3D "okay"; +}; + +&u2phy3_host { + phy-supply =3D <&vcc5v0_host>; + status =3D "okay"; +}; + +&usbdp_phy0 { + mode-switch; + orientation-switch; + status =3D "okay"; + + port { + #address-cells =3D <1>; + #size-cells =3D <0>; + + usbdp_phy0_orientation_switch: endpoint@0 { + reg =3D <0>; + remote-endpoint =3D <&usbc0_orien_sw>; + }; + + usbdp_phy0_dp_altmode_mux: endpoint@1 { + reg =3D <1>; + remote-endpoint =3D <&dp_altmode_mux>; + }; + }; +}; + +&usbdp_phy1 { + status =3D "okay"; +}; + +&usb_host0_ehci { + status =3D "okay"; +}; + +&usb_host0_ohci { + status =3D "okay"; +}; + +&usb_host0_xhci { + usb-role-switch; + status =3D "okay"; + + port { + dwc3_0_role_switch: endpoint { + remote-endpoint =3D <&usbc0_role_sw>; + }; + }; +}; + +&usb_host1_ehci { + status =3D "okay"; +}; + +&usb_host1_ohci { + status =3D "okay"; +}; + +&usb_host1_xhci { + dr_mode =3D "host"; + status =3D "okay"; +}; + +&vop { + status =3D "okay"; +}; + +&vop_mmu { + status =3D "okay"; +}; + +&vp0 { + vp0_out_hdmi0: endpoint@ROCKCHIP_VOP2_EP_HDMI0 { + reg =3D ; + remote-endpoint =3D <&hdmi0_in_vp0>; + }; +}; + +&vp1 { + vp1_out_hdmi1: endpoint@ROCKCHIP_VOP2_EP_HDMI1 { + reg =3D ; + remote-endpoint =3D <&hdmi1_in_vp1>; + }; +}; diff --git a/arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dtsi b/arch/arm64/= boot/dts/rockchip/rk3588-rock-5b.dtsi index 314fdc0c1c20b25b0fdc5254f3b090586c169a00..e5c474e4d02a6582efc3bd704d9= 5df95bf9fb0ee 100644 --- a/arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dtsi +++ b/arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dtsi @@ -2,23 +2,9 @@ =20 /dts-v1/; =20 -#include -#include -#include -#include -#include "rk3588.dtsi" +#include "rk3588-rock-5b-5bp-5t.dtsi" =20 / { - aliases { - mmc0 =3D &sdhci; - mmc1 =3D &sdmmc; - mmc2 =3D &sdio; - }; - - chosen { - stdout-path =3D "serial2:1500000n8"; - }; - analog-sound { compatible =3D "audio-graph-card"; label =3D "rk3588-es8316"; @@ -36,28 +22,6 @@ analog-sound { pinctrl-0 =3D <&hp_detect>; }; =20 - hdmi0-con { - compatible =3D "hdmi-connector"; - type =3D "a"; - - port { - hdmi0_con_in: endpoint { - remote-endpoint =3D <&hdmi0_out_con>; - }; - }; - }; - - hdmi1-con { - compatible =3D "hdmi-connector"; - type =3D "a"; - - port { - hdmi1_con_in: endpoint { - remote-endpoint =3D <&hdmi1_out_con>; - }; - }; - }; - leds { compatible =3D "gpio-leds"; pinctrl-names =3D "default"; @@ -71,452 +35,19 @@ led_rgb_b { }; }; =20 - fan: pwm-fan { - compatible =3D "pwm-fan"; - cooling-levels =3D <0 120 150 180 210 240 255>; - fan-supply =3D <&vcc5v0_sys>; - pwms =3D <&pwm1 0 50000 0>; - #cooling-cells =3D <2>; - }; - rfkill { compatible =3D "rfkill-gpio"; label =3D "rfkill-m2-wlan"; radio-type =3D "wlan"; shutdown-gpios =3D <&gpio4 RK_PA2 GPIO_ACTIVE_HIGH>; }; - - rfkill-bt { - compatible =3D "rfkill-gpio"; - label =3D "rfkill-m2-bt"; - radio-type =3D "bluetooth"; - shutdown-gpios =3D <&gpio3 RK_PD5 GPIO_ACTIVE_HIGH>; - }; - - vcc12v_dcin: regulator-vcc12v-dcin { - compatible =3D "regulator-fixed"; - regulator-name =3D "vcc12v_dcin"; - regulator-always-on; - regulator-boot-on; - regulator-min-microvolt =3D <12000000>; - regulator-max-microvolt =3D <12000000>; - }; - - vcc3v3_pcie2x1l0: regulator-vcc3v3-pcie2x1l0 { - compatible =3D "regulator-fixed"; - enable-active-high; - gpios =3D <&gpio1 RK_PD2 GPIO_ACTIVE_HIGH>; - pinctrl-names =3D "default"; - pinctrl-0 =3D <&pcie2_0_vcc3v3_en>; - regulator-name =3D "vcc3v3_pcie2x1l0"; - regulator-always-on; - regulator-boot-on; - regulator-min-microvolt =3D <3300000>; - regulator-max-microvolt =3D <3300000>; - startup-delay-us =3D <50000>; - vin-supply =3D <&vcc5v0_sys>; - }; - - vcc3v3_pcie2x1l2: regulator-vcc3v3-pcie2x1l2 { - compatible =3D "regulator-fixed"; - regulator-name =3D "vcc3v3_pcie2x1l2"; - regulator-min-microvolt =3D <3300000>; - regulator-max-microvolt =3D <3300000>; - startup-delay-us =3D <5000>; - vin-supply =3D <&vcc_3v3_s3>; - }; - - vcc3v3_pcie30: regulator-vcc3v3-pcie30 { - compatible =3D "regulator-fixed"; - enable-active-high; - gpios =3D <&gpio1 RK_PA4 GPIO_ACTIVE_HIGH>; - pinctrl-names =3D "default"; - pinctrl-0 =3D <&pcie3_vcc3v3_en>; - regulator-name =3D "vcc3v3_pcie30"; - regulator-min-microvolt =3D <3300000>; - regulator-max-microvolt =3D <3300000>; - startup-delay-us =3D <5000>; - vin-supply =3D <&vcc5v0_sys>; - }; - - vcc5v0_host: regulator-vcc5v0-host { - compatible =3D "regulator-fixed"; - regulator-name =3D "vcc5v0_host"; - regulator-boot-on; - regulator-always-on; - regulator-min-microvolt =3D <5000000>; - regulator-max-microvolt =3D <5000000>; - vin-supply =3D <&vcc5v0_sys>; - }; - - vcc5v0_sys: regulator-vcc5v0-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>; - vin-supply =3D <&vcc12v_dcin>; - }; - - vbus5v0_typec: vbus5v0-typec { - compatible =3D "regulator-fixed"; - enable-active-high; - gpio =3D <&gpio2 RK_PB6 GPIO_ACTIVE_HIGH>; - pinctrl-names =3D "default"; - pinctrl-0 =3D <&vbus5v0_typec_en>; - regulator-name =3D "vbus5v0_typec"; - regulator-min-microvolt =3D <5000000>; - regulator-max-microvolt =3D <5000000>; - vin-supply =3D <&vcc5v0_sys>; - }; - - vcc_1v1_nldo_s3: regulator-vcc-1v1-nldo-s3 { - compatible =3D "regulator-fixed"; - regulator-name =3D "vcc_1v1_nldo_s3"; - regulator-always-on; - regulator-boot-on; - regulator-min-microvolt =3D <1100000>; - regulator-max-microvolt =3D <1100000>; - vin-supply =3D <&vcc5v0_sys>; - }; -}; - -&combphy0_ps { - status =3D "okay"; -}; - -&combphy1_ps { - status =3D "okay"; -}; - -&combphy2_psu { - status =3D "okay"; -}; - -&cpu_b0 { - cpu-supply =3D <&vdd_cpu_big0_s0>; -}; - -&cpu_b1 { - cpu-supply =3D <&vdd_cpu_big0_s0>; -}; - -&cpu_b2 { - cpu-supply =3D <&vdd_cpu_big1_s0>; -}; - -&cpu_b3 { - cpu-supply =3D <&vdd_cpu_big1_s0>; -}; - -&cpu_l0 { - cpu-supply =3D <&vdd_cpu_lit_s0>; -}; - -&cpu_l1 { - cpu-supply =3D <&vdd_cpu_lit_s0>; -}; - -&cpu_l2 { - cpu-supply =3D <&vdd_cpu_lit_s0>; -}; - -&cpu_l3 { - cpu-supply =3D <&vdd_cpu_lit_s0>; -}; - -&gpu { - mali-supply =3D <&vdd_gpu_s0>; - status =3D "okay"; -}; - -&hdmi0 { - status =3D "okay"; -}; - -&hdmi0_in { - hdmi0_in_vp0: endpoint { - remote-endpoint =3D <&vp0_out_hdmi0>; - }; -}; - -&hdmi0_out { - hdmi0_out_con: endpoint { - remote-endpoint =3D <&hdmi0_con_in>; - }; -}; - -&hdmi0_sound { - status =3D "okay"; -}; - -&hdmi1 { - pinctrl-0 =3D <&hdmim0_tx1_cec &hdmim0_tx1_hpd - &hdmim1_tx1_scl &hdmim1_tx1_sda>; - status =3D "okay"; -}; - -&hdmi1_in { - hdmi1_in_vp1: endpoint { - remote-endpoint =3D <&vp1_out_hdmi1>; - }; -}; - -&hdmi1_out { - hdmi1_out_con: endpoint { - remote-endpoint =3D <&hdmi1_con_in>; - }; -}; - -&hdmi1_sound { - status =3D "okay"; -}; - -&hdmi_receiver_cma { - status =3D "okay"; }; =20 &hdmi_receiver { hpd-gpios =3D <&gpio1 RK_PC6 GPIO_ACTIVE_LOW>; - pinctrl-0 =3D <&hdmim1_rx_cec &hdmim1_rx_hpdin &hdmim1_rx_scl &hdmim1_rx_= sda &hdmirx_hpd>; - pinctrl-names =3D "default"; - status =3D "okay"; -}; - -&hdptxphy0 { - status =3D "okay"; -}; - -&hdptxphy1 { - status =3D "okay"; -}; - -&i2c0 { - pinctrl-names =3D "default"; - pinctrl-0 =3D <&i2c0m2_xfer>; - status =3D "okay"; - - vdd_cpu_big0_s0: regulator@42 { - compatible =3D "rockchip,rk8602"; - reg =3D <0x42>; - fcs,suspend-voltage-selector =3D <1>; - regulator-name =3D "vdd_cpu_big0_s0"; - regulator-always-on; - regulator-boot-on; - regulator-min-microvolt =3D <550000>; - regulator-max-microvolt =3D <1050000>; - regulator-ramp-delay =3D <2300>; - vin-supply =3D <&vcc5v0_sys>; - - regulator-state-mem { - regulator-off-in-suspend; - }; - }; - - vdd_cpu_big1_s0: regulator@43 { - compatible =3D "rockchip,rk8603", "rockchip,rk8602"; - reg =3D <0x43>; - fcs,suspend-voltage-selector =3D <1>; - regulator-name =3D "vdd_cpu_big1_s0"; - regulator-always-on; - regulator-boot-on; - regulator-min-microvolt =3D <550000>; - regulator-max-microvolt =3D <1050000>; - regulator-ramp-delay =3D <2300>; - vin-supply =3D <&vcc5v0_sys>; - - regulator-state-mem { - regulator-off-in-suspend; - }; - }; -}; - -&i2c4 { - pinctrl-names =3D "default"; - pinctrl-0 =3D <&i2c4m1_xfer>; - status =3D "okay"; - - usbc0: usb-typec@22 { - compatible =3D "fcs,fusb302"; - reg =3D <0x22>; - interrupt-parent =3D <&gpio3>; - interrupts =3D ; - pinctrl-names =3D "default"; - pinctrl-0 =3D <&usbc0_int>; - vbus-supply =3D <&vbus5v0_typec>; - /* - * When the board is starting to send power-delivery messages - * too late (5 seconds according to the specification), the - * power-supply reacts with a hard-reset. That removes the - * power from VBUS for some time, which resets te whole board. - */ - status =3D "fail"; - - usb_con: connector { - compatible =3D "usb-c-connector"; - label =3D "USB-C"; - data-role =3D "dual"; - power-role =3D "sink"; - try-power-role =3D "sink"; - op-sink-microwatt =3D <1000000>; - sink-pdos =3D - , - ; - - ports { - #address-cells =3D <1>; - #size-cells =3D <0>; - - port@0 { - reg =3D <0>; - usbc0_role_sw: endpoint { - remote-endpoint =3D <&dwc3_0_role_switch>; - }; - }; - - port@1 { - reg =3D <1>; - usbc0_orien_sw: endpoint { - remote-endpoint =3D <&usbdp_phy0_orientation_switch>; - }; - }; - - port@2 { - reg =3D <2>; - dp_altmode_mux: endpoint { - remote-endpoint =3D <&usbdp_phy0_dp_altmode_mux>; - }; - }; - }; - }; - }; -}; - -&i2c6 { - status =3D "okay"; - - hym8563: rtc@51 { - compatible =3D "haoyu,hym8563"; - reg =3D <0x51>; - #clock-cells =3D <0>; - clock-output-names =3D "hym8563"; - pinctrl-names =3D "default"; - pinctrl-0 =3D <&hym8563_int>; - interrupt-parent =3D <&gpio0>; - interrupts =3D ; - wakeup-source; - }; -}; - -&i2c7 { - status =3D "okay"; - - es8316: audio-codec@11 { - compatible =3D "everest,es8316"; - reg =3D <0x11>; - clocks =3D <&cru I2S0_8CH_MCLKOUT>; - clock-names =3D "mclk"; - assigned-clocks =3D <&cru I2S0_8CH_MCLKOUT>; - assigned-clock-rates =3D <12288000>; - #sound-dai-cells =3D <0>; - - port { - es8316_p0_0: endpoint { - remote-endpoint =3D <&i2s0_8ch_p0_0>; - }; - }; - }; -}; - -&i2s0_8ch { - pinctrl-names =3D "default"; - pinctrl-0 =3D <&i2s0_lrck - &i2s0_mclk - &i2s0_sclk - &i2s0_sdi0 - &i2s0_sdo0>; - status =3D "okay"; - - i2s0_8ch_p0: port { - i2s0_8ch_p0_0: endpoint { - dai-format =3D "i2s"; - mclk-fs =3D <256>; - remote-endpoint =3D <&es8316_p0_0>; - }; - }; -}; - -&i2s5_8ch { - status =3D "okay"; -}; - -&i2s6_8ch { - status =3D "okay"; -}; - -&package_thermal { - polling-delay =3D <1000>; - - trips { - package_fan0: package-fan0 { - temperature =3D <55000>; - hysteresis =3D <2000>; - type =3D "active"; - }; - - package_fan1: package-fan1 { - temperature =3D <65000>; - hysteresis =3D <2000>; - type =3D "active"; - }; - }; - - cooling-maps { - map0 { - trip =3D <&package_fan0>; - cooling-device =3D <&fan THERMAL_NO_LIMIT 1>; - }; - - map1 { - trip =3D <&package_fan1>; - cooling-device =3D <&fan 2 THERMAL_NO_LIMIT>; - }; - }; -}; - -&pcie2x1l0 { - pinctrl-names =3D "default"; - pinctrl-0 =3D <&pcie2_0_rst>; - reset-gpios =3D <&gpio4 RK_PA5 GPIO_ACTIVE_HIGH>; - vpcie3v3-supply =3D <&vcc3v3_pcie2x1l0>; - status =3D "okay"; -}; - -&pcie2x1l2 { - pinctrl-names =3D "default"; - pinctrl-0 =3D <&pcie2_2_rst>; - reset-gpios =3D <&gpio3 RK_PB0 GPIO_ACTIVE_HIGH>; - vpcie3v3-supply =3D <&vcc3v3_pcie2x1l2>; - status =3D "okay"; -}; - -&pcie30phy { status =3D "okay"; }; =20 -&pcie3x4 { - pinctrl-names =3D "default"; - pinctrl-0 =3D <&pcie3_rst>; - reset-gpios =3D <&gpio4 RK_PB6 GPIO_ACTIVE_HIGH>; - vpcie3v3-supply =3D <&vcc3v3_pcie30>; - status =3D "okay"; -}; - -&pd_gpu { - domain-supply =3D <&vdd_gpu_s0>; -}; - &pinctrl { hdmirx { hdmirx_hpd: hdmirx-5v-detection { @@ -524,559 +55,32 @@ hdmirx_hpd: hdmirx-5v-detection { }; }; =20 - hym8563 { - hym8563_int: hym8563-int { - rockchip,pins =3D <0 RK_PB0 RK_FUNC_GPIO &pcfg_pull_none>; - }; - }; - leds { led_rgb_b: led-rgb-b { rockchip,pins =3D <0 RK_PB7 RK_FUNC_GPIO &pcfg_pull_none>; }; }; =20 - sound { - hp_detect: hp-detect { - rockchip,pins =3D <1 RK_PD5 RK_FUNC_GPIO &pcfg_pull_none>; - }; - }; - pcie2 { - pcie2_0_rst: pcie2-0-rst { - rockchip,pins =3D <4 RK_PA5 RK_FUNC_GPIO &pcfg_pull_none>; - }; - pcie2_0_vcc3v3_en: pcie2-0-vcc-en { rockchip,pins =3D <1 RK_PD2 RK_FUNC_GPIO &pcfg_pull_none>; }; - - pcie2_2_rst: pcie2-2-rst { - rockchip,pins =3D <3 RK_PB0 RK_FUNC_GPIO &pcfg_pull_none>; - }; }; =20 - pcie3 { - pcie3_rst: pcie3-rst { - rockchip,pins =3D <4 RK_PB6 RK_FUNC_GPIO &pcfg_pull_none>; - }; - - pcie3_vcc3v3_en: pcie3-vcc3v3-en { - rockchip,pins =3D <1 RK_PA4 RK_FUNC_GPIO &pcfg_pull_none>; - }; - }; - - usb { - usbc0_int: usbc0-int { - rockchip,pins =3D <3 RK_PB4 RK_FUNC_GPIO &pcfg_pull_none>; - }; - - vbus5v0_typec_en: vbus5v0-typec-en { - rockchip,pins =3D <2 RK_PB6 RK_FUNC_GPIO &pcfg_pull_none>; - }; - }; -}; - -&pwm1 { - status =3D "okay"; -}; - -&saradc { - vref-supply =3D <&avcc_1v8_s0>; - status =3D "okay"; -}; - -&sdhci { - bus-width =3D <8>; - no-sdio; - no-sd; - non-removable; - mmc-hs400-1_8v; - mmc-hs400-enhanced-strobe; - status =3D "okay"; -}; - -&sdmmc { - max-frequency =3D <200000000>; - no-sdio; - no-mmc; - bus-width =3D <4>; - cap-mmc-highspeed; - cap-sd-highspeed; - cd-gpios =3D <&gpio0 RK_PA4 GPIO_ACTIVE_LOW>; - disable-wp; - sd-uhs-sdr104; - vmmc-supply =3D <&vcc_3v3_s3>; - vqmmc-supply =3D <&vccio_sd_s0>; - status =3D "okay"; -}; - -&sfc { - pinctrl-names =3D "default"; - pinctrl-0 =3D <&fspim2_pins>; - status =3D "okay"; - - flash@0 { - compatible =3D "jedec,spi-nor"; - reg =3D <0>; - spi-max-frequency =3D <104000000>; - spi-rx-bus-width =3D <4>; - spi-tx-bus-width =3D <1>; - vcc-supply =3D <&vcc_3v3_s3>; - }; -}; - -&spi2 { - status =3D "okay"; - assigned-clocks =3D <&cru CLK_SPI2>; - assigned-clock-rates =3D <200000000>; - pinctrl-names =3D "default"; - pinctrl-0 =3D <&spi2m2_cs0 &spi2m2_pins>; - num-cs =3D <1>; - - pmic@0 { - compatible =3D "rockchip,rk806"; - spi-max-frequency =3D <1000000>; - reg =3D <0x0>; - - interrupt-parent =3D <&gpio0>; - interrupts =3D <7 IRQ_TYPE_LEVEL_LOW>; - - pinctrl-names =3D "default"; - pinctrl-0 =3D <&pmic_pins>, <&rk806_dvs1_null>, - <&rk806_dvs2_null>, <&rk806_dvs3_null>; - - system-power-controller; - - vcc1-supply =3D <&vcc5v0_sys>; - vcc2-supply =3D <&vcc5v0_sys>; - vcc3-supply =3D <&vcc5v0_sys>; - vcc4-supply =3D <&vcc5v0_sys>; - vcc5-supply =3D <&vcc5v0_sys>; - vcc6-supply =3D <&vcc5v0_sys>; - vcc7-supply =3D <&vcc5v0_sys>; - vcc8-supply =3D <&vcc5v0_sys>; - vcc9-supply =3D <&vcc5v0_sys>; - vcc10-supply =3D <&vcc5v0_sys>; - vcc11-supply =3D <&vcc_2v0_pldo_s3>; - vcc12-supply =3D <&vcc5v0_sys>; - vcc13-supply =3D <&vcc_1v1_nldo_s3>; - vcc14-supply =3D <&vcc_1v1_nldo_s3>; - vcca-supply =3D <&vcc5v0_sys>; - - gpio-controller; - #gpio-cells =3D <2>; - - rk806_dvs1_null: dvs1-null-pins { - pins =3D "gpio_pwrctrl1"; - function =3D "pin_fun0"; - }; - - rk806_dvs2_null: dvs2-null-pins { - pins =3D "gpio_pwrctrl2"; - function =3D "pin_fun0"; - }; - - rk806_dvs3_null: dvs3-null-pins { - pins =3D "gpio_pwrctrl3"; - function =3D "pin_fun0"; - }; - - regulators { - vdd_gpu_s0: vdd_gpu_mem_s0: dcdc-reg1 { - regulator-boot-on; - regulator-min-microvolt =3D <550000>; - regulator-max-microvolt =3D <950000>; - regulator-ramp-delay =3D <12500>; - regulator-name =3D "vdd_gpu_s0"; - regulator-enable-ramp-delay =3D <400>; - - regulator-state-mem { - regulator-off-in-suspend; - }; - }; - - vdd_cpu_lit_s0: vdd_cpu_lit_mem_s0: dcdc-reg2 { - regulator-always-on; - regulator-boot-on; - regulator-min-microvolt =3D <550000>; - regulator-max-microvolt =3D <950000>; - regulator-ramp-delay =3D <12500>; - regulator-name =3D "vdd_cpu_lit_s0"; - - regulator-state-mem { - regulator-off-in-suspend; - }; - }; - - vdd_log_s0: dcdc-reg3 { - regulator-always-on; - regulator-boot-on; - regulator-min-microvolt =3D <675000>; - regulator-max-microvolt =3D <750000>; - regulator-ramp-delay =3D <12500>; - regulator-name =3D "vdd_log_s0"; - - regulator-state-mem { - regulator-off-in-suspend; - regulator-suspend-microvolt =3D <750000>; - }; - }; - - vdd_vdenc_s0: vdd_vdenc_mem_s0: dcdc-reg4 { - regulator-always-on; - regulator-boot-on; - regulator-min-microvolt =3D <550000>; - regulator-max-microvolt =3D <950000>; - regulator-ramp-delay =3D <12500>; - regulator-name =3D "vdd_vdenc_s0"; - - regulator-state-mem { - regulator-off-in-suspend; - }; - }; - - vdd_ddr_s0: dcdc-reg5 { - regulator-always-on; - regulator-boot-on; - regulator-min-microvolt =3D <675000>; - regulator-max-microvolt =3D <900000>; - regulator-ramp-delay =3D <12500>; - regulator-name =3D "vdd_ddr_s0"; - - regulator-state-mem { - regulator-off-in-suspend; - regulator-suspend-microvolt =3D <850000>; - }; - }; - - vdd2_ddr_s3: dcdc-reg6 { - regulator-always-on; - regulator-boot-on; - regulator-name =3D "vdd2_ddr_s3"; - - regulator-state-mem { - regulator-on-in-suspend; - }; - }; - - vcc_2v0_pldo_s3: dcdc-reg7 { - regulator-always-on; - regulator-boot-on; - regulator-min-microvolt =3D <2000000>; - regulator-max-microvolt =3D <2000000>; - regulator-ramp-delay =3D <12500>; - regulator-name =3D "vdd_2v0_pldo_s3"; - - regulator-state-mem { - regulator-on-in-suspend; - regulator-suspend-microvolt =3D <2000000>; - }; - }; - - vcc_3v3_s3: dcdc-reg8 { - regulator-always-on; - regulator-boot-on; - regulator-min-microvolt =3D <3300000>; - regulator-max-microvolt =3D <3300000>; - regulator-name =3D "vcc_3v3_s3"; - - regulator-state-mem { - regulator-on-in-suspend; - regulator-suspend-microvolt =3D <3300000>; - }; - }; - - vddq_ddr_s0: dcdc-reg9 { - regulator-always-on; - regulator-boot-on; - regulator-name =3D "vddq_ddr_s0"; - - regulator-state-mem { - regulator-off-in-suspend; - }; - }; - - vcc_1v8_s3: dcdc-reg10 { - regulator-always-on; - regulator-boot-on; - regulator-min-microvolt =3D <1800000>; - regulator-max-microvolt =3D <1800000>; - regulator-name =3D "vcc_1v8_s3"; - - regulator-state-mem { - regulator-on-in-suspend; - regulator-suspend-microvolt =3D <1800000>; - }; - }; - - avcc_1v8_s0: pldo-reg1 { - regulator-always-on; - regulator-boot-on; - regulator-min-microvolt =3D <1800000>; - regulator-max-microvolt =3D <1800000>; - regulator-name =3D "avcc_1v8_s0"; - - regulator-state-mem { - regulator-off-in-suspend; - }; - }; - - vcc_1v8_s0: pldo-reg2 { - regulator-always-on; - regulator-boot-on; - regulator-min-microvolt =3D <1800000>; - regulator-max-microvolt =3D <1800000>; - regulator-name =3D "vcc_1v8_s0"; - - regulator-state-mem { - regulator-off-in-suspend; - regulator-suspend-microvolt =3D <1800000>; - }; - }; - - avdd_1v2_s0: pldo-reg3 { - regulator-always-on; - regulator-boot-on; - regulator-min-microvolt =3D <1200000>; - regulator-max-microvolt =3D <1200000>; - regulator-name =3D "avdd_1v2_s0"; - - regulator-state-mem { - regulator-off-in-suspend; - }; - }; - - vcc_3v3_s0: pldo-reg4 { - regulator-always-on; - regulator-boot-on; - regulator-min-microvolt =3D <3300000>; - regulator-max-microvolt =3D <3300000>; - regulator-ramp-delay =3D <12500>; - regulator-name =3D "vcc_3v3_s0"; - - regulator-state-mem { - regulator-off-in-suspend; - }; - }; - - vccio_sd_s0: pldo-reg5 { - regulator-always-on; - regulator-boot-on; - regulator-min-microvolt =3D <1800000>; - regulator-max-microvolt =3D <3300000>; - regulator-ramp-delay =3D <12500>; - regulator-name =3D "vccio_sd_s0"; - - regulator-state-mem { - regulator-off-in-suspend; - }; - }; - - pldo6_s3: pldo-reg6 { - regulator-always-on; - regulator-boot-on; - regulator-min-microvolt =3D <1800000>; - regulator-max-microvolt =3D <1800000>; - regulator-name =3D "pldo6_s3"; - - regulator-state-mem { - regulator-on-in-suspend; - regulator-suspend-microvolt =3D <1800000>; - }; - }; - - vdd_0v75_s3: nldo-reg1 { - regulator-always-on; - regulator-boot-on; - regulator-min-microvolt =3D <750000>; - regulator-max-microvolt =3D <750000>; - regulator-name =3D "vdd_0v75_s3"; - - regulator-state-mem { - regulator-on-in-suspend; - regulator-suspend-microvolt =3D <750000>; - }; - }; - - vdd_ddr_pll_s0: nldo-reg2 { - regulator-always-on; - regulator-boot-on; - regulator-min-microvolt =3D <850000>; - regulator-max-microvolt =3D <850000>; - regulator-name =3D "vdd_ddr_pll_s0"; - - regulator-state-mem { - regulator-off-in-suspend; - regulator-suspend-microvolt =3D <850000>; - }; - }; - - avdd_0v75_s0: nldo-reg3 { - regulator-always-on; - regulator-boot-on; - regulator-min-microvolt =3D <750000>; - regulator-max-microvolt =3D <750000>; - regulator-name =3D "avdd_0v75_s0"; - - regulator-state-mem { - regulator-off-in-suspend; - }; - }; - - vdd_0v85_s0: nldo-reg4 { - regulator-always-on; - regulator-boot-on; - regulator-min-microvolt =3D <850000>; - regulator-max-microvolt =3D <850000>; - regulator-name =3D "vdd_0v85_s0"; - - regulator-state-mem { - regulator-off-in-suspend; - }; - }; - - vdd_0v75_s0: nldo-reg5 { - regulator-always-on; - regulator-boot-on; - regulator-min-microvolt =3D <750000>; - regulator-max-microvolt =3D <750000>; - regulator-name =3D "vdd_0v75_s0"; - - regulator-state-mem { - regulator-off-in-suspend; - }; - }; - }; - }; -}; - -&tsadc { - status =3D "okay"; -}; - -&uart2 { - pinctrl-0 =3D <&uart2m0_xfer>; - status =3D "okay"; -}; - -&u2phy0 { - status =3D "okay"; -}; - -&u2phy0_otg { - status =3D "okay"; -}; - -&u2phy1 { - status =3D "okay"; -}; - -&u2phy1_otg { - status =3D "okay"; -}; - -&u2phy2 { - status =3D "okay"; -}; - -&u2phy2_host { - /* connected to USB hub, which is powered by vcc5v0_sys */ - phy-supply =3D <&vcc5v0_sys>; - status =3D "okay"; -}; - -&u2phy3 { - status =3D "okay"; -}; - -&u2phy3_host { - phy-supply =3D <&vcc5v0_host>; - status =3D "okay"; -}; - -&usbdp_phy0 { - mode-switch; - orientation-switch; - status =3D "okay"; - - port { - #address-cells =3D <1>; - #size-cells =3D <0>; - - usbdp_phy0_orientation_switch: endpoint@0 { - reg =3D <0>; - remote-endpoint =3D <&usbc0_orien_sw>; - }; - - usbdp_phy0_dp_altmode_mux: endpoint@1 { - reg =3D <1>; - remote-endpoint =3D <&dp_altmode_mux>; - }; - }; -}; - -&usbdp_phy1 { - status =3D "okay"; -}; - -&usb_host0_ehci { - status =3D "okay"; -}; - -&usb_host0_ohci { - status =3D "okay"; -}; - -&usb_host0_xhci { - usb-role-switch; - status =3D "okay"; - - port { - #address-cells =3D <1>; - #size-cells =3D <0>; - - dwc3_0_role_switch: endpoint { - remote-endpoint =3D <&usbc0_role_sw>; + sound { + hp_detect: hp-detect { + rockchip,pins =3D <1 RK_PD5 RK_FUNC_GPIO &pcfg_pull_none>; }; }; }; =20 -&usb_host1_ehci { - status =3D "okay"; -}; - -&usb_host1_ohci { - status =3D "okay"; -}; - -&usb_host1_xhci { - dr_mode =3D "host"; - status =3D "okay"; -}; - &usb_host2_xhci { status =3D "okay"; }; =20 -&vop { - status =3D "okay"; -}; - -&vop_mmu { +&vcc3v3_pcie2x1l0 { + gpios =3D <&gpio1 RK_PD2 GPIO_ACTIVE_HIGH>; + pinctrl-names =3D "default"; + pinctrl-0 =3D <&pcie2_0_vcc3v3_en>; status =3D "okay"; }; - -&vp0 { - vp0_out_hdmi0: endpoint@ROCKCHIP_VOP2_EP_HDMI0 { - reg =3D ; - remote-endpoint =3D <&hdmi0_in_vp0>; - }; -}; - -&vp1 { - vp1_out_hdmi1: endpoint@ROCKCHIP_VOP2_EP_HDMI1 { - reg =3D ; - remote-endpoint =3D <&hdmi1_in_vp1>; - }; -}; --=20 2.49.0 From nobody Wed Dec 17 08:45:06 2025 Received: from sender3-pp-f112.zoho.com (sender3-pp-f112.zoho.com [136.143.184.112]) (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 1891C290DBF; Fri, 9 May 2025 12:32:38 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=pass smtp.client-ip=136.143.184.112 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1746793960; cv=pass; b=W80j8uMjvhvYKogRJv6HvJrmy5cqIW7YHWlGpUuJko14PS8upREeMog2ulN6MIWv4Cc4HANFjHT3iEPdCr+Fm55GNxPAU5oEPL+jduYH6W7Q5EM+G+NDzQvI5j+NbOFZ02iWpgYb1BMipujcMOOHun7ZRZ3Vt7KwmgJ1VBDsGCs= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1746793960; c=relaxed/simple; bh=kmIfL21M0eDjl0pSbXFZnfqVqlW5S6SXBuijKGoJqMo=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=MTgLHJFk5rvn6vIaSFjCPen1xu1hjJIxeI6XKeC36pD1weBS4zhjl5pw2Sx9ut6e33fg8DDRSy9PT+EJ2AsWPxqaxEjPJQzp9LeoVR2glmkgSIpIU8BZxAxb/1UIypWqtWFmjPwl0/9w/VAfCUxPnRYJ/ZpxkxEUlpFQLvJIf2g= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=collabora.com; spf=pass smtp.mailfrom=collabora.com; dkim=pass (1024-bit key) header.d=collabora.com header.i=nicolas.frattaroli@collabora.com header.b=We3Wo5Gm; arc=pass smtp.client-ip=136.143.184.112 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=collabora.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=collabora.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=collabora.com header.i=nicolas.frattaroli@collabora.com header.b="We3Wo5Gm" ARC-Seal: i=1; a=rsa-sha256; t=1746793941; cv=none; d=zohomail.com; s=zohoarc; b=c7VXHe948DTKp7d2H26qPUXEhomzSFxR9cRa8Y6nx8TM6VFsXLkkU2Nu4fkrl+Km6TGHr6RlYPhQhCLjnmyau2Z/e9plPyVFWlcq7cDB7ZbafK3tQUqhJ2N/b092CGTcAK/HG1ctb6gdqVPid0mUt7ySRv+Gj9rVQeHYE77vUKM= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1746793941; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:MIME-Version:Message-ID:References:Subject:Subject:To:To:Message-Id:Reply-To; bh=wnIutrqgp/730meJXqnExUugfDBuXd3SUC7bTU9HmFk=; b=WKu6rt4vLK9C1qfDjFYzZf8uKsVUvtxQwfLh+fm0w1JYj3IuiCcr08UyrkB2bWVd27GfJeWKXMq8fVKg/Os3vzYOaLeEa1BMwERwN7AbPAFDfc+bhlcgsL4PAhgNxdW9XsotaVgNSQNjAUb010DzyupXBr3zKjLmueUzJ0HyW5w= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass header.i=collabora.com; spf=pass smtp.mailfrom=nicolas.frattaroli@collabora.com; dmarc=pass header.from= DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; t=1746793941; s=zohomail; d=collabora.com; i=nicolas.frattaroli@collabora.com; h=From:From:Date:Date:Subject:Subject:MIME-Version:Content-Type:Content-Transfer-Encoding:Message-Id:Message-Id:References:In-Reply-To:To:To:Cc:Cc:Reply-To; bh=wnIutrqgp/730meJXqnExUugfDBuXd3SUC7bTU9HmFk=; b=We3Wo5GmSp/9cX4H6r0+SHvNk3PeAtKI1Vwj2iQjSCOWi4pwZR373XpI2LRQK4Vv c6ENe1EMasRh5d/A9ZzfiZY5eRxIKN2e92qNhpLrripH4D0CQcVepnquSUjYOTAq7A+ QXn0fsirYt58AQ9hwZp0MrQvGxz6cNt3fWgLHG3I= Received: by mx.zohomail.com with SMTPS id 1746793940560889.20581442018; Fri, 9 May 2025 05:32:20 -0700 (PDT) From: Nicolas Frattaroli Date: Fri, 09 May 2025 14:31:43 +0200 Subject: [PATCH 3/3] arm64: dts: rockchip: add ROCK 5T device tree 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: <20250509-add-rock5t-v1-3-cff1de74eced@collabora.com> References: <20250509-add-rock5t-v1-0-cff1de74eced@collabora.com> In-Reply-To: <20250509-add-rock5t-v1-0-cff1de74eced@collabora.com> To: Rob Herring , Krzysztof Kozlowski , Conor Dooley , Heiko Stuebner , Sebastian Reichel Cc: kernel@collabora.com, devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rockchip@lists.infradead.org, linux-kernel@vger.kernel.org, Nicolas Frattaroli X-Mailer: b4 0.14.2 The RADXA ROCK 5T is a single board computer quite similar to the ROCK 5B+, except it has one more PCIe-to-Ethernet controller (at the expense of a USB3 port) and a barrel jack for power input instead. Some pins are shuffled around as well. Add a device tree for it. Signed-off-by: Nicolas Frattaroli --- arch/arm64/boot/dts/rockchip/Makefile | 1 + arch/arm64/boot/dts/rockchip/rk3588-rock-5t.dts | 105 ++++++++++++++++++++= ++++ 2 files changed, 106 insertions(+) diff --git a/arch/arm64/boot/dts/rockchip/Makefile b/arch/arm64/boot/dts/ro= ckchip/Makefile index 7a05bd885d5ecb96c3decbd3f483a6c58b81e0ab..eee0b27ca9f6a330baae8b50ca6= aaed5de56227f 100644 --- a/arch/arm64/boot/dts/rockchip/Makefile +++ b/arch/arm64/boot/dts/rockchip/Makefile @@ -166,6 +166,7 @@ dtb-$(CONFIG_ARCH_ROCKCHIP) +=3D rk3588-rock-5b.dtb dtb-$(CONFIG_ARCH_ROCKCHIP) +=3D rk3588-rock-5b-pcie-ep.dtbo dtb-$(CONFIG_ARCH_ROCKCHIP) +=3D rk3588-rock-5b-pcie-srns.dtbo dtb-$(CONFIG_ARCH_ROCKCHIP) +=3D rk3588-rock-5b-plus.dtb +dtb-$(CONFIG_ARCH_ROCKCHIP) +=3D rk3588-rock-5t.dtb dtb-$(CONFIG_ARCH_ROCKCHIP) +=3D rk3588-tiger-haikou.dtb dtb-$(CONFIG_ARCH_ROCKCHIP) +=3D rk3588-tiger-haikou-video-demo.dtbo dtb-$(CONFIG_ARCH_ROCKCHIP) +=3D rk3588-toybrick-x0.dtb diff --git a/arch/arm64/boot/dts/rockchip/rk3588-rock-5t.dts b/arch/arm64/b= oot/dts/rockchip/rk3588-rock-5t.dts new file mode 100644 index 0000000000000000000000000000000000000000..258c7400301d7f77517197ab433= 946bbfa39cf63 --- /dev/null +++ b/arch/arm64/boot/dts/rockchip/rk3588-rock-5t.dts @@ -0,0 +1,105 @@ +// SPDX-License-Identifier: (GPL-2.0+ OR MIT) + +/dts-v1/; + +#include "rk3588-rock-5b-5bp-5t.dtsi" + +/ { + model =3D "Radxa ROCK 5T"; + compatible =3D "radxa,rock-5t", "rockchip,rk3588"; + + analog-sound { + compatible =3D "audio-graph-card"; + label =3D "rk3588-es8316"; + + widgets =3D "Microphone", "Mic Jack", + "Headphone", "Headphones"; + + routing =3D "MIC2", "Mic Jack", + "Headphones", "HPOL", + "Headphones", "HPOR"; + + dais =3D <&i2s0_8ch_p0>; + hp-det-gpios =3D <&gpio4 RK_PC3 GPIO_ACTIVE_HIGH>; + pinctrl-names =3D "default"; + pinctrl-0 =3D <&hp_detect>; + }; + + leds { + compatible =3D "gpio-leds"; + pinctrl-names =3D "default"; + pinctrl-0 =3D <&led_rgb_b>; + + led_rgb_b { + function =3D LED_FUNCTION_STATUS; + color =3D ; + gpios =3D <&gpio0 RK_PA0 GPIO_ACTIVE_HIGH>; + linux,default-trigger =3D "heartbeat"; + }; + }; + + rfkill { + compatible =3D "rfkill-gpio"; + label =3D "rfkill-m2-wlan"; + radio-type =3D "wlan"; + shutdown-gpios =3D <&gpio1 RK_PB0 GPIO_ACTIVE_HIGH>; + }; + + vcc3v3_pcie2x1l1: regulator-vcc3v3-pcie2x1l2 { + compatible =3D "regulator-fixed"; + regulator-name =3D "vcc3v3_pcie2x1l1"; + regulator-min-microvolt =3D <3300000>; + regulator-max-microvolt =3D <3300000>; + startup-delay-us =3D <5000>; + vin-supply =3D <&vcc_3v3_s3>; + }; +}; + +&hdmi_receiver { + hpd-gpios =3D <&gpio2 RK_PB7 GPIO_ACTIVE_LOW>; + status =3D "okay"; +}; + +&pcie2x1l1 { + pinctrl-names =3D "default"; + pinctrl-0 =3D <&pcie2_1_rst>; + reset-gpios =3D <&gpio4 RK_PA2 GPIO_ACTIVE_HIGH>; + vpcie3v3-supply =3D <&vcc3v3_pcie2x1l1>; + status =3D "okay"; +}; + +&pinctrl { + hdmirx { + hdmirx_hpd: hdmirx-5v-detection { + rockchip,pins =3D <2 RK_PB7 RK_FUNC_GPIO &pcfg_pull_none>; + }; + }; + + leds { + led_rgb_b: led-rgb-b { + rockchip,pins =3D <0 RK_PA0 RK_FUNC_GPIO &pcfg_pull_none>; + }; + }; + + pcie2 { + pcie2_1_rst: pcie2-1-rst { + rockchip,pins =3D <4 RK_PA2 RK_FUNC_GPIO &pcfg_pull_none>; + }; + pcie2_0_vcc3v3_en: pcie2-0-vcc-en { + rockchip,pins =3D <2 RK_PC0 RK_FUNC_GPIO &pcfg_pull_none>; + }; + }; + + sound { + hp_detect: hp-detect { + rockchip,pins =3D <4 RK_PC3 RK_FUNC_GPIO &pcfg_pull_none>; + }; + }; +}; + +&vcc3v3_pcie2x1l0 { + gpios =3D <&gpio2 RK_PC0 GPIO_ACTIVE_HIGH>; + pinctrl-names =3D "default"; + pinctrl-0 =3D <&pcie2_0_vcc3v3_en>; + status =3D "okay"; +}; --=20 2.49.0