1// SPDX-License-Identifier: GPL-2.0
2/*
3 * DTS File for HiSilicon Poplar Development Board
4 *
5 * Copyright (c) 2016-2017 HiSilicon Technologies Co., Ltd.
6 */
7
8/dts-v1/;
9/memreserve/ 0x00000000 0x04080000;
10
11#include <dt-bindings/gpio/gpio.h>
12#include "hi3798cv200.dtsi"
13#include "poplar-pinctrl.dtsi"
14
15/ {
16	model = "HiSilicon Poplar Development Board";
17	compatible = "hisilicon,hi3798cv200-poplar", "hisilicon,hi3798cv200";
18
19	aliases {
20		serial0 = &uart0;
21		serial2 = &uart2;
22	};
23
24	chosen {
25		stdout-path = "serial0:115200n8";
26	};
27
28	memory@0 {
29		device_type = "memory";
30		reg = <0x0 0x0 0x0 0x80000000>;
31	};
32
33	leds {
34		compatible = "gpio-leds";
35
36		user-led0 {
37			label = "green:user1";
38			gpios = <&gpio6 3 GPIO_ACTIVE_LOW>;
39			linux,default-trigger = "heartbeat";
40			default-state = "off";
41		};
42
43		user-led1 {
44			label = "green:user2";
45			gpios = <&gpio5 1 GPIO_ACTIVE_LOW>;
46			linux,default-trigger = "mmc0";
47			default-state = "off";
48		};
49
50		user-led2 {
51			label = "green:user3";
52			gpios = <&gpio5 2 GPIO_ACTIVE_LOW>;
53			linux,default-trigger = "mmc1";
54			default-state = "off";
55		};
56
57		user-led3 {
58			label = "green:user4";
59			gpios = <&gpio10 6 GPIO_ACTIVE_LOW>;
60			linux,default-trigger = "none";
61			panic-indicator;
62			default-state = "off";
63		};
64	};
65
66	reg_pcie: regulator-pcie {
67		compatible = "regulator-fixed";
68		regulator-name = "3V3_PCIE0";
69		regulator-min-microvolt = <3300000>;
70		regulator-max-microvolt = <3300000>;
71		gpio = <&gpio6 7 0>;
72		enable-active-high;
73	};
74
75	firmware {
76		optee {
77			compatible = "linaro,optee-tz";
78			method = "smc";
79		};
80	};
81};
82
83&ehci {
84	status = "okay";
85};
86
87&emmc {
88	pinctrl-names = "default";
89	pinctrl-0 = <&emmc_pins_1 &emmc_pins_2
90		     &emmc_pins_3 &emmc_pins_4>;
91	fifo-depth = <256>;
92	clock-frequency = <200000000>;
93	cap-mmc-highspeed;
94	mmc-ddr-1_8v;
95	mmc-hs200-1_8v;
96	non-removable;
97	bus-width = <8>;
98	status = "okay";
99};
100
101&gmac1 {
102	status = "okay";
103	#address-cells = <1>;
104	#size-cells = <0>;
105	phy-handle = <&eth_phy1>;
106	phy-mode = "rgmii";
107	hisilicon,phy-reset-delays-us = <10000 10000 30000>;
108
109	eth_phy1: phy@3 {
110		reg = <3>;
111	};
112};
113
114&gpio1 {
115	status = "okay";
116	gpio-line-names = "GPIO-E",	"",
117			  "",		"",
118			  "",		"GPIO-F",
119			  "",		"GPIO-J";
120};
121
122&gpio2 {
123	status = "okay";
124	gpio-line-names = "GPIO-H",	"GPIO-I",
125			  "GPIO-L",	"GPIO-G",
126			  "GPIO-K",	"",
127			  "",		"";
128};
129
130&gpio3 {
131	status = "okay";
132	gpio-line-names = "",		"",
133			  "",		"",
134			  "GPIO-C",	"",
135			  "",		"GPIO-B";
136};
137
138&gpio4 {
139	status = "okay";
140	gpio-line-names = "",		"",
141			  "",		"",
142			  "",		"GPIO-D",
143			  "",		"";
144};
145
146&gpio5 {
147	status = "okay";
148	gpio-line-names = "",		"USER-LED-1",
149			  "USER-LED-2",	"",
150			  "",		"GPIO-A",
151			  "",		"";
152};
153
154&gpio6 {
155	status = "okay";
156	gpio-line-names = "",		"",
157			  "",		"USER-LED-0",
158			  "",		"",
159			  "",		"";
160};
161
162&gpio10 {
163	status = "okay";
164	gpio-line-names = "",		"",
165			  "",		"",
166			  "",		"",
167			  "USER-LED-3",	"";
168};
169
170&i2c0 {
171	status = "okay";
172	label = "LS-I2C0";
173};
174
175&i2c2 {
176	status = "okay";
177	label = "LS-I2C1";
178};
179
180&ir {
181	linux,rc-map-name = "rc-hisi-poplar";
182	status = "okay";
183};
184
185&ohci {
186	status = "okay";
187};
188
189&pcie {
190	reset-gpios = <&gpio4 4 GPIO_ACTIVE_HIGH>;
191	vpcie-supply = <&reg_pcie>;
192	status = "okay";
193};
194
195&sd0 {
196	bus-width = <4>;
197	cap-sd-highspeed;
198	status = "okay";
199};
200
201&spi0 {
202	status = "okay";
203	label = "LS-SPI0";
204};
205
206&uart0 {
207	status = "okay";
208};
209
210&uart2 {
211	status = "okay";
212	label = "LS-UART0";
213};
214/* No optional LS-UART1 on Low Speed Expansion Connector. */
215