]> git.ipfire.org Git - thirdparty/kernel/linux.git/blame - arch/arm64/boot/dts/hisilicon/hi3660-hikey960.dts
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
[thirdparty/kernel/linux.git] / arch / arm64 / boot / dts / hisilicon / hi3660-hikey960.dts
CommitLineData
b2441318 1// SPDX-License-Identifier: GPL-2.0
35ca8168
CF
2/*
3 * dts file for Hisilicon HiKey960 Development Board
4 *
5 * Copyright (C) 2016, Hisilicon Ltd.
6 *
7 */
8
9/dts-v1/;
10
11#include "hi3660.dtsi"
d4e1eaee 12#include "hikey960-pinctrl.dtsi"
2e9b4447 13#include <dt-bindings/gpio/gpio.h>
8cb53a8d
CJ
14#include <dt-bindings/input/input.h>
15#include <dt-bindings/interrupt-controller/irq.h>
35ca8168
CF
16
17/ {
18 model = "HiKey960";
b6c93186 19 compatible = "hisilicon,hi3660-hikey960", "hisilicon,hi3660";
35ca8168
CF
20
21 aliases {
804d7d7a
LW
22 mshc1 = &dwmmc1;
23 mshc2 = &dwmmc2;
254b07b2
CF
24 serial0 = &uart0;
25 serial1 = &uart1;
26 serial2 = &uart2;
27 serial3 = &uart3;
28 serial4 = &uart4;
29 serial5 = &uart5;
30 serial6 = &uart6;
35ca8168
CF
31 };
32
33 chosen {
254b07b2 34 stdout-path = "serial6:115200n8";
35ca8168
CF
35 };
36
37 memory@0 {
38 device_type = "memory";
39 /* rewrite this at bootloader */
40 reg = <0x0 0x0 0x0 0x0>;
41 };
8cb53a8d 42
9c24dc9d
GX
43 reserved-memory {
44 #address-cells = <2>;
45 #size-cells = <2>;
46 ranges;
47
48 ramoops@32000000 {
49 compatible = "ramoops";
50 reg = <0x0 0x32000000 0x0 0x00100000>;
51 record-size = <0x00020000>;
52 console-size = <0x00020000>;
53 ftrace-size = <0x00020000>;
54 };
55 };
56
b6b681c1
GX
57 reboot-mode-syscon@32100000 {
58 compatible = "syscon", "simple-mfd";
59 reg = <0x0 0x32100000 0x0 0x00001000>;
60
61 reboot-mode {
62 compatible = "syscon-reboot-mode";
63 offset = <0x0>;
64
65 mode-normal = <0x77665501>;
66 mode-bootloader = <0x77665500>;
67 mode-recovery = <0x77665502>;
68 };
69 };
70
8cb53a8d
CJ
71 keys {
72 compatible = "gpio-keys";
73 pinctrl-names = "default";
74 pinctrl-0 = <&pwr_key_pmx_func &pwr_key_cfg_func>;
75
76 power {
77 wakeup-source;
78 gpios = <&gpio4 2 GPIO_ACTIVE_LOW>;
79 label = "GPIO Power";
80 linux,code = <KEY_POWER>;
81 };
82 };
fc5f2ed6
GX
83
84 leds {
85 compatible = "gpio-leds";
86
87 user_led1 {
88 label = "user_led1";
89 /* gpio_150_user_led1 */
90 gpios = <&gpio18 6 0>;
91 linux,default-trigger = "heartbeat";
92 };
93
94 user_led2 {
95 label = "user_led2";
96 /* gpio_151_user_led2 */
97 gpios = <&gpio18 7 0>;
98 linux,default-trigger = "mmc0";
99 };
100
101 user_led3 {
102 label = "user_led3";
103 /* gpio_189_user_led3 */
104 gpios = <&gpio23 5 0>;
105 default-state = "off";
106 };
107
108 user_led4 {
109 label = "user_led4";
110 /* gpio_190_user_led4 */
111 gpios = <&gpio23 6 0>;
112 linux,default-trigger = "cpu0";
113 };
114
115 wlan_active_led {
116 label = "wifi_active";
117 /* gpio_205_wifi_active */
118 gpios = <&gpio25 5 0>;
119 linux,default-trigger = "phy0tx";
120 default-state = "off";
121 };
122
123 bt_active_led {
124 label = "bt_active";
125 gpios = <&gpio25 7 0>;
126 /* gpio_207_user_led1 */
127 linux,default-trigger = "hci0-power";
128 default-state = "off";
129 };
130 };
e02045aa
WX
131
132 pmic: pmic@fff34000 {
133 compatible = "hisilicon,hi6421v530-pmic";
134 reg = <0x0 0xfff34000 0x0 0x1000>;
135 interrupt-controller;
136 #interrupt-cells = <2>;
137
138 regulators {
139 ldo3: LDO3 { /* HDMI */
140 regulator-name = "VOUT3_1V85";
141 regulator-min-microvolt = <1800000>;
142 regulator-max-microvolt = <2200000>;
143 regulator-enable-ramp-delay = <120>;
144 };
145
146 ldo9: LDO9 { /* SDCARD I/O */
147 regulator-name = "VOUT9_1V8_2V95";
148 regulator-min-microvolt = <1750000>;
149 regulator-max-microvolt = <3300000>;
150 regulator-enable-ramp-delay = <240>;
151 };
152
153 ldo11: LDO11 { /* Low Speed Connector */
154 regulator-name = "VOUT11_1V8_2V95";
155 regulator-min-microvolt = <1750000>;
156 regulator-max-microvolt = <3300000>;
157 regulator-enable-ramp-delay = <240>;
158 };
159
160 ldo15: LDO15 { /* UFS VCC */
161 regulator-name = "VOUT15_3V0";
162 regulator-min-microvolt = <1750000>;
163 regulator-max-microvolt = <3000000>;
164 regulator-boot-on;
165 regulator-always-on;
166 regulator-enable-ramp-delay = <120>;
167 };
168
169 ldo16: LDO16 { /* SD VDD */
170 regulator-name = "VOUT16_2V95";
171 regulator-min-microvolt = <1750000>;
172 regulator-max-microvolt = <3000000>;
173 regulator-enable-ramp-delay = <360>;
174 };
175 };
176 };
7d8c3667
GX
177
178 wlan_en: wlan-en-1-8v {
179 compatible = "regulator-fixed";
180 regulator-name = "wlan-en-regulator";
181 regulator-min-microvolt = <1800000>;
182 regulator-max-microvolt = <1800000>;
183
184 /* GPIO_051_WIFI_EN */
185 gpio = <&gpio6 3 0>;
186
187 /* WLAN card specific delay */
188 startup-delay-us = <70000>;
189 enable-active-high;
190 };
313aebda
VC
191
192 firmware {
193 optee {
194 compatible = "linaro,optee-tz";
195 method = "smc";
196 };
197 };
35ca8168
CF
198};
199
5f8a3b77
ZG
200&i2c0 {
201 /* On Low speed expansion */
202 label = "LS-I2C0";
203 status = "okay";
204};
205
206&i2c1 {
207 status = "okay";
208
209 adv7533: adv7533@39 {
210 status = "ok";
211 compatible = "adi,adv7533";
212 reg = <0x39>;
213 };
214};
215
216&i2c7 {
217 /* On Low speed expansion */
218 label = "LS-I2C1";
219 status = "okay";
220};
221
254b07b2
CF
222&uart3 {
223 /* On Low speed expansion */
224 label = "LS-UART0";
225 status = "okay";
226};
227
2e9b4447
GX
228&uart4 {
229 status = "okay";
230
231 bluetooth {
232 compatible = "ti,wl1837-st";
233 enable-gpios = <&gpio15 6 GPIO_ACTIVE_HIGH>;
bf1ff532 234 max-speed = <3000000>;
2e9b4447
GX
235 };
236};
237
254b07b2
CF
238&uart6 {
239 /* On Low speed expansion */
240 label = "LS-UART1";
35ca8168
CF
241 status = "okay";
242};
38810497
WX
243
244&spi2 {
245 /* On Low speed expansion */
246 label = "LS-SPI0";
247 status = "okay";
248};
249
250&spi3 {
251 /* On High speed expansion */
252 label = "HS-SPI1";
253 status = "okay";
254};
804d7d7a
LW
255
256&dwmmc1 {
257 vmmc-supply = <&ldo16>;
258 vqmmc-supply = <&ldo9>;
259 status = "okay";
260};
7d8c3667
GX
261
262&dwmmc2 { /* WIFI */
263 broken-cd;
264 /* WL_EN */
265 vmmc-supply = <&wlan_en>;
266 ti,non-removable;
267 non-removable;
268 #address-cells = <0x1>;
269 #size-cells = <0x0>;
270 status = "ok";
271
272 wlcore: wlcore@2 {
273 compatible = "ti,wl1837";
274 reg = <2>; /* sdio func num */
275 /* WL_IRQ, GPIO_179_WL_WAKEUP_AP */
276 interrupt-parent = <&gpio22>;
277 interrupts = <3 IRQ_TYPE_EDGE_RISING>;
278 };
279};