WIP FPC-III support
[linux/fpc-iii.git] / arch / arm / boot / dts / rk3066a-marsboard.dts
blob6b121658d93cc24b08a9e0c1fd083735b1daf878
1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2 /*
3  * Copyright (c) 2014 Romain Perier <romain.perier@gmail.com>
4  */
6 /dts-v1/;
7 #include "rk3066a.dtsi"
9 / {
10         model = "MarsBoard RK3066";
11         compatible = "haoyu,marsboard-rk3066", "rockchip,rk3066a";
13         memory@60000000 {
14                 device_type = "memory";
15                 reg = <0x60000000 0x40000000>;
16         };
18         vdd_log: vdd-log {
19                 compatible = "pwm-regulator";
20                 pwms = <&pwm3 0 1000>;
21                 regulator-name = "vdd_log";
22                 regulator-min-microvolt = <1200000>;
23                 regulator-max-microvolt = <1200000>;
24                 regulator-always-on;
25                 voltage-table = <1000000 100>,
26                                 <1200000 42>;
27                 status = "okay";
28         };
30         vcc_sd0: sdmmc-regulator {
31                 compatible = "regulator-fixed";
32                 regulator-name = "sdmmc-supply";
33                 regulator-min-microvolt = <3000000>;
34                 regulator-max-microvolt = <3000000>;
35                 gpio = <&gpio3 RK_PA7 GPIO_ACTIVE_LOW>;
36                 startup-delay-us = <100000>;
37                 vin-supply = <&vcc_io>;
38         };
40         vsys: vsys-regulator {
41                 compatible = "regulator-fixed";
42                 regulator-name = "vsys";
43                 regulator-min-microvolt = <5000000>;
44                 regulator-max-microvolt = <5000000>;
45                 regulator-boot-on;
46         };
49 &cpu0 {
50         cpu-supply = <&vdd_arm>;
53 &cpu1 {
54         cpu-supply = <&vdd_arm>;
57 &i2c1 {
58         status = "okay";
59         clock-frequency = <400000>;
61         tps: tps@2d {
62                 reg = <0x2d>;
64                 interrupt-parent = <&gpio6>;
65                 interrupts = <RK_PA4 IRQ_TYPE_LEVEL_LOW>;
67                 vcc1-supply = <&vsys>;
68                 vcc2-supply = <&vsys>;
69                 vcc3-supply = <&vsys>;
70                 vcc4-supply = <&vsys>;
71                 vcc5-supply = <&vcc_io>;
72                 vcc6-supply = <&vcc_io>;
73                 vcc7-supply = <&vsys>;
74                 vccio-supply = <&vsys>;
76                 regulators {
77                         vcc_rtc: regulator@0 {
78                                 regulator-name = "vcc_rtc";
79                                 regulator-always-on;
80                         };
82                         vcc_io: regulator@1 {
83                                 regulator-name = "vcc_io";
84                                 regulator-always-on;
85                         };
87                         vdd_arm: regulator@2 {
88                                 regulator-name = "vdd_arm";
89                                 regulator-min-microvolt = <600000>;
90                                 regulator-max-microvolt = <1500000>;
91                                 regulator-boot-on;
92                                 regulator-always-on;
93                         };
95                         vcc_ddr: regulator@3 {
96                                 regulator-name = "vcc_ddr";
97                                 regulator-min-microvolt = <600000>;
98                                 regulator-max-microvolt = <1500000>;
99                                 regulator-boot-on;
100                                 regulator-always-on;
101                         };
103                         vcc18_cif: regulator@5 {
104                                 regulator-name = "vcc18_cif";
105                                 regulator-always-on;
106                         };
108                         vdd_11: regulator@6 {
109                                 regulator-name = "vdd_11";
110                                 regulator-always-on;
111                         };
113                         vcc_25: regulator@7 {
114                                 regulator-name = "vcc_25";
115                                 regulator-always-on;
116                         };
118                         vcc_18: regulator@8 {
119                                 regulator-name = "vcc_18";
120                                 regulator-always-on;
121                         };
123                         vcc25_hdmi: regulator@9 {
124                                 regulator-name = "vcc25_hdmi";
125                                 regulator-always-on;
126                         };
128                         vcca_33: regulator@10 {
129                                 regulator-name = "vcca_33";
130                                 regulator-always-on;
131                         };
133                         vcc_rmii: regulator@11 {
134                                 regulator-name = "vcc_rmii";
135                         };
137                         vcc28_cif: regulator@12 {
138                                 regulator-name = "vcc28_cif";
139                                 regulator-always-on;
140                         };
141                 };
142         };
145 /* must be included after &tps gets defined */
146 #include "tps65910.dtsi"
148 &emac {
149         status = "okay";
151         phy = <&phy0>;
152         phy-supply = <&vcc_rmii>;
154         pinctrl-names = "default";
155         pinctrl-0 = <&emac_xfer>, <&emac_mdio>, <&phy_int>;
157         phy0: ethernet-phy@0 {
158                 reg = <0>;
159                 interrupt-parent = <&gpio1>;
160                 interrupts = <RK_PD2 IRQ_TYPE_LEVEL_LOW>;
161         };
164 &mmc0 {
165         status = "okay";
167         pinctrl-names = "default";
168         pinctrl-0 = <&sd0_clk>, <&sd0_cmd>, <&sd0_cd>, <&sd0_bus4>;
169         vmmc-supply = <&vcc_sd0>;
172 &pinctrl {
173         lan8720a {
174                 phy_int: phy-int {
175                         rockchip,pins = <1 RK_PD2 RK_FUNC_GPIO &pcfg_pull_none>;
176                 };
177         };
180 &pwm3 {
181         status = "okay";
184 &uart0 {
185         status = "okay";
188 &uart1 {
189         status = "okay";
192 &uart2 {
193         status = "okay";
196 &uart3 {
197         status = "okay";
200 &usbphy {
201         status = "okay";
204 &usb_host {
205         status = "okay";
208 &usb_otg {
209         status = "okay";
212 &wdt {
213         status = "okay";