summaryrefslogtreecommitdiffstats
path: root/arch/arm/boot/dts/sun6i-a31-hummingbird.dts
blob: f142065b3c1fb4c807cf5c25ee8e039179dbd94c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
/*
 * Copyright 2014 Maxime Ripard
 *
 * Maxime Ripard <maxime.ripard@free-electrons.com>
 *
 * The code contained herein is licensed under the GNU General Public
 * License. You may obtain a copy of the GNU General Public License
 * Version 2 or later at the following locations:
 *
 * http://www.opensource.org/licenses/gpl-license.html
 * http://www.gnu.org/copyleft/gpl.html
 */

/dts-v1/;
/include/ "sun6i-a31.dtsi"
/include/ "sunxi-common-regulators.dtsi"

/ {
	model = "Merrii A31 Hummingbird";
	compatible = "merrii,a31-hummingbird", "allwinner,sun6i-a31";

	chosen {
		bootargs = "earlyprintk console=ttyS0,115200";
	};

	soc@01c00000 {
		mmc0: mmc@01c0f000 {
			pinctrl-names = "default";
			pinctrl-0 = <&mmc0_pins_a>, <&mmc0_cd_pin_hummingbird>;
			vmmc-supply = <&reg_vcc3v0>;
			bus-width = <4>;
			cd-gpios = <&pio 0 8 0>; /* PA8 */
			cd-inverted;
			status = "okay";
		};

		usbphy: phy@01c19400 {
			usb1_vbus-supply = <&reg_usb1_vbus>;
			status = "okay";
		};

		ehci0: usb@01c1a000 {
			status = "okay";
		};

		ohci0: usb@01c1a400 {
			status = "okay";
		};

		pio: pinctrl@01c20800 {
			mmc0_pins_a: mmc0@0 {
				/* external pull-ups missing for some pins */
				allwinner,pull = <1>;
			};

			mmc0_cd_pin_hummingbird: mmc0_cd_pin@0 {
				allwinner,pins = "PA8";
				allwinner,function = "gpio_in";
				allwinner,drive = <0>;
				allwinner,pull = <1>;
			};

			usb1_vbus_pin_a: usb1_vbus_pin@0 {
				allwinner,pins = "PH24";
				allwinner,function = "gpio_out";
				allwinner,drive = <0>;
				allwinner,pull = <0>;
			};
		};

		uart0: serial@01c28000 {
			pinctrl-names = "default";
			pinctrl-0 = <&uart0_pins_a>;
			status = "okay";
		};

		i2c0: i2c@01c2ac00 {
			pinctrl-names = "default";
			pinctrl-0 = <&i2c0_pins_a>;
			/* pull-ups and devices require AXP221 DLDO3 */
			status = "failed";
		};

		i2c1: i2c@01c2b000 {
			pinctrl-names = "default";
			pinctrl-0 = <&i2c1_pins_a>;
			status = "okay";
		};

		i2c2: i2c@01c2b400 {
			pinctrl-names = "default";
			pinctrl-0 = <&i2c2_pins_a>;
			status = "okay";

			pcf8563: rtc@51 {
				compatible = "nxp,pcf8563";
				reg = <0x51>;
			};
		};

		gmac: ethernet@01c30000 {
			pinctrl-names = "default";
			pinctrl-0 = <&gmac_pins_rgmii_a>;
			phy = <&phy1>;
			phy-mode = "rgmii";
			status = "okay";

			phy1: ethernet-phy@1 {
				reg = <1>;
			};
		};
	};

	reg_usb1_vbus: usb1-vbus {
		pinctrl-0 = <&usb1_vbus_pin_a>;
		gpio = <&pio 7 24 0>; /* PH24 */
		status = "okay";
	};
};