Merge tag 'block-5.14-2021-08-07' of git://git.kernel.dk/linux-block
[linux-2.6-microblaze.git] / arch / arm / boot / dts / rk3066a-marsboard.dts
1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2 /*
3  * Copyright (c) 2014 Romain Perier <romain.perier@gmail.com>
4  */
5
6 /dts-v1/;
7 #include "rk3066a.dtsi"
8
9 / {
10         model = "MarsBoard RK3066";
11         compatible = "haoyu,marsboard-rk3066", "rockchip,rk3066a";
12
13         aliases {
14                 mmc0 = &mmc0;
15         };
16
17         memory@60000000 {
18                 device_type = "memory";
19                 reg = <0x60000000 0x40000000>;
20         };
21
22         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
34         vcc_sd0: sdmmc-regulator {
35                 compatible = "regulator-fixed";
36                 regulator-name = "sdmmc-supply";
37                 regulator-min-microvolt = <3000000>;
38                 regulator-max-microvolt = <3000000>;
39                 gpio = <&gpio3 RK_PA7 GPIO_ACTIVE_LOW>;
40                 startup-delay-us = <100000>;
41                 vin-supply = <&vcc_io>;
42         };
43
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         };
51 };
52
53 &cpu0 {
54         cpu-supply = <&vdd_arm>;
55 };
56
57 &cpu1 {
58         cpu-supply = <&vdd_arm>;
59 };
60
61 &i2c1 {
62         status = "okay";
63         clock-frequency = <400000>;
64
65         tps: tps@2d {
66                 reg = <0x2d>;
67
68                 interrupt-parent = <&gpio6>;
69                 interrupts = <RK_PA4 IRQ_TYPE_LEVEL_LOW>;
70
71                 vcc1-supply = <&vsys>;
72                 vcc2-supply = <&vsys>;
73                 vcc3-supply = <&vsys>;
74                 vcc4-supply = <&vsys>;
75                 vcc5-supply = <&vcc_io>;
76                 vcc6-supply = <&vcc_io>;
77                 vcc7-supply = <&vsys>;
78                 vccio-supply = <&vsys>;
79
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>;
164                 interrupts = <RK_PD2 IRQ_TYPE_LEVEL_LOW>;
165         };
166 };
167
168 &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
176 &pinctrl {
177         lan8720a {
178                 phy_int: phy-int {
179                         rockchip,pins = <1 RK_PD2 RK_FUNC_GPIO &pcfg_pull_none>;
180                 };
181         };
182 };
183
184 &pwm3 {
185         status = "okay";
186 };
187
188 &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
204 &usbphy {
205         status = "okay";
206 };
207
208 &usb_host {
209         status = "okay";
210 };
211
212 &usb_otg {
213         status = "okay";
214 };
215
216 &wdt {
217         status = "okay";
218 };