15067f459SPeter Geis// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
25067f459SPeter Geis/*
35067f459SPeter Geis * Copyright (c) 2021 Rockchip Electronics Co., Ltd.
45067f459SPeter Geis */
55067f459SPeter Geis
65067f459SPeter Geis#include "rk356x.dtsi"
75067f459SPeter Geis
85067f459SPeter Geis/ {
95067f459SPeter Geis	compatible = "rockchip,rk3568";
105067f459SPeter Geis
11*3cc8cd2dSYifeng Zhao	pipe_phy_grf0: syscon@fdc70000 {
12*3cc8cd2dSYifeng Zhao		compatible = "rockchip,rk3568-pipe-phy-grf", "syscon";
13*3cc8cd2dSYifeng Zhao		reg = <0x0 0xfdc70000 0x0 0x1000>;
14*3cc8cd2dSYifeng Zhao	};
15*3cc8cd2dSYifeng Zhao
165067f459SPeter Geis	qos_pcie3x1: qos@fe190080 {
175067f459SPeter Geis		compatible = "rockchip,rk3568-qos", "syscon";
185067f459SPeter Geis		reg = <0x0 0xfe190080 0x0 0x20>;
195067f459SPeter Geis	};
205067f459SPeter Geis
215067f459SPeter Geis	qos_pcie3x2: qos@fe190100 {
225067f459SPeter Geis		compatible = "rockchip,rk3568-qos", "syscon";
235067f459SPeter Geis		reg = <0x0 0xfe190100 0x0 0x20>;
245067f459SPeter Geis	};
255067f459SPeter Geis
265067f459SPeter Geis	qos_sata0: qos@fe190200 {
275067f459SPeter Geis		compatible = "rockchip,rk3568-qos", "syscon";
285067f459SPeter Geis		reg = <0x0 0xfe190200 0x0 0x20>;
295067f459SPeter Geis	};
30b8d41e50SMichael Riesch
31b8d41e50SMichael Riesch	gmac0: ethernet@fe2a0000 {
32b8d41e50SMichael Riesch		compatible = "rockchip,rk3568-gmac", "snps,dwmac-4.20a";
33b8d41e50SMichael Riesch		reg = <0x0 0xfe2a0000 0x0 0x10000>;
34b8d41e50SMichael Riesch		interrupts = <GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH>,
35b8d41e50SMichael Riesch			     <GIC_SPI 24 IRQ_TYPE_LEVEL_HIGH>;
36b8d41e50SMichael Riesch		interrupt-names = "macirq", "eth_wake_irq";
37b8d41e50SMichael Riesch		clocks = <&cru SCLK_GMAC0>, <&cru SCLK_GMAC0_RX_TX>,
38b8d41e50SMichael Riesch			 <&cru SCLK_GMAC0_RX_TX>, <&cru CLK_MAC0_REFOUT>,
39b8d41e50SMichael Riesch			 <&cru ACLK_GMAC0>, <&cru PCLK_GMAC0>,
40b8d41e50SMichael Riesch			 <&cru SCLK_GMAC0_RX_TX>, <&cru CLK_GMAC0_PTP_REF>,
41b8d41e50SMichael Riesch			 <&cru PCLK_XPCS>;
42b8d41e50SMichael Riesch		clock-names = "stmmaceth", "mac_clk_rx",
43b8d41e50SMichael Riesch			      "mac_clk_tx", "clk_mac_refout",
44b8d41e50SMichael Riesch			      "aclk_mac", "pclk_mac",
45b8d41e50SMichael Riesch			      "clk_mac_speed", "ptp_ref",
46b8d41e50SMichael Riesch			      "pclk_xpcs";
47b8d41e50SMichael Riesch		resets = <&cru SRST_A_GMAC0>;
48b8d41e50SMichael Riesch		reset-names = "stmmaceth";
49b8d41e50SMichael Riesch		rockchip,grf = <&grf>;
50b8d41e50SMichael Riesch		snps,axi-config = <&gmac0_stmmac_axi_setup>;
51b8d41e50SMichael Riesch		snps,mixed-burst;
52b8d41e50SMichael Riesch		snps,mtl-rx-config = <&gmac0_mtl_rx_setup>;
53b8d41e50SMichael Riesch		snps,mtl-tx-config = <&gmac0_mtl_tx_setup>;
54b8d41e50SMichael Riesch		snps,tso;
55b8d41e50SMichael Riesch		status = "disabled";
56b8d41e50SMichael Riesch
57b8d41e50SMichael Riesch		mdio0: mdio {
58b8d41e50SMichael Riesch			compatible = "snps,dwmac-mdio";
59b8d41e50SMichael Riesch			#address-cells = <0x1>;
60b8d41e50SMichael Riesch			#size-cells = <0x0>;
61b8d41e50SMichael Riesch		};
62b8d41e50SMichael Riesch
63b8d41e50SMichael Riesch		gmac0_stmmac_axi_setup: stmmac-axi-config {
64b8d41e50SMichael Riesch			snps,blen = <0 0 0 0 16 8 4>;
65b8d41e50SMichael Riesch			snps,rd_osr_lmt = <8>;
66b8d41e50SMichael Riesch			snps,wr_osr_lmt = <4>;
67b8d41e50SMichael Riesch		};
68b8d41e50SMichael Riesch
69b8d41e50SMichael Riesch		gmac0_mtl_rx_setup: rx-queues-config {
70b8d41e50SMichael Riesch			snps,rx-queues-to-use = <1>;
71b8d41e50SMichael Riesch			queue0 {};
72b8d41e50SMichael Riesch		};
73b8d41e50SMichael Riesch
74b8d41e50SMichael Riesch		gmac0_mtl_tx_setup: tx-queues-config {
75b8d41e50SMichael Riesch			snps,tx-queues-to-use = <1>;
76b8d41e50SMichael Riesch			queue0 {};
77b8d41e50SMichael Riesch		};
78b8d41e50SMichael Riesch	};
79*3cc8cd2dSYifeng Zhao
80*3cc8cd2dSYifeng Zhao	combphy0: phy@fe820000 {
81*3cc8cd2dSYifeng Zhao		compatible = "rockchip,rk3568-naneng-combphy";
82*3cc8cd2dSYifeng Zhao		reg = <0x0 0xfe820000 0x0 0x100>;
83*3cc8cd2dSYifeng Zhao		clocks = <&pmucru CLK_PCIEPHY0_REF>,
84*3cc8cd2dSYifeng Zhao			 <&cru PCLK_PIPEPHY0>,
85*3cc8cd2dSYifeng Zhao			 <&cru PCLK_PIPE>;
86*3cc8cd2dSYifeng Zhao		clock-names = "ref", "apb", "pipe";
87*3cc8cd2dSYifeng Zhao		assigned-clocks = <&pmucru CLK_PCIEPHY0_REF>;
88*3cc8cd2dSYifeng Zhao		assigned-clock-rates = <100000000>;
89*3cc8cd2dSYifeng Zhao		resets = <&cru SRST_PIPEPHY0>;
90*3cc8cd2dSYifeng Zhao		rockchip,pipe-grf = <&pipegrf>;
91*3cc8cd2dSYifeng Zhao		rockchip,pipe-phy-grf = <&pipe_phy_grf0>;
92*3cc8cd2dSYifeng Zhao		#phy-cells = <1>;
93*3cc8cd2dSYifeng Zhao		status = "disabled";
94*3cc8cd2dSYifeng Zhao	};
955067f459SPeter Geis};
965067f459SPeter Geis
975067f459SPeter Geis&cpu0_opp_table {
985067f459SPeter Geis	opp-1992000000 {
995067f459SPeter Geis		opp-hz = /bits/ 64 <1992000000>;
1005067f459SPeter Geis		opp-microvolt = <1150000 1150000 1150000>;
1015067f459SPeter Geis	};
1025067f459SPeter Geis};
1035067f459SPeter Geis
1045067f459SPeter Geis&power {
1055067f459SPeter Geis	power-domain@RK3568_PD_PIPE {
1065067f459SPeter Geis		reg = <RK3568_PD_PIPE>;
1075067f459SPeter Geis		clocks = <&cru PCLK_PIPE>;
1085067f459SPeter Geis		pm_qos = <&qos_pcie2x1>,
1095067f459SPeter Geis			 <&qos_pcie3x1>,
1105067f459SPeter Geis			 <&qos_pcie3x2>,
1115067f459SPeter Geis			 <&qos_sata0>,
1125067f459SPeter Geis			 <&qos_sata1>,
1135067f459SPeter Geis			 <&qos_sata2>,
1145067f459SPeter Geis			 <&qos_usb3_0>,
1155067f459SPeter Geis			 <&qos_usb3_1>;
1165067f459SPeter Geis		#power-domain-cells = <0>;
1175067f459SPeter Geis	};
1185067f459SPeter Geis};
119