From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-pf1-f180.google.com (mail-pf1-f180.google.com [209.85.210.180]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id B9BB426CE17 for ; Sat, 31 Jan 2026 15:31:31 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.180 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1769873493; cv=none; b=L7Ag3xVqjuHn3zWxIquNEAoUSNfD2XLz81rE6SHNgb2BK1y4TQpB02ZiQDnUspEfIUsbCU9AF+CkUfHlPE1XuO9q4ausG6VHiIRnlphk3GD6an+Tuw4JDUFXcb/zUx/KBocVX5q+qx5dU/WnXLIN7T80bDDocKxi4jC91/wM3mc= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1769873493; c=relaxed/simple; bh=im1vSOQStDGB6mfuwT1mnoAujov2x/j62qFp+27OtQk=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=BU+0QpA/0hQC5Z15Km8H5O2XqoenidI8jBjPIJTb/apV5qooPMyEB5InaiwlqcT5fehThfO8q4zvKECOSMIwOZ5YxQz/flAbQ5upQGKTEnT6enb1LtLf8PjqzSOA3W1WGFR/5lm0W+k80L2VkBIuU9I7lpkS5zIE0+kk0zGv+UE= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=ldr0oXZG; arc=none smtp.client-ip=209.85.210.180 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="ldr0oXZG" Received: by mail-pf1-f180.google.com with SMTP id d2e1a72fcca58-81e8b1bdf0cso1889410b3a.3 for ; Sat, 31 Jan 2026 07:31:31 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1769873491; x=1770478291; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=/zpjb9qiEoko6BYqT2R2iLSBVI8rHRkVBYY+cJfJABg=; b=ldr0oXZGsxmRDjpUPQljpSr/ZzsO28fcyyBxL8OpVrGmK2rzJur1LXGgzt/t8eb3vN VtrfsToUuaAVbxDu3riO3lq+d3xDSTxN3zTbZ0FayNlWsvhocHk2juAR6RhBVOBEG4mG eglu56hb70vez4QdZyvNiwYZnCUuXtIoeNn6mdw59LQ6HyxHyCXVtL0btTqEoTleXOKB OJnD+K2ExAVhZppD2YGs6+I5gPSN1Ak9JxkDLT1XETqhCgmC57TiKqfpBHrnc+MqMKUE h/6tQ192EBP+ZIt9Mujny38nKDCLg/GGen1SbE28dWwf8HaXHF9iZySPHi8OE13KMlQz qlOg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1769873491; x=1770478291; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=/zpjb9qiEoko6BYqT2R2iLSBVI8rHRkVBYY+cJfJABg=; b=YV/oCO5LLXimHyCe1TpMDujKnYVgXfLUX9Hwzl+r8K2F+vm/Dk+3nOWXmmUmcDXRwc Vul5gX2Qm+3dQ5Z2v3vGPk+2YDHyl8NI3IT/5LpV0tAVljCQU/Anhebdapmajj5ZK7EB Svop5XRH5oS2x7kx13rBdfA3X6bB+M0obxGiLdWWMvU42bvIDRbYjdmavwD4zlj909tR zSgAmjvKjyX930KuKWPzhR8LSFBKEyuXcA8DCz9xQGcx1gnMYLG18CKy+qANvWGr8tSh D8OWGhB0h5VSWOjycxstsO5nNcTjiLht11LJv24dUPZfYVpQiuRMkLRBrNPq3yyJAtYY u+sQ== X-Gm-Message-State: AOJu0Yx0dAA5LXNSLJUmp7gzXtUF8w5o48rnX8hjMOVtID1WBMAJCMgc pzF8XOr4Ioj7NXI4sIVERr2coF7r747pOlk/fJy36XWKVs/FuG8xTeo1qhdcud9J X-Gm-Gg: AZuq6aIUHHqPm/4noEtWxL8d0x1zPrt5VWpQOYkAb5RpvjenSHn5uiNdud3PhXPGl4E HOXI//hB9piAsLdqPiScM3OxDyZU3A3EwFHhjy9SVm8b/l3dUBWrU+s+motNC0v07IQgGN457WG ua7Z8iqrC7QqKB3RvmMVSHA/0iRxEhGcCsiVcEudDQUb/TuKbY5WumYxo8h+9fgY1qEiHlvUlQq 5Gd6saD8bajm7+g0sxN/Dr7QSdu5jj2Wu4WUG5KAzrjhCT2/Dzx4dOcwZnK6SLXTKDqHaIa2V/T kwZAQRtmhheXdHF8UgWgF/stzsUlwezfujTqY4tWLaoGlP2Amo/AbB8lV6RVd/8UoTVXdpQx6bw JAuuHL38etiPz7dop5kXNyTshlMvIJlxCTfecK7gmCobvoXmG5hhaGwHksjzXgeleoYczsl6+sy 0V1jBjXILZJUX6ioQ75eh9DVthET/gQUvr3jVjO3Ul70KXgd7U X-Received: by 2002:a05:6a21:690:b0:33f:df99:11e5 with SMTP id adf61e73a8af0-392e0051f35mr6055531637.28.1769873490853; Sat, 31 Jan 2026 07:31:30 -0800 (PST) Received: from arch.localdomain (awork135098.netvigator.com. [219.76.135.98]) by smtp.gmail.com with ESMTPSA id 41be03b00d2f7-c642487f1f5sm10701122a12.0.2026.01.31.07.31.27 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 31 Jan 2026 07:31:30 -0800 (PST) From: Jun Yan To: devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rockchip@lists.infradead.org Cc: robh@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org, heiko@sntech.de, alchark@gmail.com, dsimic@manjaro.org, Jun Yan Subject: [PATCH 3/3] arm64: dts: rockchip: Add OneThing Edge Cube series Date: Sat, 31 Jan 2026 23:31:03 +0800 Message-ID: <20260131153106.31723-4-jerrysteve1101@gmail.com> X-Mailer: git-send-email 2.52.0 In-Reply-To: <20260131153106.31723-1-jerrysteve1101@gmail.com> References: <20260131153106.31723-1-jerrysteve1101@gmail.com> Precedence: bulk X-Mailing-List: devicetree@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit The OneThing Edge Cube (OEC) series features the RK3566 SoC, 8GB eMMC storage, and supports one SATA interface, one Gigabit Ethernet port, and one USB 3.0 port. Other than the difference in RAM capacity, the OEC and OEC-turbo are identical in all other specifications. Specification: - Rockchip RK3566 - LPDDR4X 2GB (OEC) / 4GB (OEC-turbo) - eMMC 8GB - Gigabit Ethernet port x 1 - USB 3.0 port x 1 - USB-C 2.0 port x 1 - 12V DC Power supply - SATA 3.0 connector x 1 Signed-off-by: Jun Yan --- arch/arm64/boot/dts/rockchip/Makefile | 2 + .../rockchip/rk3566-onething-oec-turbo.dts | 10 + .../boot/dts/rockchip/rk3566-onething-oec.dts | 10 + .../dts/rockchip/rk3566-onething-oec.dtsi | 309 ++++++++++++++++++ 4 files changed, 331 insertions(+) create mode 100644 arch/arm64/boot/dts/rockchip/rk3566-onething-oec-turbo.dts create mode 100644 arch/arm64/boot/dts/rockchip/rk3566-onething-oec.dts create mode 100644 arch/arm64/boot/dts/rockchip/rk3566-onething-oec.dtsi diff --git a/arch/arm64/boot/dts/rockchip/Makefile b/arch/arm64/boot/dts/rockchip/Makefile index 4d384f153c13..ec57719e4573 100644 --- a/arch/arm64/boot/dts/rockchip/Makefile +++ b/arch/arm64/boot/dts/rockchip/Makefile @@ -104,6 +104,8 @@ dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3566-anbernic-rg353v.dtb dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3566-anbernic-rg353vs.dtb dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3566-anbernic-rg503.dtb dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3566-odroid-m1s.dtb +dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3566-onething-oec.dtb +dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3566-onething-oec-turbo.dtb dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3566-orangepi-3b-v1.1.dtb dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3566-orangepi-3b-v2.1.dtb dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3566-pinenote-v1.1.dtb diff --git a/arch/arm64/boot/dts/rockchip/rk3566-onething-oec-turbo.dts b/arch/arm64/boot/dts/rockchip/rk3566-onething-oec-turbo.dts new file mode 100644 index 000000000000..16d0cd0cf577 --- /dev/null +++ b/arch/arm64/boot/dts/rockchip/rk3566-onething-oec-turbo.dts @@ -0,0 +1,10 @@ +// SPDX-License-Identifier: (GPL-2.0+ OR MIT) + +/dts-v1/; + +#include "rk3566-onething-oec.dtsi" + +/ { + model = "OneThing OEC-turbo"; + compatible = "onething,oec-turbo", "rockchip,rk3566"; +}; diff --git a/arch/arm64/boot/dts/rockchip/rk3566-onething-oec.dts b/arch/arm64/boot/dts/rockchip/rk3566-onething-oec.dts new file mode 100644 index 000000000000..81da771ad63d --- /dev/null +++ b/arch/arm64/boot/dts/rockchip/rk3566-onething-oec.dts @@ -0,0 +1,10 @@ +// SPDX-License-Identifier: (GPL-2.0+ OR MIT) + +/dts-v1/; + +#include "rk3566-onething-oec.dtsi" + +/ { + model = "OneThing OEC"; + compatible = "onething,oec", "rockchip,rk3566"; +}; diff --git a/arch/arm64/boot/dts/rockchip/rk3566-onething-oec.dtsi b/arch/arm64/boot/dts/rockchip/rk3566-onething-oec.dtsi new file mode 100644 index 000000000000..df458a881d0e --- /dev/null +++ b/arch/arm64/boot/dts/rockchip/rk3566-onething-oec.dtsi @@ -0,0 +1,309 @@ +// SPDX-License-Identifier: (GPL-2.0+ OR MIT) + +/dts-v1/; + +#include +#include +#include +#include "rk3566.dtsi" + +/ { + aliases { + ethernet0 = &gmac1; + mmc0 = &sdhci; + }; + + chosen: chosen { + stdout-path = "serial2:1500000n8"; + }; + + gmac1_clkin: external-gmac1-clock { + compatible = "fixed-clock"; + clock-frequency = <125000000>; + clock-output-names = "gmac1_clkin"; + #clock-cells = <0>; + }; + + leds { + compatible = "gpio-leds"; + + rgb_led_b: led-0 { + color = ; + default-state = "off"; + function = LED_FUNCTION_STATUS; + gpios = <&gpio3 RK_PB3 GPIO_ACTIVE_LOW>; + }; + + rgb_led_g: led-1 { + color = ; + default-state = "on"; + function = LED_FUNCTION_STATUS; + gpios = <&gpio3 RK_PB4 GPIO_ACTIVE_LOW>; + }; + + rgb_led_r: led-2 { + color = ; + default-state = "off"; + function = LED_FUNCTION_STATUS; + gpios = <&gpio0 RK_PC3 GPIO_ACTIVE_LOW>; + }; + }; + + vcc_1v8: regulator-vcc-1v8 { + compatible = "regulator-fixed"; + regulator-name = "vcc_1v8"; + regulator-always-on; + regulator-boot-on; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <1800000>; + vin-supply = <&vcc5v0_sys>; + }; + + vcc_3v3: regulator-vcc-3v3 { + compatible = "regulator-fixed"; + regulator-name = "vcc_3v3"; + regulator-always-on; + regulator-boot-on; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + vin-supply = <&vcc5v0_sys>; + }; + + vcc12v0_dcin: regulator-vcc12v0-dcin { + compatible = "regulator-fixed"; + regulator-name = "vcc12v0_dcin"; + regulator-always-on; + regulator-boot-on; + regulator-min-microvolt = <12000000>; + regulator-max-microvolt = <12000000>; + }; + + vcc3v3_sys: regulator-vcc3v3-sys { + compatible = "regulator-fixed"; + regulator-name = "vcc3v3_sys"; + regulator-always-on; + regulator-boot-on; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + vin-supply = <&vcc12v0_dcin>; + }; + + vcc5v0_sys: regulator-vcc5v0-sys { + compatible = "regulator-fixed"; + regulator-name = "vcc5v0_sys"; + regulator-always-on; + regulator-boot-on; + regulator-min-microvolt = <5000000>; + regulator-max-microvolt = <5000000>; + vin-supply = <&vcc12v0_dcin>; + }; + + vcc5v0_usb_host: regulator-vcc5v0-usb-host { + compatible = "regulator-fixed"; + enable-active-high; + gpio = <&gpio0 RK_PC6 GPIO_ACTIVE_HIGH>; + pinctrl-names = "default"; + pinctrl-0 = <&vcc5v0_usb_host_en>; + regulator-name = "vcc5v0_usb_host"; + regulator-min-microvolt = <5000000>; + regulator-max-microvolt = <5000000>; + vin-supply = <&vcc5v0_sys>; + }; + + vdd_cpu: regulator-vdd-cpu { + compatible = "pwm-regulator"; + pwms = <&pwm0 0 5000 1>; + regulator-name = "vdd_cpu"; + regulator-min-microvolt = <800000>; + regulator-max-microvolt = <1200000>; + regulator-always-on; + regulator-boot-on; + regulator-settling-time-up-us = <250>; + pwm-supply = <&vcc5v0_sys>; + }; + + vdd_fixed: regulator-vdd-fixed { + compatible = "regulator-fixed"; + regulator-name = "vdd_fixed"; + regulator-min-microvolt = <950000>; + regulator-max-microvolt = <950000>; + regulator-always-on; + regulator-boot-on; + vin-supply = <&vcc5v0_sys>; + }; + + vdd_logic: regulator-vdd-logic { + compatible = "pwm-regulator"; + pwms = <&pwm1 0 5000 1>; + regulator-name = "vdd_logic"; + regulator-min-microvolt = <800000>; + regulator-max-microvolt = <1100000>; + regulator-always-on; + regulator-boot-on; + regulator-settling-time-up-us = <250>; + pwm-supply = <&vcc5v0_sys>; + }; +}; + + +/* No hardware video output port */ +&display_subsystem { + status = "disabled"; +}; + +&combphy1 { + status = "okay"; +}; + +&combphy2 { + status = "okay"; +}; + +&cpu0 { + cpu-supply = <&vdd_cpu>; +}; + +&cpu1 { + cpu-supply = <&vdd_cpu>; +}; + +&cpu2 { + cpu-supply = <&vdd_cpu>; +}; + +&cpu3 { + cpu-supply = <&vdd_cpu>; +}; + +&gmac1 { + assigned-clocks = <&cru SCLK_GMAC1_RX_TX>, <&cru SCLK_GMAC1>; + assigned-clock-parents = <&cru SCLK_GMAC1_RGMII_SPEED>, <&gmac1_clkin>; + clock_in_out = "input"; + phy-handle = <&rgmii_phy1>; + phy-mode = "rgmii-id"; + pinctrl-names = "default"; + pinctrl-0 = <&gmac1m1_miim + &gmac1m1_tx_bus2 + &gmac1m1_rx_bus2 + &gmac1m1_rgmii_clk + &gmac1m1_rgmii_bus + &gmac1m1_clkinout>; + rx_delay = <0x0>; + tx_delay = <0x0>; + status = "okay"; +}; + +&gpu { + status = "okay"; +}; + +&mdio1 { + rgmii_phy1: ethernet-phy@1 { + compatible = "ethernet-phy-ieee802.3-c22"; + reg = <0x1>; + reset-assert-us = <20000>; + reset-deassert-us = <100000>; + reset-gpios = <&gpio4 RK_PC2 GPIO_ACTIVE_LOW>; + }; +}; + +&pinctrl { + usb { + vcc5v0_usb_host_en: vcc5v0-usb-host-en { + rockchip,pins = <0 RK_PC6 RK_FUNC_GPIO &pcfg_pull_none>; + }; + }; +}; + +&pmu_io_domains { + pmuio1-supply = <&vcc_3v3>; + pmuio2-supply = <&vcc_3v3>; + vccio1-supply = <&vcc_1v8>; + vccio3-supply = <&vcc_3v3>; + vccio4-supply = <&vcc_1v8>; + vccio5-supply = <&vcc_3v3>; + vccio6-supply = <&vcc_1v8>; + vccio7-supply = <&vcc_3v3>; + status = "okay"; +}; + +&pwm0 { + status = "okay"; +}; + +&pwm1 { + status = "okay"; +}; + +&saradc { + vref-supply = <&vcc_1v8>; + status = "okay"; +}; + +&sata2 { + status = "okay"; +}; + +&sdhci { + bus-width = <8>; + mmc-hs200-1_8v; + non-removable; + status = "okay"; +}; + +&tsadc { + rockchip,hw-tshut-mode = <1>; + rockchip,hw-tshut-polarity = <0>; + status = "okay"; +}; + +&uart2 { + status = "okay"; +}; + +&usb_host0_ehci { + status = "okay"; +}; + +&usb_host0_ohci { + status = "okay"; +}; + +&usb_host1_ehci { + status = "okay"; +}; + +&usb_host1_ohci { + status = "okay"; +}; + +&usb_host1_xhci { + status = "okay"; +}; + +&usb2phy0 { + status = "okay"; +}; + +&usb2phy0_host { + phy-supply = <&vcc5v0_usb_host>; + status = "okay"; +}; + +&usb2phy0_otg { + status = "okay"; +}; + +&usb2phy1 { + status = "okay"; +}; + +&usb2phy1_host { + phy-supply = <&vcc5v0_usb_host>; + status = "okay"; +}; + +&usb2phy1_otg { + phy-supply = <&vcc5v0_usb_host>; + status = "okay"; +}; -- 2.52.0