xref: /linux/arch/arm64/boot/dts/rockchip/rk3568-qnap-ts233.dts (revision 0cac5ce06e524755b3dac1e0a060b05992076d93)
1*ce0b84e7SHeiko Stuebner// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2*ce0b84e7SHeiko Stuebner/*
3*ce0b84e7SHeiko Stuebner * Copyright (c) 2021 Rockchip Electronics Co., Ltd.
4*ce0b84e7SHeiko Stuebner * Copyright (c) 2024 Heiko Stuebner <heiko@sntech.de>
5*ce0b84e7SHeiko Stuebner */
6*ce0b84e7SHeiko Stuebner
7*ce0b84e7SHeiko Stuebner/dts-v1/;
8*ce0b84e7SHeiko Stuebner
9*ce0b84e7SHeiko Stuebner#include "rk3568-qnap-tsx33.dtsi"
10*ce0b84e7SHeiko Stuebner
11*ce0b84e7SHeiko Stuebner/ {
12*ce0b84e7SHeiko Stuebner	model = "Qnap TS-233-2G NAS System 2-Bay";
13*ce0b84e7SHeiko Stuebner	compatible = "qnap,ts233", "rockchip,rk3568";
14*ce0b84e7SHeiko Stuebner
15*ce0b84e7SHeiko Stuebner	aliases {
16*ce0b84e7SHeiko Stuebner		ethernet0 = &gmac0;
17*ce0b84e7SHeiko Stuebner	};
18*ce0b84e7SHeiko Stuebner};
19*ce0b84e7SHeiko Stuebner
20*ce0b84e7SHeiko Stuebner/* connected to sata2 */
21*ce0b84e7SHeiko Stuebner&combphy2 {
22*ce0b84e7SHeiko Stuebner	status = "okay";
23*ce0b84e7SHeiko Stuebner};
24*ce0b84e7SHeiko Stuebner
25*ce0b84e7SHeiko Stuebner&gmac0 {
26*ce0b84e7SHeiko Stuebner	assigned-clocks = <&cru SCLK_GMAC0_RX_TX>, <&cru SCLK_GMAC0>;
27*ce0b84e7SHeiko Stuebner	assigned-clock-parents = <&cru SCLK_GMAC0_RGMII_SPEED>, <&cru CLK_MAC0_2TOP>;
28*ce0b84e7SHeiko Stuebner	assigned-clock-rates = <0>, <125000000>;
29*ce0b84e7SHeiko Stuebner	clock_in_out = "output";
30*ce0b84e7SHeiko Stuebner	phy-handle = <&rgmii_phy0>;
31*ce0b84e7SHeiko Stuebner	phy-mode = "rgmii-id";
32*ce0b84e7SHeiko Stuebner	pinctrl-names = "default";
33*ce0b84e7SHeiko Stuebner	pinctrl-0 = <&gmac0_miim
34*ce0b84e7SHeiko Stuebner		     &gmac0_tx_bus2
35*ce0b84e7SHeiko Stuebner		     &gmac0_rx_bus2
36*ce0b84e7SHeiko Stuebner		     &gmac0_rgmii_clk
37*ce0b84e7SHeiko Stuebner		     &gmac0_rgmii_bus>;
38*ce0b84e7SHeiko Stuebner	status = "okay";
39*ce0b84e7SHeiko Stuebner};
40*ce0b84e7SHeiko Stuebner
41*ce0b84e7SHeiko Stuebner&i2c1 {
42*ce0b84e7SHeiko Stuebner	/* eeprom for vital-product-data on the backplane */
43*ce0b84e7SHeiko Stuebner	eeprom@56 {
44*ce0b84e7SHeiko Stuebner		compatible = "giantec,gt24c04a", "atmel,24c04";
45*ce0b84e7SHeiko Stuebner		reg = <0x56>;
46*ce0b84e7SHeiko Stuebner		label = "VPD_BP";
47*ce0b84e7SHeiko Stuebner		num-addresses = <2>;
48*ce0b84e7SHeiko Stuebner		pagesize = <16>;
49*ce0b84e7SHeiko Stuebner		read-only;
50*ce0b84e7SHeiko Stuebner	};
51*ce0b84e7SHeiko Stuebner};
52*ce0b84e7SHeiko Stuebner
53*ce0b84e7SHeiko Stuebner&leds {
54*ce0b84e7SHeiko Stuebner	led-1 {
55*ce0b84e7SHeiko Stuebner		color = <LED_COLOR_ID_GREEN>;
56*ce0b84e7SHeiko Stuebner		function = LED_FUNCTION_DISK;
57*ce0b84e7SHeiko Stuebner		gpios = <&gpio1 RK_PD6 GPIO_ACTIVE_LOW>;
58*ce0b84e7SHeiko Stuebner		label = "hdd2:green:disk";
59*ce0b84e7SHeiko Stuebner		linux,default-trigger = "disk-activity";
60*ce0b84e7SHeiko Stuebner		pinctrl-names = "default";
61*ce0b84e7SHeiko Stuebner		pinctrl-0 = <&hdd2_led_pin>;
62*ce0b84e7SHeiko Stuebner	};
63*ce0b84e7SHeiko Stuebner};
64*ce0b84e7SHeiko Stuebner
65*ce0b84e7SHeiko Stuebner&mcu {
66*ce0b84e7SHeiko Stuebner	compatible = "qnap,ts233-mcu";
67*ce0b84e7SHeiko Stuebner};
68*ce0b84e7SHeiko Stuebner
69*ce0b84e7SHeiko Stuebner&mdio0 {
70*ce0b84e7SHeiko Stuebner	rgmii_phy0: ethernet-phy@3 {
71*ce0b84e7SHeiko Stuebner		/* Motorcomm YT8521 phy */
72*ce0b84e7SHeiko Stuebner		compatible = "ethernet-phy-ieee802.3-c22";
73*ce0b84e7SHeiko Stuebner		reg = <0x3>;
74*ce0b84e7SHeiko Stuebner		pinctrl-0 = <&eth_phy0_reset_pin>;
75*ce0b84e7SHeiko Stuebner		pinctrl-names = "default";
76*ce0b84e7SHeiko Stuebner		reset-assert-us = <10000>;
77*ce0b84e7SHeiko Stuebner		reset-gpios = <&gpio0 RK_PC6 GPIO_ACTIVE_LOW>;
78*ce0b84e7SHeiko Stuebner	};
79*ce0b84e7SHeiko Stuebner};
80*ce0b84e7SHeiko Stuebner
81*ce0b84e7SHeiko Stuebner&pinctrl {
82*ce0b84e7SHeiko Stuebner	gmac0 {
83*ce0b84e7SHeiko Stuebner		eth_phy0_reset_pin: eth-phy0-reset-pin {
84*ce0b84e7SHeiko Stuebner			rockchip,pins = <0 RK_PC6 RK_FUNC_GPIO &pcfg_pull_up>;
85*ce0b84e7SHeiko Stuebner		};
86*ce0b84e7SHeiko Stuebner	};
87*ce0b84e7SHeiko Stuebner
88*ce0b84e7SHeiko Stuebner	leds {
89*ce0b84e7SHeiko Stuebner		hdd2_led_pin: hdd2-led-pin {
90*ce0b84e7SHeiko Stuebner			rockchip,pins = <1 RK_PD6 RK_FUNC_GPIO &pcfg_pull_up>;
91*ce0b84e7SHeiko Stuebner		};
92*ce0b84e7SHeiko Stuebner	};
93*ce0b84e7SHeiko Stuebner};
94*ce0b84e7SHeiko Stuebner
95*ce0b84e7SHeiko Stuebner&sata2 {
96*ce0b84e7SHeiko Stuebner	status = "okay";
97*ce0b84e7SHeiko Stuebner};
98*ce0b84e7SHeiko Stuebner
99*ce0b84e7SHeiko Stuebner&usb2phy1 {
100*ce0b84e7SHeiko Stuebner	status = "okay";
101*ce0b84e7SHeiko Stuebner};
102*ce0b84e7SHeiko Stuebner
103*ce0b84e7SHeiko Stuebner/* connected to usb_host1_ehci/ohci */
104*ce0b84e7SHeiko Stuebner&usb2phy1_host {
105*ce0b84e7SHeiko Stuebner	phy-supply = <&vcc5v0_host>;
106*ce0b84e7SHeiko Stuebner	status = "okay";
107*ce0b84e7SHeiko Stuebner};
108*ce0b84e7SHeiko Stuebner
109*ce0b84e7SHeiko Stuebner/* connected to usb_host0_ehci/ohci */
110*ce0b84e7SHeiko Stuebner&usb2phy1_otg {
111*ce0b84e7SHeiko Stuebner	phy-supply = <&vcc5v0_host>;
112*ce0b84e7SHeiko Stuebner	status = "okay";
113*ce0b84e7SHeiko Stuebner};
114*ce0b84e7SHeiko Stuebner
115*ce0b84e7SHeiko Stuebner/* right port backside */
116*ce0b84e7SHeiko Stuebner&usb_host0_ehci {
117*ce0b84e7SHeiko Stuebner	status = "okay";
118*ce0b84e7SHeiko Stuebner};
119*ce0b84e7SHeiko Stuebner
120*ce0b84e7SHeiko Stuebner&usb_host0_ohci {
121*ce0b84e7SHeiko Stuebner	status = "okay";
122*ce0b84e7SHeiko Stuebner};
123*ce0b84e7SHeiko Stuebner
124*ce0b84e7SHeiko Stuebner/* left port backside */
125*ce0b84e7SHeiko Stuebner&usb_host1_ehci {
126*ce0b84e7SHeiko Stuebner	status = "okay";
127*ce0b84e7SHeiko Stuebner};
128*ce0b84e7SHeiko Stuebner
129*ce0b84e7SHeiko Stuebner&usb_host1_ohci {
130*ce0b84e7SHeiko Stuebner	status = "okay";
131*ce0b84e7SHeiko Stuebner};
132