diff options
author | Maxime Ripard <maxime.ripard@free-electrons.com> | 2014-07-15 13:15:47 -0400 |
---|---|---|
committer | Maxime Ripard <maxime.ripard@free-electrons.com> | 2014-07-18 16:40:37 -0400 |
commit | c220aec2bb793bf5a1fb451fd3e4db87654c5ba5 (patch) | |
tree | 81f174094b748064446ffab6db94aeec6befdf14 | |
parent | e5073fde6b3f6aafec867cfa9f19597f57349a5d (diff) |
ARM: dts: sun6i: Add Merrii A31 Hummingbird support
This adds support for the A31 Hummingbird:
http://www.merrii.com/en/pla_d.asp?id=172
The Merrii A31 Hummingbird is a development board based on the
Allwinner A31 SoC with multiple USB ports through a USB hub chip,
a uSD slot, a 10/100/1000M ethernet port, an AP6210 WiFi/BT chip,
TV-in, HDMI, VGA, audio in/out ports, and LCD/CSI headers.
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
[wens@csie.org: enable usbphy, ehci0, ohci0 for on-board usb hub;
add pcf8563 rtc node; add comments for i2c0 and mmc0 pull-ups;
correct ethernet phy address to 0x01; drop uart2 (BT chip has
no power) and uart3 (no device); use proper commit message]
Signed-off-by: Chen-Yu Tsai <wens@csie.org>
-rw-r--r-- | arch/arm/boot/dts/Makefile | 1 | ||||
-rw-r--r-- | arch/arm/boot/dts/sun6i-a31-hummingbird.dts | 119 |
2 files changed, 120 insertions, 0 deletions
diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile index c3ee9fba892b..8be3687120d2 100644 --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile | |||
@@ -375,6 +375,7 @@ dtb-$(CONFIG_MACH_SUN5I) += \ | |||
375 | dtb-$(CONFIG_MACH_SUN6I) += \ | 375 | dtb-$(CONFIG_MACH_SUN6I) += \ |
376 | sun6i-a31-app4-evb1.dtb \ | 376 | sun6i-a31-app4-evb1.dtb \ |
377 | sun6i-a31-colombus.dtb \ | 377 | sun6i-a31-colombus.dtb \ |
378 | sun6i-a31-hummingbird.dtb \ | ||
378 | sun6i-a31-m9.dtb | 379 | sun6i-a31-m9.dtb |
379 | dtb-$(CONFIG_MACH_SUN7I) += \ | 380 | dtb-$(CONFIG_MACH_SUN7I) += \ |
380 | sun7i-a20-cubieboard2.dtb \ | 381 | sun7i-a20-cubieboard2.dtb \ |
diff --git a/arch/arm/boot/dts/sun6i-a31-hummingbird.dts b/arch/arm/boot/dts/sun6i-a31-hummingbird.dts new file mode 100644 index 000000000000..f142065b3c1f --- /dev/null +++ b/arch/arm/boot/dts/sun6i-a31-hummingbird.dts | |||
@@ -0,0 +1,119 @@ | |||
1 | /* | ||
2 | * Copyright 2014 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/ "sun6i-a31.dtsi" | ||
16 | /include/ "sunxi-common-regulators.dtsi" | ||
17 | |||
18 | / { | ||
19 | model = "Merrii A31 Hummingbird"; | ||
20 | compatible = "merrii,a31-hummingbird", "allwinner,sun6i-a31"; | ||
21 | |||
22 | chosen { | ||
23 | bootargs = "earlyprintk console=ttyS0,115200"; | ||
24 | }; | ||
25 | |||
26 | soc@01c00000 { | ||
27 | mmc0: mmc@01c0f000 { | ||
28 | pinctrl-names = "default"; | ||
29 | pinctrl-0 = <&mmc0_pins_a>, <&mmc0_cd_pin_hummingbird>; | ||
30 | vmmc-supply = <®_vcc3v0>; | ||
31 | bus-width = <4>; | ||
32 | cd-gpios = <&pio 0 8 0>; /* PA8 */ | ||
33 | cd-inverted; | ||
34 | status = "okay"; | ||
35 | }; | ||
36 | |||
37 | usbphy: phy@01c19400 { | ||
38 | usb1_vbus-supply = <®_usb1_vbus>; | ||
39 | status = "okay"; | ||
40 | }; | ||
41 | |||
42 | ehci0: usb@01c1a000 { | ||
43 | status = "okay"; | ||
44 | }; | ||
45 | |||
46 | ohci0: usb@01c1a400 { | ||
47 | status = "okay"; | ||
48 | }; | ||
49 | |||
50 | pio: pinctrl@01c20800 { | ||
51 | mmc0_pins_a: mmc0@0 { | ||
52 | /* external pull-ups missing for some pins */ | ||
53 | allwinner,pull = <1>; | ||
54 | }; | ||
55 | |||
56 | mmc0_cd_pin_hummingbird: mmc0_cd_pin@0 { | ||
57 | allwinner,pins = "PA8"; | ||
58 | allwinner,function = "gpio_in"; | ||
59 | allwinner,drive = <0>; | ||
60 | allwinner,pull = <1>; | ||
61 | }; | ||
62 | |||
63 | usb1_vbus_pin_a: usb1_vbus_pin@0 { | ||
64 | allwinner,pins = "PH24"; | ||
65 | allwinner,function = "gpio_out"; | ||
66 | allwinner,drive = <0>; | ||
67 | allwinner,pull = <0>; | ||
68 | }; | ||
69 | }; | ||
70 | |||
71 | uart0: serial@01c28000 { | ||
72 | pinctrl-names = "default"; | ||
73 | pinctrl-0 = <&uart0_pins_a>; | ||
74 | status = "okay"; | ||
75 | }; | ||
76 | |||
77 | i2c0: i2c@01c2ac00 { | ||
78 | pinctrl-names = "default"; | ||
79 | pinctrl-0 = <&i2c0_pins_a>; | ||
80 | /* pull-ups and devices require AXP221 DLDO3 */ | ||
81 | status = "failed"; | ||
82 | }; | ||
83 | |||
84 | i2c1: i2c@01c2b000 { | ||
85 | pinctrl-names = "default"; | ||
86 | pinctrl-0 = <&i2c1_pins_a>; | ||
87 | status = "okay"; | ||
88 | }; | ||
89 | |||
90 | i2c2: i2c@01c2b400 { | ||
91 | pinctrl-names = "default"; | ||
92 | pinctrl-0 = <&i2c2_pins_a>; | ||
93 | status = "okay"; | ||
94 | |||
95 | pcf8563: rtc@51 { | ||
96 | compatible = "nxp,pcf8563"; | ||
97 | reg = <0x51>; | ||
98 | }; | ||
99 | }; | ||
100 | |||
101 | gmac: ethernet@01c30000 { | ||
102 | pinctrl-names = "default"; | ||
103 | pinctrl-0 = <&gmac_pins_rgmii_a>; | ||
104 | phy = <&phy1>; | ||
105 | phy-mode = "rgmii"; | ||
106 | status = "okay"; | ||
107 | |||
108 | phy1: ethernet-phy@1 { | ||
109 | reg = <1>; | ||
110 | }; | ||
111 | }; | ||
112 | }; | ||
113 | |||
114 | reg_usb1_vbus: usb1-vbus { | ||
115 | pinctrl-0 = <&usb1_vbus_pin_a>; | ||
116 | gpio = <&pio 7 24 0>; /* PH24 */ | ||
117 | status = "okay"; | ||
118 | }; | ||
119 | }; | ||