ARM: dts: sun4i: Add AXP209 support to various boards
[sfrench/cifs-2.6.git] / arch / arm / boot / dts / sun4i-a10-hackberry.dts
1 /*
2  * Copyright 2012 Maxime Ripard
3  *
4  * Maxime Ripard <maxime.ripard@free-electrons.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/ "sun4i-a10.dtsi"
16 /include/ "sunxi-common-regulators.dtsi"
17
18 / {
19         model = "Miniand Hackberry";
20         compatible = "miniand,hackberry", "allwinner,sun4i-a10";
21
22         soc@01c00000 {
23                 emac: ethernet@01c0b000 {
24                         pinctrl-names = "default";
25                         pinctrl-0 = <&emac_pins_a>;
26                         phy = <&phy0>;
27                         status = "okay";
28                 };
29
30                 mdio@01c0b080 {
31                         phy-supply = <&reg_emac_3v3>;
32                         status = "okay";
33
34                         phy0: ethernet-phy@0 {
35                                 reg = <0>;
36                         };
37                 };
38
39                 mmc0: mmc@01c0f000 {
40                         pinctrl-names = "default";
41                         pinctrl-0 = <&mmc0_pins_a>, <&mmc0_cd_pin_reference_design>;
42                         vmmc-supply = <&reg_vcc3v3>;
43                         bus-width = <4>;
44                         cd-gpios = <&pio 7 1 0>; /* PH1 */
45                         cd-inverted;
46                         status = "okay";
47                 };
48
49                 usbphy: phy@01c13400 {
50                         usb1_vbus-supply = <&reg_usb1_vbus>;
51                         usb2_vbus-supply = <&reg_usb2_vbus>;
52                         status = "okay";
53                 };
54
55                 ehci0: usb@01c14000 {
56                         status = "okay";
57                 };
58
59                 ohci0: usb@01c14400 {
60                         status = "okay";
61                 };
62
63                 ehci1: usb@01c1c000 {
64                         status = "okay";
65                 };
66
67                 ohci1: usb@01c1c400 {
68                         status = "okay";
69                 };
70
71                 pio: pinctrl@01c20800 {
72                         pinctrl-names = "default";
73                         pinctrl-0 = <&hackberry_hogs>;
74
75                         hackberry_hogs: hogs@0 {
76                                 allwinner,pins = "PH19";
77                                 allwinner,function = "gpio_out";
78                                 allwinner,drive = <0>;
79                                 allwinner,pull = <0>;
80                         };
81
82                         usb2_vbus_pin_hackberry: usb2_vbus_pin@0 {
83                                         allwinner,pins = "PH12";
84                                         allwinner,function = "gpio_out";
85                                         allwinner,drive = <0>;
86                                         allwinner,pull = <0>;
87                         };
88                 };
89
90                 uart0: serial@01c28000 {
91                         pinctrl-names = "default";
92                         pinctrl-0 = <&uart0_pins_a>;
93                         status = "okay";
94                 };
95
96                 i2c0: i2c@01c2ac00 {
97                         pinctrl-names = "default";
98                         pinctrl-0 = <&i2c0_pins_a>;
99                         status = "okay";
100
101                         axp209: pmic@34 {
102                                 compatible = "x-powers,axp209";
103                                 reg = <0x34>;
104                                 interrupts = <0>;
105
106                                 interrupt-controller;
107                                 #interrupt-cells = <1>;
108                         };
109                 };
110         };
111
112         reg_emac_3v3: emac-3v3 {
113                 compatible = "regulator-fixed";
114                 regulator-name = "emac-3v3";
115                 regulator-min-microvolt = <3300000>;
116                 regulator-max-microvolt = <3300000>;
117                 enable-active-high;
118                 gpio = <&pio 7 19 0>;
119         };
120
121         reg_usb1_vbus: usb1-vbus {
122                 status = "okay";
123         };
124
125         reg_usb2_vbus: usb2-vbus {
126                 pinctrl-0 = <&usb2_vbus_pin_hackberry>;
127                 gpio = <&pio 7 12 0>;
128                 status = "okay";
129         };
130 };