blob: a66d915aa0f65758f1e733cb70ce44bad5de7d77 [file] [log] [blame]
Klaus Gogerfce152a62017-12-15 12:44:27 +01001// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
Romain Perierccfe128d2014-11-02 10:20:01 +00002/*
3 * Copyright (c) 2014 Romain Perier <romain.perier@gmail.com>
Romain Perierccfe128d2014-11-02 10:20:01 +00004 */
5
6/dts-v1/;
7#include "rk3066a.dtsi"
8
9/ {
10 model = "MarsBoard RK3066";
11 compatible = "haoyu,marsboard-rk3066", "rockchip,rk3066a";
12
Johan Jonkerd67113c2021-05-20 11:18:22 +020013 aliases {
14 mmc0 = &mmc0;
15 };
16
Javier Martinez Canillasadc9e3a2016-09-09 10:01:09 -040017 memory@60000000 {
Heiko Stuebner6158e6d2015-07-15 20:57:21 +020018 device_type = "memory";
Romain Perierccfe128d2014-11-02 10:20:01 +000019 reg = <0x60000000 0x40000000>;
20 };
21
Andy Yanac79e0e2016-01-15 21:26:18 +080022 vdd_log: vdd-log {
23 compatible = "pwm-regulator";
24 pwms = <&pwm3 0 1000>;
25 regulator-name = "vdd_log";
26 regulator-min-microvolt = <1200000>;
27 regulator-max-microvolt = <1200000>;
28 regulator-always-on;
29 voltage-table = <1000000 100>,
30 <1200000 42>;
31 status = "okay";
32 };
33
Romain Perierccfe128d2014-11-02 10:20:01 +000034 vcc_sd0: sdmmc-regulator {
35 compatible = "regulator-fixed";
36 regulator-name = "sdmmc-supply";
37 regulator-min-microvolt = <3000000>;
38 regulator-max-microvolt = <3000000>;
Andy Yane9e79d52016-10-22 20:54:55 +080039 gpio = <&gpio3 RK_PA7 GPIO_ACTIVE_LOW>;
Romain Perierccfe128d2014-11-02 10:20:01 +000040 startup-delay-us = <100000>;
41 vin-supply = <&vcc_io>;
42 };
Romain Perier288ce4a2014-12-01 18:37:26 +000043
44 vsys: vsys-regulator {
45 compatible = "regulator-fixed";
46 regulator-name = "vsys";
47 regulator-min-microvolt = <5000000>;
48 regulator-max-microvolt = <5000000>;
49 regulator-boot-on;
50 };
Romain Perierccfe128d2014-11-02 10:20:01 +000051};
52
Heiko Stuebner741f5af2017-12-02 17:36:45 +010053&cpu0 {
Johan Jonker20e464c2020-08-13 19:24:51 +020054 cpu-supply = <&vdd_arm>;
55};
56
57&cpu1 {
58 cpu-supply = <&vdd_arm>;
Heiko Stuebner741f5af2017-12-02 17:36:45 +010059};
60
Romain Perierccfe128d2014-11-02 10:20:01 +000061&i2c1 {
62 status = "okay";
63 clock-frequency = <400000>;
64
65 tps: tps@2d {
66 reg = <0x2d>;
67
68 interrupt-parent = <&gpio6>;
Andy Yane9e79d52016-10-22 20:54:55 +080069 interrupts = <RK_PA4 IRQ_TYPE_LEVEL_LOW>;
Romain Perierccfe128d2014-11-02 10:20:01 +000070
Romain Perier288ce4a2014-12-01 18:37:26 +000071 vcc1-supply = <&vsys>;
72 vcc2-supply = <&vsys>;
73 vcc3-supply = <&vsys>;
74 vcc4-supply = <&vsys>;
Romain Perierccfe128d2014-11-02 10:20:01 +000075 vcc5-supply = <&vcc_io>;
76 vcc6-supply = <&vcc_io>;
Romain Perier288ce4a2014-12-01 18:37:26 +000077 vcc7-supply = <&vsys>;
78 vccio-supply = <&vsys>;
Romain Perierccfe128d2014-11-02 10:20:01 +000079
80 regulators {
81 vcc_rtc: regulator@0 {
82 regulator-name = "vcc_rtc";
83 regulator-always-on;
84 };
85
86 vcc_io: regulator@1 {
87 regulator-name = "vcc_io";
88 regulator-always-on;
89 };
90
91 vdd_arm: regulator@2 {
92 regulator-name = "vdd_arm";
93 regulator-min-microvolt = <600000>;
94 regulator-max-microvolt = <1500000>;
95 regulator-boot-on;
96 regulator-always-on;
97 };
98
99 vcc_ddr: regulator@3 {
100 regulator-name = "vcc_ddr";
101 regulator-min-microvolt = <600000>;
102 regulator-max-microvolt = <1500000>;
103 regulator-boot-on;
104 regulator-always-on;
105 };
106
107 vcc18_cif: regulator@5 {
108 regulator-name = "vcc18_cif";
109 regulator-always-on;
110 };
111
112 vdd_11: regulator@6 {
113 regulator-name = "vdd_11";
114 regulator-always-on;
115 };
116
117 vcc_25: regulator@7 {
118 regulator-name = "vcc_25";
119 regulator-always-on;
120 };
121
122 vcc_18: regulator@8 {
123 regulator-name = "vcc_18";
124 regulator-always-on;
125 };
126
127 vcc25_hdmi: regulator@9 {
128 regulator-name = "vcc25_hdmi";
129 regulator-always-on;
130 };
131
132 vcca_33: regulator@10 {
133 regulator-name = "vcca_33";
134 regulator-always-on;
135 };
136
137 vcc_rmii: regulator@11 {
138 regulator-name = "vcc_rmii";
139 };
140
141 vcc28_cif: regulator@12 {
142 regulator-name = "vcc28_cif";
143 regulator-always-on;
144 };
145 };
146 };
147};
148
149/* must be included after &tps gets defined */
150#include "tps65910.dtsi"
151
152&emac {
153 status = "okay";
154
155 phy = <&phy0>;
156 phy-supply = <&vcc_rmii>;
157
158 pinctrl-names = "default";
159 pinctrl-0 = <&emac_xfer>, <&emac_mdio>, <&phy_int>;
160
161 phy0: ethernet-phy@0 {
162 reg = <0>;
163 interrupt-parent = <&gpio1>;
Andy Yane9e79d52016-10-22 20:54:55 +0800164 interrupts = <RK_PD2 IRQ_TYPE_LEVEL_LOW>;
Romain Perierccfe128d2014-11-02 10:20:01 +0000165 };
166};
167
Romain Perier736ef332015-08-24 18:04:41 +0200168&mmc0 {
169 status = "okay";
170
171 pinctrl-names = "default";
172 pinctrl-0 = <&sd0_clk>, <&sd0_cmd>, <&sd0_cd>, <&sd0_bus4>;
173 vmmc-supply = <&vcc_sd0>;
174};
175
Romain Perierccfe128d2014-11-02 10:20:01 +0000176&pinctrl {
177 lan8720a {
178 phy_int: phy-int {
Heiko Stuebner07f08d92019-04-02 14:08:57 +0200179 rockchip,pins = <1 RK_PD2 RK_FUNC_GPIO &pcfg_pull_none>;
Romain Perierccfe128d2014-11-02 10:20:01 +0000180 };
181 };
182};
183
Andy Yanac79e0e2016-01-15 21:26:18 +0800184&pwm3 {
185 status = "okay";
186};
187
Romain Perierccfe128d2014-11-02 10:20:01 +0000188&uart0 {
189 status = "okay";
190};
191
192&uart1 {
193 status = "okay";
194};
195
196&uart2 {
197 status = "okay";
198};
199
200&uart3 {
201 status = "okay";
202};
203
Heiko Stuebner760bb972015-08-01 20:28:36 +0200204&usbphy {
205 status = "okay";
206};
207
Heiko Stuebner67867fc2015-08-02 22:34:17 +0200208&usb_host {
209 status = "okay";
210};
211
212&usb_otg {
213 status = "okay";
214};
215
Romain Perierccfe128d2014-11-02 10:20:01 +0000216&wdt {
217 status = "okay";
218};