Merge branch 'next' into for-linus
[deliverable/linux.git] / arch / arm / boot / dts / sun7i-a20-hummingbird.dts
1 /*
2 * Copyright 2013 Wills Wang
3 *
4 * Wills Wang <wills.wang.open@gmail.com>
5 *
6 * The code contained herein is licensed under the GNU General Public
7 * License. You may obtain a copy of the GNU General Public License
8 * Version 2 or later at the following locations:
9 *
10 * http://www.opensource.org/licenses/gpl-license.html
11 * http://www.gnu.org/copyleft/gpl.html
12 */
13
14 /dts-v1/;
15 /include/ "sun7i-a20.dtsi"
16 /include/ "sunxi-common-regulators.dtsi"
17
18 / {
19 model = "Merrii A20 Hummingbird";
20 compatible = "merrii,a20-hummingbird", "allwinner,sun7i-a20";
21
22 aliases {
23 serial0 = &uart0;
24 serial1 = &uart2;
25 serial2 = &uart3;
26 serial3 = &uart4;
27 serial4 = &uart5;
28 };
29
30 soc@01c00000 {
31 mmc0: mmc@01c0f000 {
32 pinctrl-names = "default";
33 pinctrl-0 = <&mmc0_pins_a>, <&mmc0_cd_pin_reference_design>;
34 vmmc-supply = <&reg_vcc3v0>;
35 bus-width = <4>;
36 cd-gpios = <&pio 7 1 0>; /* PH1 */
37 cd-inverted;
38 status = "okay";
39 };
40
41 mmc3: mmc@01c12000 {
42 pinctrl-names = "default";
43 pinctrl-0 = <&mmc3_pins_a>;
44 vmmc-supply = <&reg_mmc3_vdd>;
45 bus-width = <4>;
46 non-removable;
47 status = "okay";
48 };
49
50 usbphy: phy@01c13400 {
51 usb1_vbus-supply = <&reg_usb1_vbus>;
52 usb2_vbus-supply = <&reg_usb2_vbus>;
53 status = "okay";
54 };
55
56 ehci0: usb@01c14000 {
57 status = "okay";
58 };
59
60 ohci0: usb@01c14400 {
61 status = "okay";
62 };
63
64 ahci: sata@01c18000 {
65 target-supply = <&reg_ahci_5v>;
66 status = "okay";
67 };
68
69 ehci1: usb@01c1c000 {
70 status = "okay";
71 };
72
73 ohci1: usb@01c1c400 {
74 status = "okay";
75 };
76
77 pio: pinctrl@01c20800 {
78 ahci_pwr_pin_a20_hummingbird: ahci_pwr_pin@0 {
79 allwinner,pins = "PH15";
80 allwinner,function = "gpio_out";
81 allwinner,drive = <0>;
82 allwinner,pull = <0>;
83 };
84
85 usb1_vbus_pin_a20_hummingbird: usb1_vbus_pin@0 {
86 allwinner,pins = "PH2";
87 allwinner,function = "gpio_out";
88 allwinner,drive = <0>;
89 allwinner,pull = <0>;
90 };
91
92 mmc3_vdd_pin_a20_hummingbird: mmc3_vdd_pin@0 {
93 allwinner,pins = "PH9";
94 allwinner,function = "gpio_out";
95 allwinner,drive = <0>;
96 allwinner,pull = <0>;
97 };
98
99 gmac_vdd_pin_a20_hummingbird: gmac_vdd_pin@0 {
100 allwinner,pins = "PH16";
101 allwinner,function = "gpio_out";
102 allwinner,drive = <0>;
103 allwinner,pull = <0>;
104 };
105 };
106
107 pwm: pwm@01c20e00 {
108 pinctrl-names = "default";
109 pinctrl-0 = <&pwm0_pins_a>;
110 status = "okay";
111 };
112
113 ir0: ir@01c21800 {
114 pinctrl-names = "default";
115 pinctrl-0 = <&ir0_pins_a>;
116 status = "okay";
117 };
118
119 uart0: serial@01c28000 {
120 pinctrl-names = "default";
121 pinctrl-0 = <&uart0_pins_a>;
122 status = "okay";
123 };
124
125 uart2: serial@01c28800 {
126 pinctrl-names = "default";
127 pinctrl-0 = <&uart2_pins_a>;
128 status = "okay";
129 };
130
131 uart3: serial@01c28c00 {
132 pinctrl-names = "default";
133 pinctrl-0 = <&uart3_pins_a>;
134 status = "okay";
135 };
136
137 uart4: serial@01c29000 {
138 pinctrl-names = "default";
139 pinctrl-0 = <&uart4_pins_a>;
140 status = "okay";
141 };
142
143 uart5: serial@01c29400 {
144 pinctrl-names = "default";
145 pinctrl-0 = <&uart5_pins_a>;
146 status = "okay";
147 };
148
149 i2c0: i2c@01c2ac00 {
150 pinctrl-names = "default";
151 pinctrl-0 = <&i2c0_pins_a>;
152 status = "okay";
153
154 axp209: pmic@34 {
155 compatible = "x-powers,axp209";
156 reg = <0x34>;
157 interrupt-parent = <&nmi_intc>;
158 interrupts = <0 8>;
159 interrupt-controller;
160 #interrupt-cells = <1>;
161 };
162 };
163
164 i2c1: i2c@01c2b000 {
165 pinctrl-names = "default";
166 pinctrl-0 = <&i2c1_pins_a>;
167 status = "okay";
168 };
169
170 i2c2: i2c@01c2b400 {
171 pinctrl-names = "default";
172 pinctrl-0 = <&i2c2_pins_a>;
173 status = "okay";
174 };
175
176 i2c3: i2c@01c2b800 {
177 pinctrl-names = "default";
178 pinctrl-0 = <&i2c3_pins_a>;
179 status = "okay";
180 };
181
182 spi2: spi@01c17000 {
183 pinctrl-names = "default";
184 pinctrl-0 = <&spi2_pins_b>;
185 status = "okay";
186 };
187
188 gmac: ethernet@01c50000 {
189 pinctrl-names = "default";
190 pinctrl-0 = <&gmac_pins_rgmii_a>;
191 phy = <&phy1>;
192 phy-mode = "rgmii";
193 phy-supply = <&reg_gmac_vdd>;
194 /* phy reset config */
195 snps,reset-gpio = <&pio 0 17 0>; /* PA17 */
196 snps,reset-active-low;
197 /* wait 1s after reset, otherwise fail to read phy id */
198 snps,reset-delays-us = <0 10000 1000000>;
199 status = "okay";
200
201 phy1: ethernet-phy@1 {
202 reg = <1>;
203 };
204 };
205 };
206
207 reg_ahci_5v: ahci-5v {
208 pinctrl-0 = <&ahci_pwr_pin_a20_hummingbird>;
209 gpio = <&pio 7 15 0>; /* PH15 */
210 status = "okay";
211 };
212
213 reg_usb1_vbus: usb1-vbus {
214 pinctrl-0 = <&usb1_vbus_pin_a20_hummingbird>;
215 gpio = <&pio 7 2 0>; /* PH2 */
216 status = "okay";
217 };
218
219 reg_usb2_vbus: usb2-vbus {
220 status = "okay";
221 };
222
223 reg_mmc3_vdd: mmc3_vdd {
224 compatible = "regulator-fixed";
225 pinctrl-names = "default";
226 pinctrl-0 = <&mmc3_vdd_pin_a20_hummingbird>;
227 regulator-name = "mmc3_vdd";
228 regulator-min-microvolt = <3000000>;
229 regulator-max-microvolt = <3000000>;
230 enable-active-high;
231 gpio = <&pio 7 9 0>; /* PH9 */
232 };
233
234 reg_gmac_vdd: gmac_vdd {
235 compatible = "regulator-fixed";
236 pinctrl-names = "default";
237 pinctrl-0 = <&gmac_vdd_pin_a20_hummingbird>;
238 regulator-name = "gmac_vdd";
239 regulator-min-microvolt = <3000000>;
240 regulator-max-microvolt = <3000000>;
241 enable-active-high;
242 gpio = <&pio 7 16 0>; /* PH16 */
243 };
244 };
This page took 0.041483 seconds and 6 git commands to generate.