diff options
-rw-r--r-- | arch/arm/boot/dts/Makefile | 3 | ||||
-rw-r--r-- | arch/arm/boot/dts/sun7i-a20-pcduino3.dts | 173 |
2 files changed, 175 insertions, 1 deletions
diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile index 774a14b91151..796fea874183 100644 --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile | |||
@@ -379,7 +379,8 @@ dtb-$(CONFIG_MACH_SUN7I) += \ | |||
379 | sun7i-a20-cubieboard2.dtb \ | 379 | sun7i-a20-cubieboard2.dtb \ |
380 | sun7i-a20-cubietruck.dtb \ | 380 | sun7i-a20-cubietruck.dtb \ |
381 | sun7i-a20-i12-tvbox.dtb \ | 381 | sun7i-a20-i12-tvbox.dtb \ |
382 | sun7i-a20-olinuxino-micro.dtb | 382 | sun7i-a20-olinuxino-micro.dtb \ |
383 | sun7i-a20-pcduino3.dtb | ||
383 | dtb-$(CONFIG_MACH_SUN8I) += \ | 384 | dtb-$(CONFIG_MACH_SUN8I) += \ |
384 | sun8i-a23-ippo-q8h-v5.dtb | 385 | sun8i-a23-ippo-q8h-v5.dtb |
385 | dtb-$(CONFIG_ARCH_TEGRA) += tegra20-harmony.dtb \ | 386 | dtb-$(CONFIG_ARCH_TEGRA) += tegra20-harmony.dtb \ |
diff --git a/arch/arm/boot/dts/sun7i-a20-pcduino3.dts b/arch/arm/boot/dts/sun7i-a20-pcduino3.dts new file mode 100644 index 000000000000..046dfc0d45d8 --- /dev/null +++ b/arch/arm/boot/dts/sun7i-a20-pcduino3.dts | |||
@@ -0,0 +1,173 @@ | |||
1 | /* | ||
2 | * Copyright 2014 Zoltan HERPAI | ||
3 | * Zoltan HERPAI <wigyori@uid0.hu> | ||
4 | * | ||
5 | * The code contained herein is licensed under the GNU General Public | ||
6 | * License. You may obtain a copy of the GNU General Public License | ||
7 | * Version 2 or later at the following locations: | ||
8 | * | ||
9 | * http://www.opensource.org/licenses/gpl-license.html | ||
10 | * http://www.gnu.org/copyleft/gpl.html | ||
11 | */ | ||
12 | |||
13 | /dts-v1/; | ||
14 | /include/ "sun7i-a20.dtsi" | ||
15 | /include/ "sunxi-common-regulators.dtsi" | ||
16 | #include <dt-bindings/gpio/gpio.h> | ||
17 | #include <dt-bindings/input/input.h> | ||
18 | |||
19 | / { | ||
20 | model = "LinkSprite pcDuino3"; | ||
21 | compatible = "linksprite,pcduino3", "allwinner,sun7i-a20"; | ||
22 | |||
23 | soc@01c00000 { | ||
24 | mmc0: mmc@01c0f000 { | ||
25 | pinctrl-names = "default"; | ||
26 | pinctrl-0 = <&mmc0_pins_a>, <&mmc0_cd_pin_reference_design>; | ||
27 | vmmc-supply = <®_vcc3v3>; | ||
28 | bus-width = <4>; | ||
29 | cd-gpios = <&pio 7 1 0>; /* PH1 */ | ||
30 | cd-inverted; | ||
31 | status = "okay"; | ||
32 | }; | ||
33 | |||
34 | usbphy: phy@01c13400 { | ||
35 | usb1_vbus-supply = <®_usb1_vbus>; | ||
36 | usb2_vbus-supply = <®_usb2_vbus>; | ||
37 | status = "okay"; | ||
38 | }; | ||
39 | |||
40 | ehci0: usb@01c14000 { | ||
41 | status = "okay"; | ||
42 | }; | ||
43 | |||
44 | ohci0: usb@01c14400 { | ||
45 | status = "okay"; | ||
46 | }; | ||
47 | |||
48 | ahci: sata@01c18000 { | ||
49 | target-supply = <®_ahci_5v>; | ||
50 | status = "okay"; | ||
51 | }; | ||
52 | |||
53 | ehci1: usb@01c1c000 { | ||
54 | status = "okay"; | ||
55 | }; | ||
56 | |||
57 | ohci1: usb@01c1c400 { | ||
58 | status = "okay"; | ||
59 | }; | ||
60 | |||
61 | pinctrl@01c20800 { | ||
62 | ahci_pwr_pin_a: ahci_pwr_pin@0 { | ||
63 | allwinner,pins = "PH2"; | ||
64 | }; | ||
65 | |||
66 | led_pins_pcduino3: led_pins@0 { | ||
67 | allwinner,pins = "PH15", "PH16"; | ||
68 | allwinner,function = "gpio_out"; | ||
69 | allwinner,drive = <0>; | ||
70 | allwinner,pull = <0>; | ||
71 | }; | ||
72 | |||
73 | key_pins_pcduino3: key_pins@0 { | ||
74 | allwinner,pins = "PH17", "PH18", "PH19"; | ||
75 | allwinner,function = "gpio_in"; | ||
76 | allwinner,drive = <0>; | ||
77 | allwinner,pull = <0>; | ||
78 | }; | ||
79 | }; | ||
80 | |||
81 | ir0: ir@01c21800 { | ||
82 | pinctrl-names = "default"; | ||
83 | pinctrl-0 = <&ir0_pins_a>; | ||
84 | status = "okay"; | ||
85 | }; | ||
86 | |||
87 | uart0: serial@01c28000 { | ||
88 | pinctrl-names = "default"; | ||
89 | pinctrl-0 = <&uart0_pins_a>; | ||
90 | status = "okay"; | ||
91 | }; | ||
92 | |||
93 | i2c0: i2c@01c2ac00 { | ||
94 | pinctrl-names = "default"; | ||
95 | pinctrl-0 = <&i2c0_pins_a>; | ||
96 | status = "okay"; | ||
97 | |||
98 | axp209: pmic@34 { | ||
99 | compatible = "x-powers,axp209"; | ||
100 | reg = <0x34>; | ||
101 | interrupt-parent = <&nmi_intc>; | ||
102 | interrupts = <0 8>; | ||
103 | |||
104 | interrupt-controller; | ||
105 | #interrupt-cells = <1>; | ||
106 | }; | ||
107 | }; | ||
108 | |||
109 | gmac: ethernet@01c50000 { | ||
110 | pinctrl-names = "default"; | ||
111 | pinctrl-0 = <&gmac_pins_mii_a>; | ||
112 | phy = <&phy1>; | ||
113 | phy-mode = "mii"; | ||
114 | status = "okay"; | ||
115 | |||
116 | phy1: ethernet-phy@1 { | ||
117 | reg = <1>; | ||
118 | }; | ||
119 | }; | ||
120 | }; | ||
121 | |||
122 | leds { | ||
123 | compatible = "gpio-leds"; | ||
124 | pinctrl-names = "default"; | ||
125 | pinctrl-0 = <&led_pins_pcduino3>; | ||
126 | |||
127 | tx { | ||
128 | label = "pcduino3:green:tx"; | ||
129 | gpios = <&pio 7 15 GPIO_ACTIVE_LOW>; | ||
130 | }; | ||
131 | |||
132 | rx { | ||
133 | label = "pcduino3:green:rx"; | ||
134 | gpios = <&pio 7 16 GPIO_ACTIVE_LOW>; | ||
135 | }; | ||
136 | }; | ||
137 | |||
138 | gpio_keys { | ||
139 | compatible = "gpio-keys"; | ||
140 | pinctrl-names = "default"; | ||
141 | pinctrl-0 = <&key_pins_pcduino3>; | ||
142 | #address-cells = <1>; | ||
143 | #size-cells = <0>; | ||
144 | button@0 { | ||
145 | label = "Key Back"; | ||
146 | linux,code = <KEY_BACK>; | ||
147 | gpios = <&pio 7 17 GPIO_ACTIVE_LOW>; | ||
148 | }; | ||
149 | button@1 { | ||
150 | label = "Key Home"; | ||
151 | linux,code = <KEY_HOME>; | ||
152 | gpios = <&pio 7 18 GPIO_ACTIVE_LOW>; | ||
153 | }; | ||
154 | button@2 { | ||
155 | label = "Key Menu"; | ||
156 | linux,code = <KEY_MENU>; | ||
157 | gpios = <&pio 7 19 GPIO_ACTIVE_LOW>; | ||
158 | }; | ||
159 | }; | ||
160 | |||
161 | reg_usb1_vbus: usb1-vbus { | ||
162 | status = "okay"; | ||
163 | }; | ||
164 | |||
165 | reg_usb2_vbus: usb2-vbus { | ||
166 | status = "okay"; | ||
167 | }; | ||
168 | |||
169 | reg_ahci_5v: ahci-5v { | ||
170 | gpio = <&pio 7 2 0>; | ||
171 | status = "okay"; | ||
172 | }; | ||
173 | }; | ||