1df3ebdc9SAndre Przywara/*
2df3ebdc9SAndre Przywara * Copyright (c) 2017 Icenowy Zheng <icenowy@aosc.xyz>
3df3ebdc9SAndre Przywara *
4df3ebdc9SAndre Przywara * Based on sun50i-a64-pine64.dts, which is:
5df3ebdc9SAndre Przywara *   Copyright (c) 2016 ARM Ltd.
6df3ebdc9SAndre Przywara *
7df3ebdc9SAndre Przywara * This file is dual-licensed: you can use it either under the terms
8df3ebdc9SAndre Przywara * of the GPL or the X11 license, at your option. Note that this dual
9df3ebdc9SAndre Przywara * licensing only applies to this file, and not this project as a
10df3ebdc9SAndre Przywara * whole.
11df3ebdc9SAndre Przywara *
12df3ebdc9SAndre Przywara *  a) This library is free software; you can redistribute it and/or
13df3ebdc9SAndre Przywara *     modify it under the terms of the GNU General Public License as
14df3ebdc9SAndre Przywara *     published by the Free Software Foundation; either version 2 of the
15df3ebdc9SAndre Przywara *     License, or (at your option) any later version.
16df3ebdc9SAndre Przywara *
17df3ebdc9SAndre Przywara *     This library is distributed in the hope that it will be useful,
18df3ebdc9SAndre Przywara *     but WITHOUT ANY WARRANTY; without even the implied warranty of
19df3ebdc9SAndre Przywara *     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
20df3ebdc9SAndre Przywara *     GNU General Public License for more details.
21df3ebdc9SAndre Przywara *
22df3ebdc9SAndre Przywara * Or, alternatively,
23df3ebdc9SAndre Przywara *
24df3ebdc9SAndre Przywara *  b) Permission is hereby granted, free of charge, to any person
25df3ebdc9SAndre Przywara *     obtaining a copy of this software and associated documentation
26df3ebdc9SAndre Przywara *     files (the "Software"), to deal in the Software without
27df3ebdc9SAndre Przywara *     restriction, including without limitation the rights to use,
28df3ebdc9SAndre Przywara *     copy, modify, merge, publish, distribute, sublicense, and/or
29df3ebdc9SAndre Przywara *     sell copies of the Software, and to permit persons to whom the
30df3ebdc9SAndre Przywara *     Software is furnished to do so, subject to the following
31df3ebdc9SAndre Przywara *     conditions:
32df3ebdc9SAndre Przywara *
33df3ebdc9SAndre Przywara *     The above copyright notice and this permission notice shall be
34df3ebdc9SAndre Przywara *     included in all copies or substantial portions of the Software.
35df3ebdc9SAndre Przywara *
36df3ebdc9SAndre Przywara *     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
37df3ebdc9SAndre Przywara *     EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
38df3ebdc9SAndre Przywara *     OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
39df3ebdc9SAndre Przywara *     NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
40df3ebdc9SAndre Przywara *     HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
41df3ebdc9SAndre Przywara *     WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
42df3ebdc9SAndre Przywara *     FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
43df3ebdc9SAndre Przywara *     OTHER DEALINGS IN THE SOFTWARE.
44df3ebdc9SAndre Przywara */
45df3ebdc9SAndre Przywara
46df3ebdc9SAndre Przywara/dts-v1/;
47df3ebdc9SAndre Przywara
48df3ebdc9SAndre Przywara#include "sun50i-a64-sopine.dtsi"
49df3ebdc9SAndre Przywara
50df3ebdc9SAndre Przywara/ {
51df3ebdc9SAndre Przywara	model = "SoPine with baseboard";
52df3ebdc9SAndre Przywara	compatible = "pine64,sopine-baseboard", "pine64,sopine",
53df3ebdc9SAndre Przywara		     "allwinner,sun50i-a64";
54df3ebdc9SAndre Przywara
55df3ebdc9SAndre Przywara	aliases {
56df3ebdc9SAndre Przywara		ethernet0 = &emac;
57df3ebdc9SAndre Przywara		serial0 = &uart0;
58df3ebdc9SAndre Przywara	};
59df3ebdc9SAndre Przywara
60df3ebdc9SAndre Przywara	chosen {
61df3ebdc9SAndre Przywara		stdout-path = "serial0:115200n8";
62df3ebdc9SAndre Przywara	};
63df3ebdc9SAndre Przywara
64*1b39a183SAndre Przywara	hdmi-connector {
65*1b39a183SAndre Przywara		compatible = "hdmi-connector";
66*1b39a183SAndre Przywara		type = "a";
67*1b39a183SAndre Przywara
68*1b39a183SAndre Przywara		port {
69*1b39a183SAndre Przywara			hdmi_con_in: endpoint {
70*1b39a183SAndre Przywara				remote-endpoint = <&hdmi_out_con>;
71*1b39a183SAndre Przywara			};
72*1b39a183SAndre Przywara		};
73*1b39a183SAndre Przywara	};
74*1b39a183SAndre Przywara
75df3ebdc9SAndre Przywara	reg_vcc1v8: vcc1v8 {
76df3ebdc9SAndre Przywara		compatible = "regulator-fixed";
77df3ebdc9SAndre Przywara		regulator-name = "vcc1v8";
78df3ebdc9SAndre Przywara		regulator-min-microvolt = <1800000>;
79df3ebdc9SAndre Przywara		regulator-max-microvolt = <1800000>;
80df3ebdc9SAndre Przywara	};
81df3ebdc9SAndre Przywara};
82df3ebdc9SAndre Przywara
83*1b39a183SAndre Przywara&de {
84*1b39a183SAndre Przywara	status = "okay";
85*1b39a183SAndre Przywara};
86*1b39a183SAndre Przywara
87df3ebdc9SAndre Przywara&ehci0 {
88df3ebdc9SAndre Przywara	status = "okay";
89df3ebdc9SAndre Przywara};
90df3ebdc9SAndre Przywara
91df3ebdc9SAndre Przywara&ehci1 {
92df3ebdc9SAndre Przywara	status = "okay";
93df3ebdc9SAndre Przywara};
94df3ebdc9SAndre Przywara
95df3ebdc9SAndre Przywara&emac {
96df3ebdc9SAndre Przywara	pinctrl-names = "default";
97df3ebdc9SAndre Przywara	pinctrl-0 = <&rgmii_pins>;
98df3ebdc9SAndre Przywara	phy-mode = "rgmii";
99df3ebdc9SAndre Przywara	phy-handle = <&ext_rgmii_phy>;
100df3ebdc9SAndre Przywara	phy-supply = <&reg_dc1sw>;
101df3ebdc9SAndre Przywara	status = "okay";
102df3ebdc9SAndre Przywara};
103df3ebdc9SAndre Przywara
104*1b39a183SAndre Przywara&hdmi {
105*1b39a183SAndre Przywara	hvcc-supply = <&reg_dldo1>;
106*1b39a183SAndre Przywara	status = "okay";
107*1b39a183SAndre Przywara};
108*1b39a183SAndre Przywara
109*1b39a183SAndre Przywara&hdmi_out {
110*1b39a183SAndre Przywara	hdmi_out_con: endpoint {
111*1b39a183SAndre Przywara		remote-endpoint = <&hdmi_con_in>;
112*1b39a183SAndre Przywara	};
113*1b39a183SAndre Przywara};
114*1b39a183SAndre Przywara
115df3ebdc9SAndre Przywara&mdio {
116df3ebdc9SAndre Przywara	ext_rgmii_phy: ethernet-phy@1 {
117df3ebdc9SAndre Przywara		compatible = "ethernet-phy-ieee802.3-c22";
118df3ebdc9SAndre Przywara		reg = <1>;
119df3ebdc9SAndre Przywara	};
120df3ebdc9SAndre Przywara};
121df3ebdc9SAndre Przywara
122df3ebdc9SAndre Przywara&mmc2 {
123df3ebdc9SAndre Przywara	pinctrl-names = "default";
124df3ebdc9SAndre Przywara	pinctrl-0 = <&mmc2_pins>;
125df3ebdc9SAndre Przywara	vmmc-supply = <&reg_dcdc1>;
126df3ebdc9SAndre Przywara	vqmmc-supply = <&reg_vcc1v8>;
127df3ebdc9SAndre Przywara	bus-width = <8>;
128df3ebdc9SAndre Przywara	non-removable;
129df3ebdc9SAndre Przywara	cap-mmc-hw-reset;
130df3ebdc9SAndre Przywara	status = "okay";
131df3ebdc9SAndre Przywara};
132df3ebdc9SAndre Przywara
133df3ebdc9SAndre Przywara&ohci0 {
134df3ebdc9SAndre Przywara	status = "okay";
135df3ebdc9SAndre Przywara};
136df3ebdc9SAndre Przywara
137df3ebdc9SAndre Przywara&ohci1 {
138df3ebdc9SAndre Przywara	status = "okay";
139df3ebdc9SAndre Przywara};
140df3ebdc9SAndre Przywara
141df3ebdc9SAndre Przywara&reg_dc1sw {
142df3ebdc9SAndre Przywara	regulator-name = "vcc-phy";
143df3ebdc9SAndre Przywara};
144df3ebdc9SAndre Przywara
145df3ebdc9SAndre Przywara&reg_dldo1 {
146df3ebdc9SAndre Przywara	regulator-min-microvolt = <3300000>;
147df3ebdc9SAndre Przywara	regulator-max-microvolt = <3300000>;
148df3ebdc9SAndre Przywara	regulator-name = "vcc-hdmi";
149df3ebdc9SAndre Przywara};
150df3ebdc9SAndre Przywara
151df3ebdc9SAndre Przywara&reg_dldo2 {
152df3ebdc9SAndre Przywara	regulator-min-microvolt = <3300000>;
153df3ebdc9SAndre Przywara	regulator-max-microvolt = <3300000>;
154df3ebdc9SAndre Przywara	regulator-name = "vcc-mipi";
155df3ebdc9SAndre Przywara};
156df3ebdc9SAndre Przywara
157df3ebdc9SAndre Przywara&reg_dldo4 {
158df3ebdc9SAndre Przywara	regulator-min-microvolt = <3300000>;
159df3ebdc9SAndre Przywara	regulator-max-microvolt = <3300000>;
160df3ebdc9SAndre Przywara	regulator-name = "vcc-wifi";
161df3ebdc9SAndre Przywara};
162df3ebdc9SAndre Przywara
163*1b39a183SAndre Przywara&simplefb_hdmi {
164*1b39a183SAndre Przywara	vcc-hdmi-supply = <&reg_dldo1>;
165*1b39a183SAndre Przywara};
166*1b39a183SAndre Przywara
167df3ebdc9SAndre Przywara&uart0 {
168df3ebdc9SAndre Przywara	pinctrl-names = "default";
169*1b39a183SAndre Przywara	pinctrl-0 = <&uart0_pb_pins>;
170df3ebdc9SAndre Przywara	status = "okay";
171df3ebdc9SAndre Przywara};
172df3ebdc9SAndre Przywara
173df3ebdc9SAndre Przywara&usb_otg {
174df3ebdc9SAndre Przywara	dr_mode = "host";
175df3ebdc9SAndre Przywara	status = "okay";
176df3ebdc9SAndre Przywara};
177df3ebdc9SAndre Przywara
178df3ebdc9SAndre Przywara&usbphy {
179df3ebdc9SAndre Przywara	status = "okay";
180df3ebdc9SAndre Przywara};
181