1// SPDX-License-Identifier: GPL-2.0
2/*
3 * dts file for Hisilicon Hi3670 SoC
4 *
5 * Copyright (C) 2016, Hisilicon Ltd.
6 * Copyright (C) 2018, Linaro Ltd.
7 */
8
9#include <dt-bindings/interrupt-controller/arm-gic.h>
10#include <dt-bindings/clock/hi3670-clock.h>
11
12/ {
13	compatible = "hisilicon,hi3670";
14	interrupt-parent = <&gic>;
15	#address-cells = <2>;
16	#size-cells = <2>;
17
18	psci {
19		compatible = "arm,psci-0.2";
20		method = "smc";
21	};
22
23	cpus {
24		#address-cells = <2>;
25		#size-cells = <0>;
26
27		cpu-map {
28			cluster0 {
29				core0 {
30					cpu = <&cpu0>;
31				};
32				core1 {
33					cpu = <&cpu1>;
34				};
35				core2 {
36					cpu = <&cpu2>;
37				};
38				core3 {
39					cpu = <&cpu3>;
40				};
41			};
42			cluster1 {
43				core0 {
44					cpu = <&cpu4>;
45				};
46				core1 {
47					cpu = <&cpu5>;
48				};
49				core2 {
50					cpu = <&cpu6>;
51				};
52				core3 {
53					cpu = <&cpu7>;
54				};
55			};
56		};
57
58		cpu0: cpu@0 {
59			compatible = "arm,cortex-a53", "arm,armv8";
60			device_type = "cpu";
61			reg = <0x0 0x0>;
62			enable-method = "psci";
63		};
64
65		cpu1: cpu@1 {
66			compatible = "arm,cortex-a53", "arm,armv8";
67			device_type = "cpu";
68			reg = <0x0 0x1>;
69			enable-method = "psci";
70		};
71
72		cpu2: cpu@2 {
73			compatible = "arm,cortex-a53", "arm,armv8";
74			device_type = "cpu";
75			reg = <0x0 0x2>;
76			enable-method = "psci";
77		};
78
79		cpu3: cpu@3 {
80			compatible = "arm,cortex-a53", "arm,armv8";
81			device_type = "cpu";
82			reg = <0x0 0x3>;
83			enable-method = "psci";
84		};
85
86		cpu4: cpu@100 {
87			compatible = "arm,cortex-a73", "arm,armv8";
88			device_type = "cpu";
89			reg = <0x0 0x100>;
90			enable-method = "psci";
91		};
92
93		cpu5: cpu@101 {
94			compatible = "arm,cortex-a73", "arm,armv8";
95			device_type = "cpu";
96			reg = <0x0 0x101>;
97			enable-method = "psci";
98		};
99
100		cpu6: cpu@102 {
101			compatible = "arm,cortex-a73", "arm,armv8";
102			device_type = "cpu";
103			reg = <0x0 0x102>;
104			enable-method = "psci";
105		};
106
107		cpu7: cpu@103 {
108			compatible = "arm,cortex-a73", "arm,armv8";
109			device_type = "cpu";
110			reg = <0x0 0x103>;
111			enable-method = "psci";
112		};
113	};
114
115	gic: interrupt-controller@e82b0000 {
116		compatible = "arm,gic-400";
117		reg = <0x0 0xe82b1000 0 0x1000>, /* GICD */
118		      <0x0 0xe82b2000 0 0x2000>, /* GICC */
119		      <0x0 0xe82b4000 0 0x2000>, /* GICH */
120		      <0x0 0xe82b6000 0 0x2000>; /* GICV */
121		#interrupt-cells = <3>;
122		#address-cells = <0>;
123		interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(8) |
124					 IRQ_TYPE_LEVEL_HIGH)>;
125		interrupt-controller;
126	};
127
128	timer {
129		compatible = "arm,armv8-timer";
130		interrupt-parent = <&gic>;
131		interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(8) |
132					  IRQ_TYPE_LEVEL_LOW)>,
133			     <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(8) |
134					  IRQ_TYPE_LEVEL_LOW)>,
135			     <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(8) |
136					  IRQ_TYPE_LEVEL_LOW)>,
137			     <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(8) |
138					  IRQ_TYPE_LEVEL_LOW)>;
139		clock-frequency = <1920000>;
140	};
141
142	soc {
143		compatible = "simple-bus";
144		#address-cells = <2>;
145		#size-cells = <2>;
146		ranges;
147
148		crg_ctrl: crg_ctrl@fff35000 {
149			compatible = "hisilicon,hi3670-crgctrl", "syscon";
150			reg = <0x0 0xfff35000 0x0 0x1000>;
151			#clock-cells = <1>;
152		};
153
154		pctrl: pctrl@e8a09000 {
155			compatible = "hisilicon,hi3670-pctrl", "syscon";
156			reg = <0x0 0xe8a09000 0x0 0x1000>;
157			#clock-cells = <1>;
158		};
159
160		pmuctrl: crg_ctrl@fff34000 {
161			compatible = "hisilicon,hi3670-pmuctrl", "syscon";
162			reg = <0x0 0xfff34000 0x0 0x1000>;
163			#clock-cells = <1>;
164		};
165
166		sctrl: sctrl@fff0a000 {
167			compatible = "hisilicon,hi3670-sctrl", "syscon";
168			reg = <0x0 0xfff0a000 0x0 0x1000>;
169			#clock-cells = <1>;
170		};
171
172		iomcu: iomcu@ffd7e000 {
173			compatible = "hisilicon,hi3670-iomcu", "syscon";
174			reg = <0x0 0xffd7e000 0x0 0x1000>;
175			#clock-cells = <1>;
176		};
177
178		media1_crg: media1_crgctrl@e87ff000 {
179			compatible = "hisilicon,hi3670-media1-crg", "syscon";
180			reg = <0x0 0xe87ff000 0x0 0x1000>;
181			#clock-cells = <1>;
182		};
183
184		media2_crg: media2_crgctrl@e8900000 {
185			compatible = "hisilicon,hi3670-media2-crg","syscon";
186			reg = <0x0 0xe8900000 0x0 0x1000>;
187			#clock-cells = <1>;
188		};
189
190		uart0: serial@fdf02000 {
191			compatible = "arm,pl011", "arm,primecell";
192			reg = <0x0 0xfdf02000 0x0 0x1000>;
193			interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>;
194			clocks = <&crg_ctrl HI3670_CLK_GATE_UART0>,
195				 <&crg_ctrl HI3670_PCLK>;
196			clock-names = "uartclk", "apb_pclk";
197			pinctrl-names = "default";
198			pinctrl-0 = <&uart0_pmx_func &uart0_cfg_func>;
199			status = "disabled";
200		};
201
202		uart1: serial@fdf00000 {
203			compatible = "arm,pl011", "arm,primecell";
204			reg = <0x0 0xfdf00000 0x0 0x1000>;
205			interrupts = <GIC_SPI 75 IRQ_TYPE_LEVEL_HIGH>;
206			clocks = <&crg_ctrl HI3670_CLK_GATE_UART1>,
207				 <&crg_ctrl HI3670_PCLK>;
208			clock-names = "uartclk", "apb_pclk";
209			pinctrl-names = "default";
210			status = "disabled";
211		};
212
213		uart2: serial@fdf03000 {
214			compatible = "arm,pl011", "arm,primecell";
215			reg = <0x0 0xfdf03000 0x0 0x1000>;
216			interrupts = <GIC_SPI 76 IRQ_TYPE_LEVEL_HIGH>;
217			clocks = <&crg_ctrl HI3670_CLK_GATE_UART2>,
218				 <&crg_ctrl HI3670_PCLK>;
219			clock-names = "uartclk", "apb_pclk";
220			pinctrl-names = "default";
221			pinctrl-0 = <&uart2_pmx_func &uart2_cfg_func>;
222			status = "disabled";
223		};
224
225		uart3: serial@ffd74000 {
226			compatible = "arm,pl011", "arm,primecell";
227			reg = <0x0 0xffd74000 0x0 0x1000>;
228			interrupts = <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>;
229			clocks = <&crg_ctrl HI3670_CLK_GATE_UART3>,
230				 <&crg_ctrl HI3670_PCLK>;
231			clock-names = "uartclk", "apb_pclk";
232			pinctrl-names = "default";
233			pinctrl-0 = <&uart3_pmx_func &uart3_cfg_func>;
234			status = "disabled";
235		};
236
237		uart4: serial@fdf01000 {
238			compatible = "arm,pl011", "arm,primecell";
239			reg = <0x0 0xfdf01000 0x0 0x1000>;
240			interrupts = <GIC_SPI 77 IRQ_TYPE_LEVEL_HIGH>;
241			clocks = <&crg_ctrl HI3670_CLK_GATE_UART4>,
242				 <&crg_ctrl HI3670_PCLK>;
243			clock-names = "uartclk", "apb_pclk";
244			pinctrl-names = "default";
245			pinctrl-0 = <&uart4_pmx_func &uart4_cfg_func>;
246			status = "disabled";
247		};
248
249		uart5: serial@fdf05000 {
250			compatible = "arm,pl011", "arm,primecell";
251			reg = <0x0 0xfdf05000 0x0 0x1000>;
252			interrupts = <GIC_SPI 78 IRQ_TYPE_LEVEL_HIGH>;
253			clocks = <&crg_ctrl HI3670_CLK_GATE_UART5>,
254				 <&crg_ctrl HI3670_PCLK>;
255			clock-names = "uartclk", "apb_pclk";
256			pinctrl-names = "default";
257			status = "disabled";
258		};
259
260		uart6: serial@fff32000 {
261			compatible = "arm,pl011", "arm,primecell";
262			reg = <0x0 0xfff32000 0x0 0x1000>;
263			interrupts = <GIC_SPI 79 IRQ_TYPE_LEVEL_HIGH>;
264			clocks = <&crg_ctrl HI3670_CLK_UART6>,
265				 <&crg_ctrl HI3670_PCLK>;
266			clock-names = "uartclk", "apb_pclk";
267			pinctrl-names = "default";
268			pinctrl-0 = <&uart6_pmx_func &uart6_cfg_func>;
269			status = "disabled";
270		};
271
272		gpio0: gpio@e8a0b000 {
273			compatible = "arm,pl061", "arm,primecell";
274			reg = <0x0 0xe8a0b000 0x0 0x1000>;
275			interrupts = <GIC_SPI 84 IRQ_TYPE_LEVEL_HIGH>;
276			gpio-controller;
277			#gpio-cells = <2>;
278			gpio-ranges = <&pmx0 1 0 1 &pmx0 3 1 5>;
279			interrupt-controller;
280			#interrupt-cells = <2>;
281			clocks = <&crg_ctrl HI3670_PCLK_GPIO0>;
282			clock-names = "apb_pclk";
283		};
284
285		gpio1: gpio@e8a0c000 {
286			compatible = "arm,pl061", "arm,primecell";
287			reg = <0x0 0xe8a0c000 0x0 0x1000>;
288			interrupts = <GIC_SPI 85 IRQ_TYPE_LEVEL_HIGH>;
289			gpio-controller;
290			#gpio-cells = <2>;
291			interrupt-controller;
292			#interrupt-cells = <2>;
293			clocks = <&crg_ctrl HI3670_PCLK_GPIO1>;
294			clock-names = "apb_pclk";
295		};
296
297		gpio2: gpio@e8a0d000 {
298			compatible = "arm,pl061", "arm,primecell";
299			reg = <0x0 0xe8a0d000 0x0 0x1000>;
300			interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>;
301			gpio-controller;
302			#gpio-cells = <2>;
303			gpio-ranges = <&pmx0 1 6 7>;
304			interrupt-controller;
305			#interrupt-cells = <2>;
306			clocks = <&crg_ctrl HI3670_PCLK_GPIO2>;
307			clock-names = "apb_pclk";
308		};
309
310		gpio3: gpio@e8a0e000 {
311			compatible = "arm,pl061", "arm,primecell";
312			reg = <0x0 0xe8a0e000 0x0 0x1000>;
313			interrupts = <GIC_SPI 87 IRQ_TYPE_LEVEL_HIGH>;
314			gpio-controller;
315			#gpio-cells = <2>;
316			gpio-ranges =  <&pmx0 0 13 4 &pmx0 7 17 1>;
317			interrupt-controller;
318			#interrupt-cells = <2>;
319			clocks = <&crg_ctrl HI3670_PCLK_GPIO3>;
320			clock-names = "apb_pclk";
321		};
322
323		gpio4: gpio@e8a0f000 {
324			compatible = "arm,pl061", "arm,primecell";
325			reg = <0x0 0xe8a0f000 0x0 0x1000>;
326			interrupts = <GIC_SPI 88 IRQ_TYPE_LEVEL_HIGH>;
327			gpio-controller;
328			#gpio-cells = <2>;
329			gpio-ranges = <&pmx0 0 18 8>;
330			interrupt-controller;
331			#interrupt-cells = <2>;
332			clocks = <&crg_ctrl HI3670_PCLK_GPIO4>;
333			clock-names = "apb_pclk";
334		};
335
336		gpio5: gpio@e8a10000 {
337			compatible = "arm,pl061", "arm,primecell";
338			reg = <0x0 0xe8a10000 0x0 0x1000>;
339			interrupts = <GIC_SPI 89 IRQ_TYPE_LEVEL_HIGH>;
340			gpio-controller;
341			#gpio-cells = <2>;
342			gpio-ranges = <&pmx0 0 26 8>;
343			interrupt-controller;
344			#interrupt-cells = <2>;
345			clocks = <&crg_ctrl HI3670_PCLK_GPIO5>;
346			clock-names = "apb_pclk";
347		};
348
349		gpio6: gpio@e8a11000 {
350			compatible = "arm,pl061", "arm,primecell";
351			reg = <0x0 0xe8a11000 0x0 0x1000>;
352			interrupts = <GIC_SPI 90 IRQ_TYPE_LEVEL_HIGH>;
353			gpio-controller;
354			#gpio-cells = <2>;
355			gpio-ranges = <&pmx0 1 34 7>;
356			interrupt-controller;
357			#interrupt-cells = <2>;
358			clocks = <&crg_ctrl HI3670_PCLK_GPIO6>;
359			clock-names = "apb_pclk";
360		};
361
362		gpio7: gpio@e8a12000 {
363			compatible = "arm,pl061", "arm,primecell";
364			reg = <0x0 0xe8a12000 0x0 0x1000>;
365			interrupts = <GIC_SPI 91 IRQ_TYPE_LEVEL_HIGH>;
366			gpio-controller;
367			#gpio-cells = <2>;
368			gpio-ranges = <&pmx0 0 41 8>;
369			interrupt-controller;
370			#interrupt-cells = <2>;
371			clocks = <&crg_ctrl HI3670_PCLK_GPIO7>;
372			clock-names = "apb_pclk";
373		};
374
375		gpio8: gpio@e8a13000 {
376			compatible = "arm,pl061", "arm,primecell";
377			reg = <0x0 0xe8a13000 0x0 0x1000>;
378			interrupts = <GIC_SPI 92 IRQ_TYPE_LEVEL_HIGH>;
379			gpio-controller;
380			#gpio-cells = <2>;
381			gpio-ranges = <&pmx0 0 49 8>;
382			interrupt-controller;
383			#interrupt-cells = <2>;
384			clocks = <&crg_ctrl HI3670_PCLK_GPIO8>;
385			clock-names = "apb_pclk";
386		};
387
388		gpio9: gpio@e8a14000 {
389			compatible = "arm,pl061", "arm,primecell";
390			reg = <0x0 0xe8a14000 0x0 0x1000>;
391			interrupts = <GIC_SPI 93 IRQ_TYPE_LEVEL_HIGH>;
392			gpio-controller;
393			#gpio-cells = <2>;
394			gpio-ranges = <&pmx0 0 57 8>;
395			interrupt-controller;
396			#interrupt-cells = <2>;
397			clocks = <&crg_ctrl HI3670_PCLK_GPIO9>;
398			clock-names = "apb_pclk";
399		};
400
401		gpio10: gpio@e8a15000 {
402			compatible = "arm,pl061", "arm,primecell";
403			reg = <0x0 0xe8a15000 0x0 0x1000>;
404			interrupts = <GIC_SPI 94 IRQ_TYPE_LEVEL_HIGH>;
405			gpio-controller;
406			#gpio-cells = <2>;
407			gpio-ranges = <&pmx0 0 65 8>;
408			interrupt-controller;
409			#interrupt-cells = <2>;
410			clocks = <&crg_ctrl HI3670_PCLK_GPIO10>;
411			clock-names = "apb_pclk";
412		};
413
414		gpio11: gpio@e8a16000 {
415			compatible = "arm,pl061", "arm,primecell";
416			reg = <0x0 0xe8a16000 0x0 0x1000>;
417			interrupts = <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>;
418			gpio-controller;
419			#gpio-cells = <2>;
420			gpio-ranges = <&pmx0 0 73 8>;
421			interrupt-controller;
422			#interrupt-cells = <2>;
423			clocks = <&crg_ctrl HI3670_PCLK_GPIO11>;
424			clock-names = "apb_pclk";
425		};
426
427		gpio12: gpio@e8a17000 {
428			compatible = "arm,pl061", "arm,primecell";
429			reg = <0x0 0xe8a17000 0x0 0x1000>;
430			interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>;
431			gpio-controller;
432			#gpio-cells = <2>;
433			gpio-ranges = <&pmx0 0 81 1>;
434			interrupt-controller;
435			#interrupt-cells = <2>;
436			clocks = <&crg_ctrl HI3670_PCLK_GPIO12>;
437			clock-names = "apb_pclk";
438		};
439
440		gpio13: gpio@e8a18000 {
441			compatible = "arm,pl061", "arm,primecell";
442			reg = <0x0 0xe8a18000 0x0 0x1000>;
443			interrupts = <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>;
444			gpio-controller;
445			#gpio-cells = <2>;
446			interrupt-controller;
447			#interrupt-cells = <2>;
448			clocks = <&crg_ctrl HI3670_PCLK_GPIO13>;
449			clock-names = "apb_pclk";
450		};
451
452		gpio14: gpio@e8a19000 {
453			compatible = "arm,pl061", "arm,primecell";
454			reg = <0x0 0xe8a19000 0x0 0x1000>;
455			interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>;
456			gpio-controller;
457			#gpio-cells = <2>;
458			interrupt-controller;
459			#interrupt-cells = <2>;
460			clocks = <&crg_ctrl HI3670_PCLK_GPIO14>;
461			clock-names = "apb_pclk";
462		};
463
464		gpio15: gpio@e8a1a000 {
465			compatible = "arm,pl061", "arm,primecell";
466			reg = <0x0 0xe8a1a000 0x0 0x1000>;
467			interrupts = <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>;
468			gpio-controller;
469			#gpio-cells = <2>;
470			interrupt-controller;
471			#interrupt-cells = <2>;
472			clocks = <&crg_ctrl HI3670_PCLK_GPIO15>;
473			clock-names = "apb_pclk";
474		};
475
476		gpio16: gpio@e8a1b000 {
477			compatible = "arm,pl061", "arm,primecell";
478			reg = <0x0 0xe8a1b000 0x0 0x1000>;
479			interrupts = <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>;
480			gpio-controller;
481			#gpio-cells = <2>;
482			gpio-ranges = <&pmx5 0 0 8>;
483			interrupt-controller;
484			#interrupt-cells = <2>;
485			clocks = <&crg_ctrl HI3670_PCLK_GPIO16>;
486			clock-names = "apb_pclk";
487		};
488
489		gpio17: gpio@e8a1c000 {
490			compatible = "arm,pl061", "arm,primecell";
491			reg = <0x0 0xe8a1c000 0x0 0x1000>;
492			interrupts = <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>;
493			gpio-controller;
494			#gpio-cells = <2>;
495			gpio-ranges = <&pmx5 0 8 2>;
496			interrupt-controller;
497			#interrupt-cells = <2>;
498			clocks = <&crg_ctrl HI3670_PCLK_GPIO17>;
499			clock-names = "apb_pclk";
500		};
501
502		gpio18: gpio@fff28000 {
503			compatible = "arm,pl061", "arm,primecell";
504			reg = <0x0 0xfff28000 0x0 0x1000>;
505			interrupts = <GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH>;
506			gpio-controller;
507			#gpio-cells = <2>;
508			gpio-ranges = <&pmx1 4 42 4>;
509			interrupt-controller;
510			#interrupt-cells = <2>;
511			clocks = <&sctrl HI3670_PCLK_GPIO18>;
512			clock-names = "apb_pclk";
513		};
514
515		gpio19: gpio@fff29000 {
516			compatible = "arm,pl061", "arm,primecell";
517			reg = <0x0 0xfff29000 0x0 0x1000>;
518			interrupts = <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>;
519			gpio-controller;
520			#gpio-cells = <2>;
521			gpio-ranges = <&pmx1 0 61 2>;
522			interrupt-controller;
523			#interrupt-cells = <2>;
524			clocks = <&sctrl HI3670_PCLK_GPIO19>;
525			clock-names = "apb_pclk";
526		};
527
528		gpio20: gpio@e8a1f000 {
529			compatible = "arm,pl061", "arm,primecell";
530			reg = <0x0 0xe8a1f000 0x0 0x1000>;
531			interrupts = <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>;
532			gpio-controller;
533			#gpio-cells = <2>;
534			gpio-ranges = <&pmx7 0 0 8>;
535			interrupt-controller;
536			#interrupt-cells = <2>;
537			clocks = <&crg_ctrl HI3670_PCLK_GPIO20>;
538			clock-names = "apb_pclk";
539		};
540
541		gpio21: gpio@e8a20000 {
542			compatible = "arm,pl061", "arm,primecell";
543			reg = <0x0 0xe8a20000 0x0 0x1000>;
544			interrupts = <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>;
545			gpio-controller;
546			#gpio-cells = <2>;
547			gpio-ranges = <&pmx7 0 8 4>;
548			interrupt-controller;
549			#interrupt-cells = <2>;
550			clocks = <&crg_ctrl HI3670_PCLK_GPIO21>;
551			clock-names = "apb_pclk";
552		};
553
554		gpio22: gpio@fff0b000 {
555			compatible = "arm,pl061", "arm,primecell";
556			reg = <0x0 0xfff0b000 0x0 0x1000>;
557			interrupts = <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>;
558			gpio-controller;
559			#gpio-cells = <2>;
560			/* GPIO176 */
561			gpio-ranges = <&pmx1 2 0 6>;
562			interrupt-controller;
563			#interrupt-cells = <2>;
564			clocks = <&sctrl HI3670_PCLK_AO_GPIO0>;
565			clock-names = "apb_pclk";
566		};
567
568		gpio23: gpio@fff0c000 {
569			compatible = "arm,pl061", "arm,primecell";
570			reg = <0x0 0xfff0c000 0x0 0x1000>;
571			interrupts = <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>;
572			gpio-controller;
573			#gpio-cells = <2>;
574			/* GPIO184 */
575			gpio-ranges = <&pmx1 0 6 8>;
576			interrupt-controller;
577			#interrupt-cells = <2>;
578			clocks = <&sctrl HI3670_PCLK_AO_GPIO1>;
579			clock-names = "apb_pclk";
580		};
581
582		gpio24: gpio@fff0d000 {
583			compatible = "arm,pl061", "arm,primecell";
584			reg = <0x0 0xfff0d000 0x0 0x1000>;
585			interrupts = <GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>;
586			gpio-controller;
587			#gpio-cells = <2>;
588			/* GPIO192 */
589			gpio-ranges = <&pmx1 0 14 8>;
590			interrupt-controller;
591			#interrupt-cells = <2>;
592			clocks = <&sctrl HI3670_PCLK_AO_GPIO2>;
593			clock-names = "apb_pclk";
594		};
595
596		gpio25: gpio@fff0e000 {
597			compatible = "arm,pl061", "arm,primecell";
598			reg = <0x0 0xfff0e000 0x0 0x1000>;
599			interrupts = <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>;
600			gpio-controller;
601			#gpio-cells = <2>;
602			/* GPIO200 */
603			gpio-ranges = <&pmx1 0 22 8>;
604			interrupt-controller;
605			#interrupt-cells = <2>;
606			clocks = <&sctrl HI3670_PCLK_AO_GPIO3>;
607			clock-names = "apb_pclk";
608		};
609
610		gpio26: gpio@fff0f000 {
611			compatible = "arm,pl061", "arm,primecell";
612			reg = <0x0 0xfff0f000 0x0 0x1000>;
613			interrupts = <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>;
614			gpio-controller;
615			#gpio-cells = <2>;
616			/* GPIO208 */
617			gpio-ranges = <&pmx1 0 30 1>;
618			interrupt-controller;
619			#interrupt-cells = <2>;
620			clocks = <&sctrl HI3670_PCLK_AO_GPIO4>;
621			clock-names = "apb_pclk";
622		};
623
624		gpio27: gpio@fff10000 {
625			compatible = "arm,pl061", "arm,primecell";
626			reg = <0x0 0xfff10000 0x0 0x1000>;
627			interrupts = <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>;
628			gpio-controller;
629			#gpio-cells = <2>;
630			/* GPIO216 */
631			gpio-ranges = <&pmx1 4 31 4>;
632			interrupt-controller;
633			#interrupt-cells = <2>;
634			clocks = <&sctrl HI3670_PCLK_AO_GPIO5>;
635			clock-names = "apb_pclk";
636		};
637
638		gpio28: gpio@fff1d000 {
639			compatible = "arm,pl061", "arm,primecell";
640			reg = <0x0 0xfff1d000 0x0 0x1000>;
641			interrupts = <GIC_SPI 141 IRQ_TYPE_LEVEL_HIGH>;
642			gpio-controller;
643			#gpio-cells = <2>;
644			gpio-ranges = <&pmx1 1 35 7>;
645			interrupt-controller;
646			#interrupt-cells = <2>;
647			clocks = <&sctrl HI3670_PCLK_AO_GPIO6>;
648			clock-names = "apb_pclk";
649		};
650	};
651};
652