rk3368 dts: add ddr timing node in rk3368.dtsi
[firefly-linux-kernel-4.4.55.git] / arch / arm64 / boot / dts / rk3368.dtsi
1 #include <dt-bindings/interrupt-controller/arm-gic.h>
2 #include <dt-bindings/suspend/rockchip-rk3368.h>
3 #include <dt-bindings/pinctrl/rockchip.h>
4 #include <dt-bindings/gpio/gpio.h>
5 #include <dt-bindings/sensor-dev.h>
6 #include <dt-bindings/clock/rk_system_status.h>
7
8 #include "rk3368-clocks.dtsi"
9 #include <rk3368_dram_default_timing.dtsi>
10
11 / {
12         compatible = "rockchip,rk3368";
13
14         rockchip,sram = <&sram>;
15         interrupt-parent = <&gic>;
16         #address-cells = <2>;
17         #size-cells = <2>;
18
19         aliases {
20                 serial0 = &uart_bt;
21                 serial1 = &uart_bb;
22                 serial2 = &uart_dbg;
23                 serial3 = &uart_gps;
24                 serial4 = &uart_exp;
25                 i2c0 = &i2c0;
26                 i2c1 = &i2c1;
27                 i2c2 = &i2c2;
28                 i2c3 = &i2c3;
29                 i2c4 = &i2c4;
30                 i2c5 = &i2c5;
31                 spi0 = &spi0;
32                 spi1 = &spi1;
33                 spi2 = &spi2;
34                 lcdc = &lcdc;
35         };
36
37         cpus {
38                 #address-cells = <2>;
39                 #size-cells = <0>;
40
41                 idle-states {
42                         entry-method = "arm,psci";
43                         CPU_SLEEP_0: cpu-sleep-0 {
44                                 compatible = "arm,idle-state";
45                                 arm,psci-suspend-param = <0x1010000>;
46                                 entry-latency-us = <0x3fffffff>;
47                                 exit-latency-us = <0x40000000>;
48                                 min-residency-us = <0xffffffff>;
49                         };
50                 };
51
52                 little0: cpu@0 {
53                         device_type = "cpu";
54                         compatible = "arm,cortex-a53", "arm,armv8";
55                         reg = <0x0 0x0>;
56                         enable-method = "psci";
57                         cpu-idle-states = <&CPU_SLEEP_0>;
58                 };
59                 little1: cpu@1 {
60                         device_type = "cpu";
61                         compatible = "arm,cortex-a53", "arm,armv8";
62                         reg = <0x0 0x1>;
63                         enable-method = "psci";
64                         cpu-idle-states = <&CPU_SLEEP_0>;
65                 };
66                 little2: cpu@2 {
67                         device_type = "cpu";
68                         compatible = "arm,cortex-a53", "arm,armv8";
69                         reg = <0x0 0x2>;
70                         enable-method = "psci";
71                         cpu-idle-states = <&CPU_SLEEP_0>;
72                 };
73                 little3: cpu@3 {
74                         device_type = "cpu";
75                         compatible = "arm,cortex-a53", "arm,armv8";
76                         reg = <0x0 0x3>;
77                         enable-method = "psci";
78                         cpu-idle-states = <&CPU_SLEEP_0>;
79                 };
80                 big0: cpu@100 {
81                         device_type = "cpu";
82                         compatible = "arm,cortex-a53", "arm,armv8";
83                         reg = <0x0 0x100>;
84                         enable-method = "psci";
85                         cpu-idle-states = <&CPU_SLEEP_0>;
86                 };
87                 big1: cpu@101 {
88                         device_type = "cpu";
89                         compatible = "arm,cortex-a53", "arm,armv8";
90                         reg = <0x0 0x101>;
91                         enable-method = "psci";
92                         cpu-idle-states = <&CPU_SLEEP_0>;
93                 };
94                 big2: cpu@102 {
95                         device_type = "cpu";
96                         compatible = "arm,cortex-a53", "arm,armv8";
97                         reg = <0x0 0x102>;
98                         enable-method = "psci";
99                         cpu-idle-states = <&CPU_SLEEP_0>;
100                 };
101                 big3: cpu@103 {
102                         device_type = "cpu";
103                         compatible = "arm,cortex-a53", "arm,armv8";
104                         reg = <0x0 0x103>;
105                         enable-method = "psci";
106                         cpu-idle-states = <&CPU_SLEEP_0>;
107                 };
108
109                 cpu-map {
110                         cluster0 {
111                                 core0 {
112                                         cpu = <&big0>;
113                                 };
114                                 core1 {
115                                         cpu = <&big1>;
116                                 };
117                                 core2 {
118                                         cpu = <&big2>;
119                                 };
120                                 core3 {
121                                         cpu = <&big3>;
122                                 };
123                         };
124                         cluster1 {
125                                 core0 {
126                                         cpu = <&little0>;
127                                 };
128                                 core1 {
129                                         cpu = <&little1>;
130                                 };
131                                 core2 {
132                                         cpu = <&little2>;
133                                 };
134                                 core3 {
135                                         cpu = <&little3>;
136                                 };
137                         };
138                 };
139         };
140
141         psci {
142                 compatible = "arm,psci-0.2";
143                 method = "smc";
144         };
145
146         gic: interrupt-controller@ffb70000 {
147                 compatible = "arm,cortex-a15-gic";
148                 #interrupt-cells = <3>;
149                 #address-cells = <0>;
150                 interrupt-controller;
151                 reg = <0x0 0xffb71000 0 0x1000>,
152                       <0x0 0xffb72000 0 0x1000>;
153         };
154
155         ddrpctl: syscon@ff610000 {
156                 compatible = "rockchip,rk3368-ddrpctl", "syscon";
157                 reg = <0x0 0xff610000 0x0 0x400>;
158         };
159
160         pmu: syscon@ff730000 {
161                 compatible = "rockchip,rk3368-pmu", "rockchip,pmu", "syscon";
162                 reg = <0x0 0xff730000 0x0 0x1000>;
163         };
164
165         pmugrf: syscon@ff738000 {
166                 compatible = "rockchip,rk3368-pmugrf", "rockchip,pmugrf", "syscon";
167                 reg = <0x0 0xff738000 0x0 0x1000>;
168         };
169
170         sgrf: syscon@ff740000 {
171                 compatible = "rockchip,rk3368-sgrf", "rockchip,sgrf", "syscon";
172                 reg = <0x0 0xff740000 0x0 0x1000>;
173
174         };
175
176         cru: syscon@ff760000 {
177                 compatible = "rockchip,rk3368-cru", "rockchip,cru", "syscon";
178                 reg = <0x0 0xff760000 0x0 0x1000>;
179         };
180
181         grf: syscon@ff770000 {
182                 compatible = "rockchip,rk3368-grf", "rockchip,grf", "syscon";
183                 reg = <0x0 0xff770000 0x0 0x1000>;
184         };
185
186         msch: syscon@ffac0000 {
187                 compatible = "rockchip,rk3368-msch", "rockchip,msch", "syscon";
188                 reg = <0x0 0xffac0000 0x0 0x3000>;
189         };
190
191         arm-pmu {
192                 compatible = "arm,armv8-pmuv3";
193                 interrupts = <GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>,
194                              <GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>,
195                              <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>,
196                              <GIC_SPI 115 IRQ_TYPE_LEVEL_HIGH>,
197                              <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH>,
198                              <GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH>,
199                              <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>,
200                              <GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH>;
201         };
202
203         cpu_axi_bus: cpu_axi_bus {
204                 compatible = "rockchip,cpu_axi_bus";
205                 #address-cells = <2>;
206                 #size-cells = <2>;
207                 ranges;
208
209                 qos {
210                         #address-cells = <2>;
211                         #size-cells = <2>;
212                         ranges;
213
214                         dmac {
215                                 reg = <0x0 0xffa80000 0x0 0x20>;
216                         };
217                         crypto {
218                                 reg = <0x0 0xffa80080 0x0 0x20>;
219                         };
220                         tsp {
221                                 reg = <0x0 0xffa80280 0x0 0x20>;
222                         };
223                         bus_cpup {
224                                 reg = <0x0 0xffa90000 0x0 0x20>;
225                         };
226                         cci_r {
227                                 reg = <0x0 0xffaa0000 0x0 0x20>;
228                         };
229                         cci_w {
230                                 reg = <0x0 0xffaa0080 0x0 0x20>;
231                         };
232                         peri {
233                                 reg = <0x0 0xffab0000 0x0 0x20>;
234                                 rockchip,priority = <2 2>;
235                         };
236                         iep {
237                                 reg = <0x0 0xffad0000 0x0 0x20>;
238                         };
239                         isp_r0 {
240                                 reg = <0x0 0xffad0080 0x0 0x20>;
241                         };
242                         isp_r1 {
243                                 reg = <0x0 0xffad0100 0x0 0x20>;
244                         };
245                         isp_w0 {
246                                 reg = <0x0 0xffad0180 0x0 0x20>;
247                                 rockchip,priority = <2 2>;
248                         };
249                         isp_w1 {
250                                 reg = <0x0 0xffad0200 0x0 0x20>;
251                                 rockchip,priority = <2 2>;
252                         };
253                         vip {
254                                 reg = <0x0 0xffad0280 0x0 0x20>;
255                         };
256                         vop {
257                                 reg = <0x0 0xffad0300 0x0 0x20>;
258                                 rockchip,priority = <2 2>;
259                         };
260                         rga_r {
261                                 reg = <0x0 0xffad0380 0x0 0x20>;
262                         };
263                         rga_w {
264                                 reg = <0x0 0xffad0400 0x0 0x20>;
265                         };
266                         hevc_r {
267                                 reg = <0x0 0xffae0000 0x0 0x20>;
268                         };
269                         vpu_r {
270                                 reg = <0x0 0xffae0100 0x0 0x20>;
271                         };
272                         vpu_w {
273                                 reg = <0x0 0xffae0180 0x0 0x20>;
274                         };
275                         gpu {
276                                 reg = <0x0 0xffaf0000 0x0 0x20>;
277                         };
278                 };
279
280                 msch {
281                         #address-cells = <2>;
282                         #size-cells = <2>;
283                         ranges;
284
285                         msch {
286                                 reg = <0x0 0xffac0000 0x0 0x3c>;
287                                 rockchip,read-latency = <0x34>;
288                         };
289                 };
290         };
291
292         efuse_256@ffb00000 {
293                 compatible = "rockchip,rk3368-efuse-256";
294                 reg = <0x0 0xffb00000 0x0 0x8>;
295         };
296
297         timer {
298                 compatible = "arm,armv8-timer";
299                 interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_HIGH)>,
300                              <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_HIGH)>,
301                              <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_HIGH)>,
302                              <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_HIGH)>;
303                 clock-frequency = <24000000>;
304         };
305
306         timer@ff810000 {
307                 compatible = "rockchip,timer";
308                 reg = <0x0 0xff810000 0x0 0x20>;
309                 interrupts = <GIC_SPI 66 IRQ_TYPE_LEVEL_HIGH>;
310                 rockchip,broadcast = <1>;
311         };
312
313         timer@ff810020 {
314                 compatible = "rockchip,timer";
315                 reg = <0x0 0xff810020 0x0 0x20>;
316                 interrupts = <GIC_SPI 67 IRQ_TYPE_LEVEL_HIGH>;
317                 rockchip,percpu = <0>;
318         };
319
320         sram: sram@ff8c0000 {
321                 compatible = "mmio-sram";
322                 reg = <0x0 0xff8c0000 0x0 0xf000>; /* 60K (reserved 4K for mailbox)*/
323                 map-exec;
324         };
325
326         watchdog: wdt@ff800000 {
327                 compatible = "rockchip,watch dog";
328                 reg = <0x0 0xff800000 0x0 0x100>;
329                 clocks = <&pclk_alive_pre>;
330                 clock-names = "pclk_wdt";
331                 interrupts = <GIC_SPI 79 IRQ_TYPE_LEVEL_HIGH>;
332                 rockchip,irq = <1>;
333                 rockchip,timeout = <60>;
334                 rockchip,atboot = <1>;
335                 rockchip,debug = <0>;
336                 status = "disabled";
337         };
338
339         amba {
340                 #address-cells = <2>;
341                 #size-cells = <2>;
342                 compatible = "arm,amba-bus";
343                 interrupt-parent = <&gic>;
344                 ranges;
345
346                 pdma0: pdma@ff600000 {
347                         compatible = "arm,pl330", "arm,primecell";
348                         reg = <0x0 0xff600000 0x0 0x4000>;
349                         clocks = <&clk_gates12 11>;
350                         clock-names = "apb_pclk";
351                         interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>,
352                                      <GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>;
353                         #dma-cells = <1>;
354
355                 };
356
357                 pdma1: pdma@ff250000 {
358                         compatible = "arm,pl330", "arm,primecell";
359                         reg = <0x0 0xff250000 0x0 0x4000>;
360                         clocks = <&clk_gates19 3>;
361                         clock-names = "apb_pclk";
362                         interrupts = <GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>,
363                                      <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>;
364                         #dma-cells = <1>;
365                 };
366         };
367
368         reset: reset@ff760300{
369                 compatible = "rockchip,reset";
370                 reg = <0x0 0xff760300 0x0 0x38>;
371                 rockchip,reset-flag = <ROCKCHIP_RESET_HIWORD_MASK>;
372                 #reset-cells = <1>;
373         };
374
375         nandc0: nandc@ff400000 {
376                 compatible = "rockchip,rk-nandc";
377                 reg = <0x0 0xff400000 0x0 0x4000>;
378                 interrupts = <GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>;
379                 nandc_id = <0>;
380                 clocks = <&clk_nandc0>, <&clk_gates20 9>, <&clk_gates20 11>;
381                 clock-names = "clk_nandc", "g_clk_nandc", "hclk_nandc";
382         };
383
384         nandc0reg: nandc0@ff400000 {
385                 compatible = "rockchip,rk-nandc";
386                 reg = <0x0 0xff400000 0x0 0x4000>;
387         };
388
389         emmc: rksdmmc@ff0f0000 {
390                 compatible = "rockchip,rk_mmc", "rockchip,rk3368-sdmmc";
391                 reg = <0x0 0xff0f0000 0x0 0x4000>;
392                 interrupts = <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>;
393                 #address-cells = <1>;
394                 #size-cells = <0>;
395                 clocks = <&clk_emmc>, <&clk_gates21 2>, <&clk_gates20 10>;
396                 clock-names = "clk_mmc", "hclk_mmc", "hpclk_mmc";
397                 rockchip,grf = <&grf>;
398                 rockchip,cru = <&cru>;
399                 num-slots = <1>;
400                 fifo-depth = <0x100>;
401                 bus-width = <8>;
402                 tune_regsbase = <0x418>;
403                 cru_regsbase = <0x320>;
404                 cru_reset_offset = <3>;
405         };
406
407         sdmmc: rksdmmc@ff0c0000 {
408                 compatible = "rockchip,rk_mmc", "rockchip,rk3368-sdmmc";
409                 reg = <0x0 0xff0c0000 0x0 0x4000>;
410                 interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>;
411                 #address-cells = <1>;
412                 #size-cells = <0>;
413                 pinctrl-names = "default", "idle", "udbg";
414                 pinctrl-0 = <&sdmmc_clk &sdmmc_cmd &sdmmc_dectn &sdmmc_bus4>;
415                 pinctrl-1 = <&sdmmc_gpio>;
416                 pinctrl-2 = <&uart2_xfer &cpu_jtag &mcu_jtag &sdmmc_dectn>;
417                 cd-gpios = <&gpio2 GPIO_B3 GPIO_ACTIVE_HIGH>;/*CD GPIO*/
418                 clocks = <&clk_sdmmc0>, <&clk_gates21 0>, <&clk_gates20 10>;
419                 clock-names = "clk_mmc", "hclk_mmc", "hpclk_mmc";
420                 rockchip,grf = <&grf>;
421                 rockchip,cru = <&cru>;
422                 num-slots = <1>;
423                 fifo-depth = <0x100>;
424                 bus-width = <4>;
425                 tune_regsbase = <0x400>;
426                 cru_regsbase = <0x320>;
427                 cru_reset_offset = <0>;
428         };
429
430         sdio: rksdmmc@ff0d0000 {
431                 compatible = "rockchip,rk_mmc", "rockchip,rk3368-sdmmc";
432                 reg = <0x0 0xff0d0000 0x0 0x4000>;
433                 interrupts = <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>;
434                 #address-cells = <1>;
435                 #size-cells = <0>;
436                 pinctrl-names = "default","idle";
437                 pinctrl-0 = <&sdio0_clk &sdio0_cmd &sdio0_wrprt &sdio0_pwren &sdio0_bkpwr &sdio0_int &sdio0_bus4>;
438                 pinctrl-1 = <&sdio0_gpio>;
439                 clocks = <&clk_sdio0>, <&clk_gates21 1>, <&clk_gates20 10>;
440                 clock-names = "clk_mmc", "hclk_mmc", "hpclk_mmc";
441                 rockchip,grf = <&grf>;
442                 rockchip,cru = <&cru>;
443                 num-slots = <1>;
444                 fifo-depth = <0x100>;
445                 bus-width = <4>;
446                 tune_regsbase = <0x408>;
447                 cru_regsbase = <0x320>;
448                 cru_reset_offset = <1>;
449         };
450
451         spi0: spi@ff110000 {
452                 compatible = "rockchip,rockchip-spi";
453                 reg = <0x0 0xff110000 0x0 0x1000>;
454                 interrupts = <GIC_SPI 44 IRQ_TYPE_LEVEL_HIGH>;
455                 #address-cells = <1>;
456                 #size-cells = <0>;
457                 pinctrl-names = "default";
458                 pinctrl-0 = <&spi0_clk &spi0_tx &spi0_rx &spi0_cs0 &spi0_cs1>;
459                 rockchip,spi-src-clk = <0>;
460                 num-cs = <2>;
461                 clocks =<&clk_spi0>, <&clk_gates19 4>;
462                 clock-names = "spi", "pclk_spi0";
463                 //dmas = <&pdma1 11>, <&pdma1 12>;
464                 //#dma-cells = <2>;
465                 //dma-names = "tx", "rx";
466                 status = "disabled";
467         };
468
469         spi1: spi@ff120000 {
470                 compatible = "rockchip,rockchip-spi";
471                 reg = <0x0 0xff120000 0x0 0x1000>;
472                 interrupts = <GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>;
473                 #address-cells = <1>;
474                 #size-cells = <0>;
475                 pinctrl-names = "default";
476                 pinctrl-0 = <&spi1_clk &spi1_tx &spi1_rx &spi1_cs0 &spi1_cs1>;
477                 rockchip,spi-src-clk = <1>;
478                 num-cs = <2>;
479                 clocks = <&clk_spi1>, <&clk_gates19 5>;
480                 clock-names = "spi", "pclk_spi1";
481                 //dmas = <&pdma1 13>, <&pdma1 14>;
482                 //#dma-cells = <2>;
483                 //dma-names = "tx", "rx";
484                 status = "disabled";
485         };
486
487         spi2: spi@ff130000 {
488                 compatible = "rockchip,rockchip-spi";
489                 reg = <0x0 0xff130000 0x0 0x1000>;
490                 interrupts = <GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH>;
491                 #address-cells = <1>;
492                 #size-cells = <0>;
493                 pinctrl-names = "default";
494                 pinctrl-0 = <&spi2_clk &spi2_tx &spi2_rx &spi2_cs0>;
495                 rockchip,spi-src-clk = <2>;
496                 num-cs = <1>;
497                 clocks = <&clk_spi2>, <&clk_gates19 6>;
498                 clock-names = "spi", "pclk_spi2";
499                 //dmas = <&pdma1 15>, <&pdma1 16>;
500                 //#dma-cells = <2>;
501                 //dma-names = "tx", "rx";
502                 status = "disabled";
503         };
504
505         uart_bt: serial@ff180000 {
506                 compatible = "rockchip,serial";
507                 reg = <0x0 0xff180000 0x0 0x100>;
508                 interrupts = <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>;
509                 clock-frequency = <24000000>;
510                 clocks = <&clk_uart0>, <&clk_gates19 7>;
511                 clock-names = "sclk_uart", "pclk_uart";
512                 reg-shift = <2>;
513                 reg-io-width = <4>;
514                 //dmas = <&pdma1 1>, <&pdma1 2>;
515                 //#dma-cells = <2>;
516                 pinctrl-names = "default";
517                 pinctrl-0 = <&uart0_xfer &uart0_cts &uart0_rts>;
518                 status = "disabled";
519         };
520
521         uart_bb: serial@ff190000 {
522                 compatible = "rockchip,serial";
523                 reg = <0x0 0xff190000 0x0 0x100>;
524                 interrupts = <GIC_SPI 56 IRQ_TYPE_LEVEL_HIGH>;
525                 clock-frequency = <24000000>;
526                 clocks = <&clk_uart1>, <&clk_gates19 8>;
527                 clock-names = "sclk_uart", "pclk_uart";
528                 reg-shift = <2>;
529                 reg-io-width = <4>;
530                 //dmas = <&pdma1 3>, <&pdma1 4>;
531                 //#dma-cells = <2>;
532                 pinctrl-names = "default";
533                 pinctrl-0 = <&uart1_xfer &uart1_cts &uart1_rts>;
534                 status = "disabled";
535         };
536
537         uart_dbg: serial@ff690000 {
538                 compatible = "rockchip,serial";
539                 reg = <0x0 0xff690000 0x0 0x100>;
540                 interrupts = <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>;
541                 clock-frequency = <24000000>;
542                 clocks = <&clk_uart2>, <&clk_gates13 5>;
543                 clock-names = "sclk_uart", "pclk_uart";
544                 reg-shift = <2>;
545                 reg-io-width = <4>;
546                 //dmas = <&pdma0 4>, <&pdma0 5>;
547                 //#dma-cells = <2>;
548                 //pinctrl-names = "default";
549                 //pinctrl-0 = <&uart2_xfer>;
550                 status = "disabled";
551         };
552
553         uart_gps: serial@ff1b0000 {
554                 compatible = "rockchip,serial";
555                 reg = <0x0 0xff1b0000 0x0 0x100>;
556                 interrupts = <GIC_SPI 58 IRQ_TYPE_LEVEL_HIGH>;
557                 clock-frequency = <24000000>;
558                 clocks = <&clk_uart3>, <&clk_gates19 9>;
559                 clock-names = "sclk_uart", "pclk_uart";
560                 current-speed = <115200>;
561                 reg-shift = <2>;
562                 reg-io-width = <4>;
563                 //dmas = <&pdma1 7>, <&pdma1 8>;
564                 //#dma-cells = <2>;
565                 pinctrl-names = "default";
566                 pinctrl-0 = <&uart3_xfer &uart3_cts &uart3_rts>;
567                 status = "disabled";
568         };
569
570         uart_exp: serial@ff1c0000 {
571                 compatible = "rockchip,serial";
572                 reg = <0x0 0xff1c0000 0x0 0x100>;
573                 interrupts = <GIC_SPI 59 IRQ_TYPE_LEVEL_HIGH>;
574                 clock-frequency = <24000000>;
575                 clocks = <&clk_uart4>, <&clk_gates19 10>;
576                 clock-names = "sclk_uart", "pclk_uart";
577                 reg-shift = <2>;
578                 reg-io-width = <4>;
579                 //dmas = <&pdma1 9>, <&pdma1 10>;
580                 //#dma-cells = <2>;
581                 pinctrl-names = "default";
582                 pinctrl-0 = <&uart4_xfer &uart4_cts &uart4_rts>;
583                 status = "disabled";
584         };
585
586         fiq-debugger {
587                 compatible = "rockchip,fiq-debugger";
588                 rockchip,serial-id = <2>;
589                 rockchip,signal-irq = <186>;
590                 rockchip,wake-irq = <0>;
591                 rockchip,irq-mode-enable = <0>;  /* If enable uart uses irq instead of fiq */
592                 rockchip,baudrate = <115200>;  /* Only 115000 and 1500000 */
593                 status = "disabled";
594         };
595
596         mbox: mbox@ff6b0000 {
597                 compatible = "rockchip,rk3368-mailbox";
598                 reg = <0x0 0xff6b0000 0x0 0x1000>,
599                       <0x0 0xff8cf000 0x0 0x1000>; /* the end 4k of sram */
600                 interrupts = <GIC_SPI 146 IRQ_TYPE_LEVEL_HIGH>,
601                              <GIC_SPI 147 IRQ_TYPE_LEVEL_HIGH>,
602                              <GIC_SPI 148 IRQ_TYPE_LEVEL_HIGH>,
603                              <GIC_SPI 149 IRQ_TYPE_LEVEL_HIGH>;
604                 clocks = <&clk_gates12 1>;
605                 clock-names = "pclk_mailbox";
606                 #mbox-cells = <1>;
607         };
608
609         mbox_scpi: mbox-scpi {
610                 compatible = "rockchip,mbox-scpi";
611                 mboxes = <&mbox 0 &mbox 1 &mbox 2>;
612                 chan-nums = <3>;
613         };
614
615         ddr: ddr {
616                 compatible = "rockchip,rk3368-ddr";
617                 status = "okay";
618                 rockchip,ddrpctl = <&ddrpctl>;
619                 rockchip,grf = <&grf>;
620                 rockchip,msch = <&msch>;
621                 rockchip,ddr_timing = <&ddr_timing>;
622         };
623
624         rockchip_clocks_init: clocks-init{
625                 compatible = "rockchip,clocks-init";
626                 rockchip,clocks-init-parent =
627                         <&i2s_pll &clk_gpll>, <&spdif_8ch_pll &clk_gpll>,
628                         <&i2s_2ch_pll &clk_gpll>, <&usbphy_480m &usbotg_480m_out>,
629                         <&clk_uart_pll &clk_gpll>, <&aclk_gpu &clk_cpll>,
630                         <&clk_cs &clk_gpll>, <&clk_32k_mux &pvtm_clkout>;
631                 rockchip,clocks-init-rate =
632                         <&clk_gpll 576000000>,          <&clk_core_b 792000000>,
633                         <&clk_core_l 600000000>,        <&clk_cpll 400000000>,
634                         /*<&clk_npll 500000000>,*/      <&aclk_bus 300000000>,
635                         <&hclk_bus 150000000>,          <&pclk_bus 75000000>,
636                         <&clk_crypto 150000000>,        <&aclk_peri 300000000>,
637                         <&hclk_peri 150000000>,         <&pclk_peri 75000000>,
638                         <&pclk_alive_pre 100000000>,    <&pclk_pmu_pre 100000000>,
639                         <&clk_cs 300000000>,            <&clkin_trace 300000000>,
640                         <&aclk_cci 600000000>,          <&clk_mac 125000000>,
641                         <&aclk_vio0 400000000>,         <&hclk_vio 100000000>,
642                         <&aclk_rga_pre 400000000>,      <&clk_rga 400000000>,
643                         <&clk_isp 400000000>,           <&clk_edp 200000000>,
644                         <&clk_gpu_core 400000000>,      <&aclk_gpu_mem 400000000>,
645                         <&aclk_gpu_cfg 400000000>,      <&aclk_vepu 400000000>,
646                         <&aclk_vdpu 400000000>,         <&clk_hevc_core 300000000>,
647                         <&clk_hevc_cabac 300000000>;
648 /*
649                 rockchip,clocks-uboot-has-init =
650                         <&aclk_vio0>;
651 */
652         };
653
654         rockchip_clocks_enable: clocks-enable {
655                 compatible = "rockchip,clocks-enable";
656                 clocks =
657                         /*PLL*/
658                         <&clk_apllb>,
659                         <&clk_aplll>,
660                         <&clk_dpll>,
661                         <&clk_gpll>,
662                         <&clk_cpll>,
663
664                         /*PD_CORE*/
665                         <&clk_cs>,
666                         <&clkin_trace>,
667                         <&aclk_cci>,
668
669                         /*PD_BUS*/
670                         <&aclk_bus>,
671                         <&hclk_bus>,
672                         <&pclk_bus>,
673                         <&clk_gates12 12>,/*aclk_strc_sys*/
674                         <&clk_gates12 6>,/*aclk_intmem1*/
675                         <&clk_gates12 5>,/*aclk_intmem0*/
676                         <&clk_gates12 4>,/*aclk_intmem*/
677                         <&clk_gates13 9>,/*aclk_gic400*/
678                         <&clk_gates12 9>,/*hclk_rom*/
679
680                         /*PD_ALIVE*/
681                         <&clk_gates22 12>,/*pclk_timer0*/
682                         <&clk_gates22 9>,/*pclk_alive_niu*/
683                         <&clk_gates22 8>,/*pclk_grf*/
684
685                         /*PD_PMU*/
686                         <&clk_gates23 5>,/*pclk_pmugrf*/
687                         <&clk_gates23 3>,/*pclk_sgrf*/
688                         <&clk_gates23 2>,/*pclk_pmu_noc*/
689                         <&clk_gates23 1>,/*pclk_intmem1*/
690                         <&clk_gates23 0>,/*pclk_pmu*/
691
692                         /*PD_PERI*/
693                         <&clk_gates19 2>,/*aclk_peri_axi_matrix*/
694                         <&clk_gates20 8>,/*aclk_peri_niu*/
695                         <&clk_gates21 4>,/*aclk_peri_mmu*/
696                         <&clk_gates19 0>,/*hclk_peri_axi_matrix*/
697                         <&clk_gates20 7>,/*hclk_peri_ahb_arbi*/
698                         <&clk_gates19 1>,/*pclk_peri_axi_matrix*/
699
700                         <&clk_gates24 0>, /* g_clk_timer0 */
701                         <&clk_gates24 1>, /* g_clk_timer1 */
702
703                         <&fclk_mcu>,
704                         <&stclk_mcu>,
705                         <&clk_gates7 0>;/*clk_jtag*/
706         };
707
708         /* I2C_PMU */
709         i2c0: i2c@ff650000 {
710                 compatible = "rockchip,rk30-i2c";
711                 reg = <0x0 0xff650000 0x0 0x1000>;
712                 interrupts = <GIC_SPI 60 IRQ_TYPE_LEVEL_HIGH>;
713                 #address-cells = <1>;
714                 #size-cells = <0>;
715                 pinctrl-names = "default", "gpio", "sleep";
716                 pinctrl-0 = <&i2c0_xfer>;
717                 pinctrl-1 = <&i2c0_gpio>;
718                 pinctrl-2 = <&i2c0_sleep>;
719                 gpios = <&gpio0 GPIO_A6 GPIO_ACTIVE_LOW>, <&gpio0 GPIO_A7 GPIO_ACTIVE_LOW>;
720                 clocks = <&clk_gates12 2>;
721                 rockchip,check-idle = <1>;
722                 status = "disabled";
723         };
724
725         /* I2C_AUDIO */
726         i2c1: i2c@ff660000 {
727                 compatible = "rockchip,rk30-i2c";
728                 reg = <0x0 0xff660000 0x0 0x1000>;
729                 interrupts = <GIC_SPI 61 IRQ_TYPE_LEVEL_HIGH>;
730                 #address-cells = <1>;
731                 #size-cells = <0>;
732                 pinctrl-names = "default", "gpio", "sleep";
733                 pinctrl-0 = <&i2c1_xfer>;
734                 pinctrl-1 = <&i2c1_gpio>;
735                 pinctrl-2 = <&i2c1_sleep>;
736                 gpios = <&gpio2 GPIO_C5 GPIO_ACTIVE_LOW>, <&gpio2 GPIO_C6 GPIO_ACTIVE_LOW>;
737                 clocks = <&clk_gates12 3>;
738                 rockchip,check-idle = <1>;
739                 status = "disabled";
740         };
741
742         /* I2C_SENSOR */
743         i2c2: i2c@ff140000 {
744                 compatible = "rockchip,rk30-i2c";
745                 reg = <0x0 0xff140000 0x0 0x1000>;
746                 interrupts = <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>;
747                 #address-cells = <1>;
748                 #size-cells = <0>;
749                 pinctrl-names = "default", "gpio", "sleep";
750                 pinctrl-0 = <&i2c2_xfer>;
751                 pinctrl-1 = <&i2c2_gpio>;
752                 pinctrl-2 = <&i2c2_sleep>;
753                 gpios = <&gpio3 GPIO_D7 GPIO_ACTIVE_LOW>, <&gpio0 GPIO_B1 GPIO_ACTIVE_LOW>;
754                 clocks = <&clk_gates19 11>;
755                 rockchip,check-idle = <1>;
756                 status = "disabled";
757         };
758
759         /* I2C_CAM */
760         i2c3: i2c@ff150000 {
761                 compatible = "rockchip,rk30-i2c";
762                 reg = <0x0 0xff150000 0x0 0x1000>;
763                 interrupts = <GIC_SPI 63 IRQ_TYPE_LEVEL_HIGH>;
764                 #address-cells = <1>;
765                 #size-cells = <0>;
766                 pinctrl-names = "default", "gpio", "sleep";
767                 pinctrl-0 = <&i2c3_xfer>;
768                 pinctrl-1 = <&i2c3_gpio>;
769                 pinctrl-2 = <&i2c3_sleep>;
770                 gpios = <&gpio1 GPIO_C1 GPIO_ACTIVE_LOW>, <&gpio1 GPIO_C0 GPIO_ACTIVE_LOW>;
771                 clocks = <&clk_gates19 12>;
772                 rockchip,check-idle = <1>;
773                 status = "disabled";
774         };
775
776         /* I2C_TP */
777         i2c4: i2c@ff160000 {
778                 compatible = "rockchip,rk30-i2c";
779                 reg = <0x0 0xff160000 0x0 0x1000>;
780                 interrupts = <GIC_SPI 64 IRQ_TYPE_LEVEL_HIGH>;
781                 #address-cells = <1>;
782                 #size-cells = <0>;
783                 pinctrl-names = "default", "gpio", "sleep";
784                 pinctrl-0 = <&i2c4_xfer>;
785                 pinctrl-1 = <&i2c4_gpio>;
786                 pinctrl-2 = <&i2c4_sleep>;
787                 gpios = <&gpio3 GPIO_D0 GPIO_ACTIVE_LOW>, <&gpio3 GPIO_D1 GPIO_ACTIVE_LOW>;
788                 clocks = <&clk_gates19 13>;
789                 rockchip,check-idle = <1>;
790                 status = "disabled";
791         };
792
793         /* I2C_HDMI */
794         i2c5: i2c@ff170000 {
795                 compatible = "rockchip,rk30-i2c";
796                 reg = <0x0 0xff170000 0x0 0x1000>;
797                 interrupts = <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>;
798                 #address-cells = <1>;
799                 #size-cells = <0>;
800                 pinctrl-names = "default", "gpio", "sleep";
801                 pinctrl-0 = <&i2c5_xfer>;
802                 pinctrl-1 = <&i2c5_gpio>;
803                 pinctrl-2 = <&i2c5_sleep>;
804                 gpios = <&gpio3 GPIO_D2 GPIO_ACTIVE_LOW>, <&gpio3 GPIO_D3 GPIO_ACTIVE_LOW>;
805                 clocks = <&clk_gates19 14>;
806                 rockchip,check-idle = <1>;
807                 status = "disabled";
808         };
809
810         fb: fb {
811                 compatible = "rockchip,rk-fb";
812                 rockchip,disp-mode = <NO_DUAL>;
813         };
814
815
816         rk_screen: rk_screen {
817                 compatible = "rockchip,screen";
818         };
819
820         dsihost0: mipi@ff960000{
821                 compatible = "rockchip,rk3368-dsi";
822                 rockchip,prop = <0>;
823                 reg = <0x0 0xff960000 0x0 0x4000>, <0x0 0xff968000 0x0 0x4000>;
824                 reg-names = "mipi_dsi_host" ,"mipi_dsi_phy";
825                 interrupts = <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>;
826                 clocks = <&clk_gates4 14>, <&clk_gates22 10>, <&clk_gates17 3>, <&pd_mipidsi>;
827                 clock-names = "clk_mipi_24m", "pclk_mipi_dsi", "pclk_mipi_dsi_host", "pd_mipi_dsi";
828                 status = "disabled";
829         };
830
831         lvds: lvds@ff968000 {
832                 compatible = "rockchip,rk3368-lvds";
833                 rockchip,grf = <&grf>;
834                 reg = <0x0 0xff968000 0x0 0x4000>, <0x0 0xff9600a0 0x0 0x20>;
835                 reg-names = "mipi_lvds_phy", "mipi_lvds_ctl";
836                 clocks = <&clk_gates22 10>, <&clk_gates17 3>, <&pd_lvds>;
837                 clock-names = "pclk_lvds", "pclk_lvds_ctl", "pd_lvds";
838                 status = "disabled";
839         };
840
841         edp: edp@ff970000 {
842                 compatible = "rockchip,rk32-edp";
843                 reg = <0x0 0xff970000 0x0 0x4000>;
844                 rockchip,grf = <&grf>;
845                 interrupts = <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>;
846                 clocks = <&clk_edp>, <&clk_edp_24m>, <&clk_gates17 9>;
847                 clock-names = "clk_edp", "clk_edp_24m", "pclk_edp";
848                 resets = <&reset RK3368_SRST_EDP_24M>, <&reset RK3368_SRST_EDP_P>;
849                 reset-names = "edp_24m", "edp_apb";
850         };
851
852         hdmi: hdmi@ff980000 {
853                 compatible = "rockchip,rk3368-hdmi";
854                 reg = <0x0 0xff980000 0x0 0x20000>;
855                 rockchip,grf = <&grf>;
856                 interrupts = <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>;
857                 pinctrl-names = "default", "gpio";
858                 pinctrl-0 = <&hdmii2c_xfer &hdmi_cec>;
859                 pinctrl-1 = <&i2c5_gpio>;
860                 clocks = <&clk_gates17 6>, <&clk_gates4 13>, <&clk_gates4 12>;
861                 clock-names = "pclk_hdmi", "hdcp_clk_hdmi", "cec_clk_hdmi";
862                 status = "disabled";
863         };
864
865         hdmi_hdcp2: hdmi_hdcp2@ff978000 {
866                 compatible = "rockchip,rk3368-hdmi-hdcp2";
867                 reg = <0x0 0xff978000 0x0 0x2000>;
868                 interrupts = <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>;
869                 clocks = <&clk_gates17 10>, <&clk_gates17 12>, <&clk_gates17 11>, <&clk_hdcp>;
870                 clock-names ="aclk_hdcp2", "hclk_hdcp2_mmu", "pclk_hdcp2", "hdcp2_clk_hdmi";
871                 status = "disabled";
872         };
873
874         lcdc: lcdc@ff930000 {
875                  compatible = "rockchip,rk3368-lcdc";
876                  rockchip,grf = <&grf>;
877                  rockchip,pmugrf = <&pmugrf>;
878                  rockchip,cru = <&cru>;
879                  rockchip,prop = <PRMRY>;
880                  rockchip,pwr18 = <0>;
881                  rockchip,iommu-enabled = <1>;
882                  reg = <0x0 0xff930000 0x0 0x10000>;
883                  interrupts = <GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>;
884                 /*pinctrl-names = "default", "gpio";
885                  *pinctrl-0 = <&lcdc_lcdc>;
886                  *pinctrl-1 = <&lcdc_gpio>;
887                  */
888                  status = "disabled";
889                  clocks = <&clk_gates16 5>, <&dclk_vop0>, <&clk_gates16 6>, <&clk_npll>, <&pd_vop>;
890                  clock-names = "aclk_lcdc", "dclk_lcdc", "hclk_lcdc", "sclk_pll", "pd_lcdc";
891         };
892
893         adc: adc@ff100000 {
894                 compatible = "rockchip,saradc";
895                 reg = <0x0 0xff100000 0x0 0x100>;
896                 interrupts = <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>;
897                 #io-channel-cells = <1>;
898                 io-channel-ranges;
899                 rockchip,adc-vref = <1800>;
900                 clock-frequency = <1000000>;
901                 clocks = <&clk_saradc>, <&clk_gates19 15>;
902                 clock-names = "saradc", "pclk_saradc";
903                 status = "disabled";
904         };
905
906         rga@ff920000 {
907                 compatible = "rockchip,rga2";
908                 dev_mode = <1>;
909                 reg = <0x0 0xff920000 0x0 0x1000>;
910                 interrupts = <GIC_SPI 18 IRQ_TYPE_LEVEL_HIGH>;
911                 clocks = <&clk_gates16 1>, <&clk_gates16 0>, <&clk_rga>;
912                 clock-names = "hclk_rga", "aclk_rga", "clk_rga";
913         };
914
915         i2s0: i2s0@ff898000 {
916                 compatible = "rockchip-i2s";
917                 reg = <0x0 0xff898000 0x0 0x1000>;
918                 i2s-id = <0>;
919                 clocks = <&clk_i2s>, <&i2s_out>, <&clk_gates12 7>;
920                 clock-names = "i2s_clk", "i2s_mclk", "i2s_hclk";
921                 interrupts = <GIC_SPI 53 IRQ_TYPE_LEVEL_HIGH>;
922                 dmas = <&pdma0 0>, <&pdma0 1>;
923                 #dma-cells = <2>;
924                 dma-names = "tx", "rx";
925                 pinctrl-names = "default", "sleep";
926                 pinctrl-0 = <&i2s_mclk &i2s_sclk &i2s_lrckrx &i2s_lrcktx &i2s_sdi &i2s_sdo0 &i2s_sdo1 &i2s_sdo2 &i2s_sdo3>;
927                 pinctrl-1 = <&i2s_gpio>;
928         };
929
930         i2s1: i2s1@ff890000 {
931                 compatible = "rockchip-i2s";
932                 reg = <0x0 0xff890000 0x0 0x1000>;
933                 i2s-id = <1>;
934                 clocks = <&clk_i2s_2ch>, <&clk_gates12 8>;
935                 clock-names = "i2s_clk", "i2s_hclk";
936                 interrupts = <GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>;
937                 dmas = <&pdma0 6>, <&pdma0 7>;
938                 #dma-cells = <2>;
939                 dma-names = "tx", "rx";
940         };
941
942         spdif: spdif@ff880000 {
943                 compatible = "rockchip-spdif";
944                 reg = <0x0 0xff880000 0x0 0x1000>;
945                 clocks = <&clk_spidf_8ch>, <&clk_gates12 10>;
946                 clock-names = "spdif_mclk", "spdif_hclk";
947                 interrupts = <GIC_SPI 54 IRQ_TYPE_LEVEL_HIGH>;
948                 dmas = <&pdma0 3>;
949                 #dma-cells = <1>;
950                 dma-names = "tx";
951                 pinctrl-names = "default";
952                 pinctrl-0 = <&spdif_tx>;
953         };
954
955         pwm0: pwm@ff680000 {
956                 compatible = "rockchip,rk-pwm";
957                 reg = <0x0 0xff680000 0x0 0x10>;
958                 #pwm-cells = <2>;
959                 pinctrl-names = "default";
960                 pinctrl-0 = <&pwm0_pin>;
961                 clocks = <&clk_gates13 6>;
962                 clock-names = "pclk_pwm";
963                 status = "disabled";
964         };
965
966         pwm1: pwm@ff680010 {
967                 compatible = "rockchip,rk-pwm";
968                 reg = <0x0 0xff680010 0x0 0x10>;
969                 #pwm-cells = <2>;
970                 pinctrl-names = "default";
971                 pinctrl-0 = <&pwm1_pin>;
972                 clocks = <&clk_gates13 6>;
973                 clock-names = "pclk_pwm";
974                 status = "disabled";
975         };
976
977         pwm2: pwm@ff680020 {
978                 compatible = "rockchip,rk-pwm";
979                 reg = <0x0 0xff680020 0x0 0x10>;
980                 #pwm-cells = <2>;
981                 //pinctrl-names = "default";
982                 //pinctrl-0 = <&pwm1_pin>;
983                 clocks = <&clk_gates13 6>;
984                 clock-names = "pclk_pwm";
985                 status = "disabled";
986         };
987
988         pwm3: pwm@ff680030 {
989                 compatible = "rockchip,rk-pwm";
990                 reg = <0x0 0xff680030 0x0 0x10>;
991                 #pwm-cells = <2>;
992                 pinctrl-names = "default";
993                 pinctrl-0 = <&pwm3_pin>;
994                 clocks = <&clk_gates13 6>;
995                 clock-names = "pclk_pwm";
996                 status = "disabled";
997         };
998
999         remotectl: pwm@ff680030 {
1000                 compatible = "rockchip,remotectl-pwm";
1001                 reg = <0x0 0xff680030 0x0 0x50>;
1002                 #pwm-cells = <2>;
1003                 pinctrl-names = "default";
1004                 pinctrl-0 = <&pwm3_pin>;
1005                 clocks = <&clk_gates13 6>;
1006                 clock-names = "pclk_pwm";
1007                 dmas = <&pdma0 2>;
1008                 #dma-cells = <2>;
1009                 dma-names = "rx";
1010                 remote_pwm_id = <3>;
1011                 interrupts = <GIC_SPI 78 IRQ_TYPE_LEVEL_HIGH>;
1012                 status = "disabled";
1013         };
1014
1015         voppwm: pwm@ff9301a0 {
1016                 compatible = "rockchip,vop-pwm";
1017                 reg = <0x0 0xff9301a0 0x0 0x10>;
1018                 #pwm-cells = <2>;
1019                 pinctrl-names = "default";
1020                 pinctrl-0 = <&vop_pwm_pin>;
1021                 clocks = <&clk_gates4 2>, <&clk_gates16 5>, <&clk_gates16 6>;
1022                 clock-names = "pclk_pwm", "aclk_lcdc", "hclk_lcdc";
1023                 status = "disabled";
1024         };
1025
1026         pvtm {
1027                 compatible = "rockchip,rk3368-pvtm";
1028                 rockchip,grf = <&grf>;
1029                 rockchip,pmugrf = <&pmugrf>;
1030                 rockchip,pvtm-clk-out = <1>;
1031         };
1032
1033         cpufreq {
1034                 compatible = "rockchip,rk3368-cpufreq";
1035                 rockchip,grf = <&grf>;
1036         };
1037
1038         dvfs {
1039
1040                 vd_arm: vd_arm {
1041                         regulator_name = "vdd_arm";
1042                         suspend_volt = <1000>; //mV
1043                         pd_core {
1044                                 clk_core_b_dvfs_table: clk_core_b {
1045                                         operating-points = <
1046                                                 /* KHz    uV */
1047                                                 312000 1200000
1048                                                 504000 1200000
1049                                                 816000 1200000
1050                                                 1008000 1200000
1051                                                 >;
1052                                         status = "okay";
1053                                         cluster = <0>;
1054                                         temp-limit-enable = <1>;
1055                                         target-temp = <80>;
1056                                         min_temp_limit = <216000>;
1057                                         normal-temp-limit = <
1058                                         /*delta-temp    delta-freq*/
1059                                                 3       96000
1060                                                 6       144000
1061                                                 9       192000
1062                                                 15      384000
1063                                                 >;
1064                                         performance-temp-limit = <
1065                                                 /*temp    freq*/
1066                                                 100     816000
1067                                                 >;
1068                                         lkg_adjust_volt_en = <1>;
1069                                         channel = <0>;
1070                                         def_table_lkg = <25>;
1071                                         min_adjust_freq = <216000>;
1072                                         lkg_adjust_volt_table = <
1073                                                 /*lkg(mA)  volt(uV)*/
1074                                                 0         25000
1075                                                 >;
1076                                         pvtm_min_temp = <25>;
1077                                 };
1078                                 clk_core_l_dvfs_table: clk_core_l {
1079                                         operating-points = <
1080                                                 /* KHz    uV */
1081                                                 312000 1200000
1082                                                 504000 1200000
1083                                                 816000 1200000
1084                                                 1008000 1200000
1085                                                 >;
1086                                         status = "okay";
1087                                         cluster = <1>;
1088                                         temp-limit-enable = <1>;
1089                                         target-temp = <80>;
1090                                         min_temp_limit = <216000>;
1091                                         normal-temp-limit = <
1092                                         /*delta-temp    delta-freq*/
1093                                                 3       96000
1094                                                 6       144000
1095                                                 9       192000
1096                                                 15      384000
1097                                                 >;
1098                                         performance-temp-limit = <
1099                                                 /*temp    freq*/
1100                                                 100     816000
1101                                                 >;
1102                                         lkg_adjust_volt_en = <1>;
1103                                         channel = <0>;
1104                                         def_table_lkg = <25>;
1105                                         min_adjust_freq = <216000>;
1106                                         lkg_adjust_volt_table = <
1107                                                 /*lkg(mA)  volt(uV)*/
1108                                                 0         25000
1109                                                 >;
1110                                         pvtm_min_temp = <25>;
1111                                 };
1112                         };
1113                 };
1114
1115                 vd_logic: vd_logic {
1116                         regulator_name = "vdd_logic";
1117                         suspend_volt = <1000>; //mV
1118                         pd_ddr {
1119                                 clk_ddr_dvfs_table: clk_ddr {
1120                                         operating-points = <
1121                                                 /* KHz    uV */
1122                                                 200000 1200000
1123                                                 300000 1200000
1124                                                 400000 1200000
1125                                                 >;
1126                                         bd-freq-table = <
1127                                                 /* bandwidth   freq */
1128                                                 2700           792000
1129                                                 2600           600000
1130                                                 2280           456000
1131                                                 1560           396000
1132                                                 1020           324000
1133                                                 720            240000
1134                                                 >;
1135                                         channel = <2>;
1136                                         status = "disabled";
1137                                 };
1138                         };
1139
1140                         pd_gpu {
1141                                 clk_gpu_dvfs_table: clk_gpu {
1142                                         operating-points = <
1143                                                 /* KHz    uV */
1144                                                 200000 1200000
1145                                                 300000 1200000
1146                                                 400000 1200000
1147                                                 >;
1148                                         channel = <1>;
1149                                         status = "okay";
1150                                         regu-mode-table = <
1151                                                 /*freq     mode*/
1152                                                 200000     4
1153                                                 0          3
1154                                         >;
1155                                         regu-mode-en = <0>;
1156                                 };
1157                         };
1158                 };
1159         };
1160
1161         ion {
1162                 compatible = "rockchip,ion";
1163                 #address-cells = <1>;
1164                 #size-cells = <0>;
1165
1166                 ion_cma: rockchip,ion-heap@4 { /* CMA HEAP */
1167                         compatible = "rockchip,ion-heap";
1168                         rockchip,ion_heap = <4>;
1169                         reg = <0x00000000 0x00000000>; /* 0MB */
1170                 };
1171                 rockchip,ion-heap@0 { /* VMALLOC HEAP */
1172                         compatible = "rockchip,ion-heap";
1173                         rockchip,ion_heap = <0>;
1174                 };
1175         };
1176
1177         vpu: vpu_service {
1178                 compatible = "rockchip,vpu_sub";
1179                 iommu_enabled = <1>;
1180                 interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>,
1181                              <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>;
1182                 interrupt-names = "irq_enc", "irq_dec";
1183                 dev_mode = <0>;
1184                 name = "vpu_service";
1185         };
1186
1187         hevc: hevc_service {
1188                 compatible = "rockchip,hevc_sub";
1189                 iommu_enabled = <1>;
1190                 interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>;
1191                 interrupt-names = "irq_dec";
1192                 dev_mode = <1>;
1193                 name = "hevc_service";
1194         };
1195
1196         vpu_combo: vpu_combo@ff9a0000 {
1197                 compatible = "rockchip,vpu_combo";
1198                 reg = <0x0 0xff9a0000 0x0 0x800>;
1199                 rockchip,grf = <&grf>;
1200                 subcnt = <2>;
1201                 rockchip,sub = <&vpu>, <&hevc>;
1202                 clocks = <&aclk_vdpu>, <&hclk_vdpu>, <&clk_hevc_core>, <&clk_hevc_cabac>;
1203                 clock-names = "aclk_vcodec", "hclk_vcodec", "clk_core", "clk_cabac";
1204                 resets = <&reset RK3368_SRST_VIDEO_H>, <&reset RK3368_SRST_VIDEO_A>,
1205                         <&reset RK3368_SRST_VIDEO>;
1206                 reset-names = "video_h", "video_a", "video";
1207                 mode_bit = <12>;
1208                 mode_ctrl = <0x418>;
1209                 name = "vpu_combo";
1210                 status = "okay";
1211         };
1212
1213         iep: iep@ff900000 {
1214                 compatible = "rockchip,iep";
1215                 iommu_enabled = <1>;
1216                 reg = <0x0 0xff900000 0x0 0x800>;
1217                 interrupts = <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>;
1218                 clocks = <&clk_gates16 2>, <&clk_gates16 3>;
1219                 clock-names = "aclk_iep", "hclk_iep";
1220                 status = "okay";
1221         };
1222
1223         gmac: eth@ff290000 {
1224                 compatible = "rockchip,rk3368-gmac";
1225                 reg = <0x0 0xff290000 0x0 0x10000>;
1226                 rockchip,grf = <&grf>;
1227                 interrupts = <GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH>;  /*irq=59*/
1228                 interrupt-names = "macirq";
1229
1230                 clocks = <&clk_mac>, <&clk_gates7 4>,
1231                          <&clk_gates7 5>, <&clk_gates7 6>,
1232                          <&clk_gates7 7>, <&clk_gates20 13>,
1233                          <&clk_gates20 14>;
1234                 clock-names = "clk_mac", "mac_clk_rx",
1235                               "mac_clk_tx", "clk_mac_ref",
1236                               "clk_mac_refout", "aclk_mac",
1237                               "pclk_mac";
1238
1239                 phy-mode = "rgmii";
1240                 pinctrl-names = "default";
1241                 pinctrl-0 = <&rgmii_pins>;
1242                 status = "disabled";
1243         };
1244
1245         gpu {
1246                 compatible = "arm,rogue-G6110", "arm,rk3368-gpu";
1247                 reg = <0x0 0xffa30000 0x0 0x10000>;
1248                 interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>;
1249                 interrupt-names = "GPU";
1250         };
1251
1252         iep_mmu {
1253                 dbgname = "iep";
1254                 compatible = "rockchip,iep_mmu";
1255                 reg = <0x0 0xff900800 0x0 0x100>;
1256                 interrupts = <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>;
1257                 interrupt-names = "iep_mmu";
1258         };
1259
1260         vip_mmu {
1261                 dbgname = "vip";
1262                 compatible = "rockchip,vip_mmu";
1263                 reg = <0x0 0xff950800 0x0 0x100>;
1264                 interrupts = <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>;
1265                 interrupt-names = "vip_mmu";
1266         };
1267
1268         vop_mmu {
1269                 dbgname = "vop";
1270                 compatible = "rockchip,vopb_mmu";
1271                 reg = <0x0 0xff930300 0x0 0x100>;
1272                 interrupts = <GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>;
1273                 interrupt-names = "vop_mmu";
1274         };
1275
1276         isp_mmu {
1277                 dbgname = "isp_mmu";
1278                 compatible = "rockchip,isp_mmu";
1279                 reg = <0x0 0xff914000 0x0 0x100>,
1280                 <0x0 0xff915000 0x0 0x100>;
1281                 interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>;
1282                 interrupt-names = "isp_mmu";
1283         };
1284
1285         hdcp_mmu {
1286                 dbgname = "hdcp_mmu";
1287                 compatible = "rockchip,hdcp_mmu";
1288                 reg = <0x0 0xff940000 0x0 0x100>;
1289                 interrupts = <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>;
1290                 interrupt-names = "hdcp_mmu";
1291         };
1292
1293         hevc_mmu {
1294                 dbgname = "hevc";
1295                 compatible = "rockchip,hevc_mmu";
1296                 reg = <0x0 0xff9a0440 0x0 0x40>,                      /*need to fix*/
1297                           <0x0 0xff9a0480 0x0 0x40>;
1298                 interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>;        /*need to fix*/
1299                 interrupt-names = "hevc_mmu";
1300         };
1301
1302         vpu_mmu {
1303                 dbgname = "vpu";
1304                 compatible = "rockchip,vpu_mmu";
1305                 reg = <0x0 0xff9a0800 0x0 0x100>;                    /*need to fix*/
1306                 interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>,        /*need to fix*/
1307                              <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>;
1308                 interrupt-names = "vepu_mmu", "vdpu_mmu";
1309         };
1310
1311         rockchip_suspend: rockchip_suspend {
1312                 rockchip,ctrbits = <
1313                         (0
1314                         | RKPM_SLP_ARMOFF
1315                         | RKPM_SLP_PMU_PLLS_PWRDN
1316                         /*| RKPM_SLP_PMU_PMUALIVE_32K
1317                         | RKPM_SLP_SFT_PLLS_DEEP
1318                         | RKPM_SLP_PMU_DIS_OSC */
1319                         | RKPM_SLP_SFT_PD_NBSCUS
1320                         )
1321                         >;
1322         };
1323
1324         isp: isp@ff910000{
1325                 compatible = "rockchip,isp";
1326                 reg = <0x0 0xff910000 0x0 0x10000>;
1327                 interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>;
1328                 clocks = <&clk_gates16 0>, <&clk_gates16 14>, <&clk_isp>, <&clk_isp>, <&pclk_isp>, <&clk_vip>, <&clk_vip_pll>, <&clk_gates17 4>, <&clk_gates22 11>, <&pd_isp>, <&clk_gates16 9>;
1329                 clock-names = "aclk_isp", "hclk_isp", "clk_isp", "clk_isp_jpe", "pclkin_isp", "clk_cif_out", "clk_cif_pll", "hclk_mipiphy1", "pclk_dphyrx", "pd_isp", "clk_vio0_noc";
1330                 pinctrl-names = "default", "isp_dvp8bit2", "isp_dvp10bit", "isp_dvp12bit", "isp_dvp8bit0", "isp_dvp8bit4", "isp_mipi_fl", "isp_mipi_fl_prefl","isp_flash_as_gpio","isp_flash_as_trigger_out";
1331                 pinctrl-0 = <&cif_clkout>;
1332                 pinctrl-1 = <&cif_clkout &isp_dvp_d2d9>;
1333                 pinctrl-2 = <&cif_clkout &isp_dvp_d2d9 &isp_dvp_d0d1>;
1334                 pinctrl-3 = <&cif_clkout &isp_dvp_d2d9 &isp_dvp_d0d1 &isp_dvp_d10d11>;
1335                 pinctrl-4 = <&cif_clkout &isp_dvp_d0d7>;
1336                 pinctrl-5 = <&cif_clkout &isp_dvp_d4d11>;
1337                 pinctrl-6 = <&cif_clkout>;
1338                 pinctrl-7 = <&cif_clkout &isp_prelight>;
1339                 pinctrl-8 = <&isp_flash_trigger_as_gpio>;
1340                 pinctrl-9 = <&isp_flash_trigger>;
1341                 rockchip,isp,mipiphy = <2>;
1342                 rockchip,isp,cifphy = <1>;
1343                 rockchip,isp,mipiphy1,reg = <0xff964000 0x4000>;
1344                 rockchip,isp,csiphy,reg = <0xff96C000 0x4000>;
1345                 rockchip,grf = <&grf>;
1346                 rockchip,cru = <&cru>;
1347                 rockchip,gpios = <&gpio3 GPIO_C4 GPIO_ACTIVE_HIGH>;
1348                 rockchip,isp,iommu_enable = <1>;
1349                 status = "okay";
1350         };
1351
1352         cif: cif@ff950000 {
1353                 compatible = "rockchip,cif";
1354                 reg = <0x0 0xff950000 0x0 0x10000>;
1355                 interrupts = <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>;
1356                 //clocks = <&pd_isp>,<&clk_gates15 14>,<&clk_gates15 15>,<&pclkin_vip>,<&clk_gates16 0>,<&clk_cif_out>;
1357                 clocks = <&clk_gates16 11>,<&clk_gates16 12>,<&pclkin_vip>,<&clk_vip>;
1358                 clock-names = "aclk_cif0","hclk_cif0","cif0_in","cif0_out";
1359                 pinctrl-names = "cif_pin_all";
1360                 pinctrl-0 = <&cif_clkout &isp_dvp_d2d9 &isp_dvp_d10d11>;
1361                 rockchip,grf = <&grf>;
1362                 rockchip,cru = <&cru>;
1363                 status = "okay";
1364         };
1365
1366 /*
1367         thermal-zones {
1368                 #include "rk3368-thermal.dtsi"
1369         };
1370 */
1371
1372         tsadc: tsadc@ff280000 {
1373                 compatible = "rockchip,rk3368-tsadc";
1374                 reg = <0x0 0xff280000 0x0 0x100>;
1375                 interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>;
1376                 clocks = <&clk_tsadc>, <&clk_gates20 0>;
1377                 rockchip,grf = <&grf>;
1378                 rockchip,cru = <&cru>;
1379                 rockchip,pmu = <&pmu>;
1380                 clock-names = "tsadc", "apb_pclk";
1381                 clock-frequency = <32000>;
1382                 resets = <&reset RK3368_SRST_TSADC_P>;
1383                 reset-names = "tsadc-apb";
1384                 //pinctrl-names = "default";
1385                 //pinctrl-0 = <&tsadc_int>;
1386                 #thermal-sensor-cells = <1>;
1387                 hw-shut-temp = <120000>;
1388                 status = "disabled";
1389         };
1390
1391         tsp: tsp@FF8B0000 {
1392                 compatible = "rockchip,rk3368-tsp";
1393                 reg = <0x0 0xFF8B0000 0x0 0x10000>;
1394                 clocks = <&clk_tsp>, <&clk_gates13 10>, <&clk_gates13 7>;
1395                 clock-names = "clk_tsp", "hclk_tsp", "clk_hsadc0_tsp";
1396                 interrupts = <GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH>;
1397                 interrupt-names = "irq_tsp";
1398                 // pinctrl-names = "default";
1399                 // pinctrl-0 = <&isp_hsadc>;
1400                 status = "okay";
1401         };
1402
1403         crypto: crypto@FF8A0000{
1404                 compatible = "rockchip,rk3368-crypto";
1405                 reg = <0x0 0xFF8A0000 0x0 0x10000>;
1406                 interrupts = <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>;
1407                 interrupt-names = "irq_crypto";
1408                         clocks = <&clk_crypto>, <&clk_gates13 4>, <&clk_gates13 3>;
1409                 clock-names = "clk_crypto", "sclk_crypto", "mclk_crypto";
1410                 status = "okay";
1411         };
1412
1413         dwc_control_usb: dwc-control-usb {
1414                 compatible = "rockchip,rk3368-dwc-control-usb";
1415                 rockchip,grf = <&grf>;
1416                 interrupts = <GIC_SPI 93 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 94 IRQ_TYPE_LEVEL_HIGH>,
1417                              <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>;
1418                 interrupt-names = "otg_id", "otg_bvalid",
1419                                   "otg_linestate", "host0_linestate";
1420                 clocks = <&clk_gates20 6>, <&usbphy_480m>;
1421                 clock-names = "hclk_usb_peri", "usbphy_480m";
1422                 //resets = <&reset RK3128_RST_USBPOR>;
1423                 //reset-names = "usbphy_por";
1424                 usb_bc{
1425                         compatible = "inno,phy";
1426                         regbase = &dwc_control_usb;
1427                         rk_usb,bvalid     = <0x4bc 23 1>;
1428                         rk_usb,iddig      = <0x4bc 26 1>;
1429                         rk_usb,vdmsrcen   = <0x718 12 1>;
1430                         rk_usb,vdpsrcen   = <0x718 11 1>;
1431                         rk_usb,rdmpden    = <0x718 10 1>;
1432                         rk_usb,idpsrcen   = <0x718  9 1>;
1433                         rk_usb,idmsinken  = <0x718  8 1>;
1434                         rk_usb,idpsinken  = <0x718  7 1>;
1435                         rk_usb,dpattach   = <0x4b8 31 1>;
1436                         rk_usb,cpdet      = <0x4b8 30 1>;
1437                         rk_usb,dcpattach  = <0x4b8 29 1>;
1438                 };
1439         };
1440
1441         usbphy: phy {
1442                 compatible = "rockchip,rk3368-usb-phy";
1443                 rockchip,grf = <&grf>;
1444                 #address-cells = <1>;
1445                 #size-cells = <0>;
1446
1447                 usbphy0: usb-phy0 {
1448                         #phy-cells = <0>;
1449                         reg = <0x700>;
1450                 };
1451
1452                 usbphy1: usb-phy1 {
1453                         #phy-cells = <0>;
1454                         reg = <0x728>;
1455                 };
1456         };
1457
1458         usb0: usb@ff580000 {
1459                 compatible = "rockchip,rk3368_usb20_otg";
1460                 reg = <0x0 0xff580000 0x0 0x40000>;
1461                 interrupts = <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>;
1462                 clocks = <&clk_gates8 1>, <&clk_gates20 1>;
1463                 clock-names = "clk_usbphy0", "hclk_otg";
1464                 resets = <&reset RK3368_SRST_USBOTG0_H>, <&reset RK3368_SRST_USBOTGPHY0>,
1465                                 <&reset RK3368_SRST_USBOTGC0>;
1466                 reset-names = "otg_ahb", "otg_phy", "otg_controller";
1467                 /*0 - Normal, 1 - Force Host, 2 - Force Device*/
1468                 rockchip,usb-mode = <0>;
1469         };
1470
1471         usb_ehci: usb@ff500000 {
1472                 compatible = "generic-ehci";
1473                 reg = <0x0 0xff500000 0x0 0x20000>;
1474                 interrupts = <GIC_SPI 24 IRQ_TYPE_LEVEL_HIGH>;
1475                 clocks = <&clk_gates8 1>, <&clk_gates20 3>;
1476                 clock-names = "clk_usbphy0", "hclk_ehci";
1477                 phys = <&usbphy1>;
1478                 phy-names = "usb";
1479                 //resets = <&reset RK3288_SOFT_RST_USBHOST0_H>, <&reset RK3288_SOFT_RST_USBHOST0PHY>,
1480                 //              <&reset RK3288_SOFT_RST_USBHOST0C>, <&reset RK3288_SOFT_RST_USB_HOST0>;
1481                 //reset-names = "ehci_ahb", "ehci_phy", "ehci_controller", "ehci";
1482         };
1483
1484         usb_ohci: usb@ff520000 {
1485                 compatible = "generic-ohci";
1486                 reg = <0x0 0xff520000 0x0 0x20000>;
1487                 interrupts = <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>;
1488                 clocks = <&clk_gates8 1>, <&clk_gates20 3>;
1489                 clock-names =  "clk_usbphy0", "hclk_ohci";
1490         };
1491
1492         usb_ehci1: usb@ff5c0000 {
1493                 compatible = "rockchip,rk3288_rk_ehci1_host";
1494                 reg = <0x0 0xff5c0000 0x0 0x40000>;
1495                 interrupts = <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>;
1496 /*
1497                 clocks = <&ehci1phy_480m>, <&clk_gates7 8>,
1498                          <&ehci1phy_12m>, <&usbphy_480m>,
1499                          <&otgphy1_480m>, <&otgphy2_480m>;
1500                 clock-names = "ehci1phy_480m", "hclk_ehci1",
1501                               "ehci1phy_12m", "usbphy_480m",
1502                               "ehci1_usbphy1", "ehci1_usbphy2";
1503                 resets = <&reset RK3368_SRST_EHCI1>, <&reset RK3368_SRST_EHCI1_AUX>,
1504                                 <&reset RK3368_SRST_EHCI1PHY>;
1505                 reset-names = "ehci1_ahb", "ehci1_aux", "ehci1_phy";
1506 */
1507                 status = "disabled";
1508         };
1509
1510         pinctrl: pinctrl {
1511                 compatible = "rockchip,rk3368-pinctrl";
1512                 rockchip,grf = <&grf>;
1513                 rockchip,pmugrf = <&pmugrf>;
1514                 #address-cells = <2>;
1515                 #size-cells = <2>;
1516                 ranges;
1517
1518                 gpio0: gpio0@ff750000 {
1519                         compatible = "rockchip,gpio-bank";
1520                         reg =   <0x0 0xff750000 0x0 0x100>;
1521                         interrupts = <GIC_SPI 81 IRQ_TYPE_LEVEL_HIGH>;
1522                         clocks = <&clk_gates23 4>;
1523
1524                         gpio-controller;
1525                         #gpio-cells = <2>;
1526
1527                         interrupt-controller;
1528                         #interrupt-cells = <2>;
1529                 };
1530
1531                 gpio1: gpio1@ff780000 {
1532                         compatible = "rockchip,gpio-bank";
1533                         reg = <0x0 0xff780000 0x0 0x100>;
1534                         interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_HIGH>;
1535                         clocks = <&clk_gates22 1>;
1536
1537                         gpio-controller;
1538                         #gpio-cells = <2>;
1539
1540                         interrupt-controller;
1541                         #interrupt-cells = <2>;
1542                 };
1543
1544                 gpio2: gpio2@ff790000 {
1545                         compatible = "rockchip,gpio-bank";
1546                         reg = <0x0 0xff790000 0x0 0x100>;
1547                         interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>;
1548                         clocks = <&clk_gates22 2>;
1549
1550                         gpio-controller;
1551                         #gpio-cells = <2>;
1552
1553                         interrupt-controller;
1554                         #interrupt-cells = <2>;
1555                 };
1556
1557                 gpio3: gpio3@ff7a0000 {
1558                         compatible = "rockchip,gpio-bank";
1559                         reg = <0x0 0xff7a0000 0x0 0x100>;
1560                         interrupts = <GIC_SPI 84 IRQ_TYPE_LEVEL_HIGH>;
1561                         clocks = <&clk_gates22 3>;
1562
1563                         gpio-controller;
1564                         #gpio-cells = <2>;
1565
1566                         interrupt-controller;
1567                         #interrupt-cells = <2>;
1568                 };
1569
1570                 pcfg_pull_up: pcfg-pull-up {
1571                         bias-pull-up;
1572                 };
1573
1574                 pcfg_pull_down: pcfg-pull-down {
1575                         bias-pull-down;
1576                 };
1577
1578                 pcfg_pull_none: pcfg-pull-none {
1579                         bias-disable;
1580                 };
1581
1582                 pcfg_pull_none_drv_8ma: pcfg-pull-none-drv-8ma {
1583                         drive-strength = <8>;
1584                 };
1585
1586                 pcfg_pull_none_drv_12ma: pcfg-pull-none-drv-12ma {
1587                         drive-strength = <12>;
1588                 };
1589
1590                 pcfg_pull_up_drv_8ma: pcfg-pull-up-drv-8ma {
1591                         bias-pull-up;
1592                         drive-strength = <8>;
1593                 };
1594
1595                 pcfg_pull_none_drv_4ma: pcfg-pull-none-drv-4ma {
1596                         drive-strength = <4>;
1597                 };
1598
1599                 pcfg_pull_up_drv_4ma: pcfg-pull-up-drv-4ma {
1600                         bias-pull-up;
1601                         drive-strength = <4>;
1602                 };
1603
1604                 pcfg_output_high: pcfg-output-high {
1605                         output-high;
1606                 };
1607
1608                 pcfg_output_low: pcfg-output-low {
1609                         output-low;
1610                 };
1611
1612                 pcfg_input_high: pcfg-input-high {
1613                         bias-pull-up;
1614                         input-enable;
1615                 };
1616
1617                 i2c0 {
1618                         i2c0_xfer: i2c0-xfer {
1619                                 rockchip,pins = <0 GPIO_A6 RK_FUNC_1 &pcfg_pull_none>,
1620                                                 <0 GPIO_A7 RK_FUNC_1 &pcfg_pull_none>;
1621                         };
1622                         i2c0_gpio: i2c0-gpio {
1623                                 rockchip,pins = <0 GPIO_A6 RK_FUNC_GPIO &pcfg_pull_none>,
1624                                                 <0 GPIO_A7 RK_FUNC_GPIO &pcfg_pull_none>;
1625                         };
1626                         i2c0_sleep: i2c0-sleep {
1627                                 rockchip,pins = <0 GPIO_A6 RK_FUNC_GPIO &pcfg_input_high>,
1628                                                 <0 GPIO_A7 RK_FUNC_GPIO &pcfg_input_high>;
1629                         };
1630                 };
1631
1632                 i2c1 {
1633                         i2c1_xfer: i2c1-xfer {
1634                                 rockchip,pins = <2 GPIO_C5 RK_FUNC_1 &pcfg_pull_none>,
1635                                                 <2 GPIO_C6 RK_FUNC_1 &pcfg_pull_none>;
1636                         };
1637                         i2c1_gpio: i2c1-gpio {
1638                                 rockchip,pins = <2 GPIO_C5 RK_FUNC_GPIO &pcfg_pull_none>,
1639                                                 <2 GPIO_C6 RK_FUNC_GPIO &pcfg_pull_none>;
1640                         };
1641                         i2c1_sleep: i2c1-sleep {
1642                                 rockchip,pins = <2 GPIO_C5 RK_FUNC_GPIO &pcfg_input_high>,
1643                                                 <2 GPIO_C6 RK_FUNC_GPIO &pcfg_input_high>;
1644                         };
1645                 };
1646
1647                 i2c2 {
1648                         i2c2_xfer: i2c2-xfer {
1649                                 rockchip,pins = <3 GPIO_D7 RK_FUNC_2 &pcfg_pull_none>,
1650                                                 <0 GPIO_B1 RK_FUNC_2 &pcfg_pull_none>;
1651                         };
1652                         i2c2_gpio: i2c2-gpio {
1653                                 rockchip,pins = <3 GPIO_D7 RK_FUNC_GPIO &pcfg_pull_none>,
1654                                                 <0 GPIO_B1 RK_FUNC_GPIO &pcfg_pull_none>;
1655                         };
1656                         i2c2_sleep: i2c2-sleep {
1657                                 rockchip,pins = <3 GPIO_D7 RK_FUNC_GPIO &pcfg_input_high>,
1658                                                 <0 GPIO_B1 RK_FUNC_GPIO &pcfg_input_high>;
1659                         };
1660                 };
1661
1662                 i2c3 {
1663                         i2c3_xfer: i2c3-xfer {
1664                                 rockchip,pins = <1 GPIO_C0 RK_FUNC_1 &pcfg_pull_none>,
1665                                                 <1 GPIO_C1 RK_FUNC_1 &pcfg_pull_none>;
1666                         };
1667                         i2c3_gpio: i2c3-gpio {
1668                                 rockchip,pins = <1 GPIO_C0 RK_FUNC_GPIO &pcfg_pull_none>,
1669                                                 <1 GPIO_C1 RK_FUNC_GPIO &pcfg_pull_none>;
1670                         };
1671                         i2c3_sleep: i2c3-sleep {
1672                                 rockchip,pins = <1 GPIO_C0 RK_FUNC_GPIO &pcfg_input_high>,
1673                                                 <1 GPIO_C1 RK_FUNC_GPIO &pcfg_input_high>;
1674                         };
1675                 };
1676
1677                 i2c4 {
1678                         i2c4_xfer: i2c4-xfer {
1679                                 rockchip,pins = <3 GPIO_D0 RK_FUNC_2 &pcfg_pull_none>,
1680                                                 <3 GPIO_D1 RK_FUNC_2 &pcfg_pull_none>;
1681                         };
1682                         i2c4_gpio: i2c4-gpio {
1683                                 rockchip,pins = <3 GPIO_D0 RK_FUNC_GPIO &pcfg_pull_none>,
1684                                                 <3 GPIO_D1 RK_FUNC_GPIO &pcfg_pull_none>;
1685                         };
1686                         i2c4_sleep: i2c4-sleep {
1687                                 rockchip,pins = <3 GPIO_D0 RK_FUNC_GPIO &pcfg_input_high>,
1688                                                 <3 GPIO_D1 RK_FUNC_GPIO &pcfg_input_high>;
1689                         };
1690                 };
1691
1692                 i2c5 {
1693                         i2c5_xfer: i2c5-xfer {
1694                                 rockchip,pins = <3 GPIO_D2 RK_FUNC_2 &pcfg_pull_none>,
1695                                                 <3 GPIO_D3 RK_FUNC_2 &pcfg_pull_none>;
1696                         };
1697                         i2c5_gpio: i2c5-gpio {
1698                                 rockchip,pins = <3 GPIO_D2 RK_FUNC_GPIO &pcfg_pull_none>,
1699                                                 <3 GPIO_D3 RK_FUNC_GPIO &pcfg_pull_none>;
1700                         };
1701                         i2c5_sleep: i2c5-sleep {
1702                                 rockchip,pins = <3 GPIO_D2 RK_FUNC_GPIO &pcfg_input_high>,
1703                                                 <3 GPIO_D3 RK_FUNC_GPIO &pcfg_input_high>;
1704                         };
1705                 };
1706
1707                 uart0 {
1708                         uart0_xfer: uart0-xfer {
1709                                 rockchip,pins = <2 GPIO_D0 RK_FUNC_1 &pcfg_pull_up>,
1710                                                 <2 GPIO_D1 RK_FUNC_1 &pcfg_pull_none>;
1711                         };
1712
1713                         uart0_cts: uart0-cts {
1714                                 rockchip,pins = <2 GPIO_D2 RK_FUNC_1 &pcfg_pull_none>;
1715                         };
1716
1717                         uart0_rts: uart0-rts {
1718                                 rockchip,pins = <2 GPIO_D3 RK_FUNC_1 &pcfg_pull_none>;
1719                         };
1720
1721                         uart0_rts_gpio: uart0-rts-gpio {
1722                                 rockchip,pins = <2 GPIO_D3 RK_FUNC_GPIO &pcfg_pull_none>;
1723                         };
1724                 };
1725
1726                 uart1 {
1727                         uart1_xfer: uart1-xfer {
1728                                 rockchip,pins = <0 GPIO_C4 RK_FUNC_3 &pcfg_pull_up>,
1729                                                 <0 GPIO_C5 RK_FUNC_3 &pcfg_pull_none>;
1730                         };
1731
1732                         uart1_cts: uart1-cts {
1733                                 rockchip,pins = <0 GPIO_C6 RK_FUNC_3 &pcfg_pull_none>;
1734                         };
1735
1736                         uart1_rts: uart1-rts {
1737                                 rockchip,pins = <0 GPIO_C7 RK_FUNC_3 &pcfg_pull_none>;
1738                         };
1739                 };
1740
1741                 uart2 {
1742                         uart2_xfer: uart2-xfer {
1743                                 rockchip,pins = <2 GPIO_A6 RK_FUNC_2 &pcfg_pull_up>,
1744                                                 <2 GPIO_A5 RK_FUNC_2 &pcfg_pull_none>;
1745                         };
1746                 };
1747
1748                 uart3 {
1749                         uart3_xfer: uart3-xfer {
1750                                 rockchip,pins = <3 GPIO_D5 RK_FUNC_2 &pcfg_pull_up>,
1751                                                 <3 GPIO_D6 RK_FUNC_2 &pcfg_pull_none>;
1752                         };
1753
1754                         uart3_cts: uart3-cts {
1755                                 rockchip,pins = <3 GPIO_C0 RK_FUNC_2 &pcfg_pull_none>;
1756                         };
1757
1758                         uart3_rts: uart3-rts {
1759                                 rockchip,pins = <3 GPIO_C1 RK_FUNC_2 &pcfg_pull_none>;
1760                         };
1761                 };
1762
1763                 uart4 {
1764                         uart4_xfer: uart4-xfer {
1765                                 rockchip,pins = <0 GPIO_D3 RK_FUNC_3 &pcfg_pull_up>,
1766                                                 <0 GPIO_D2 RK_FUNC_3 &pcfg_pull_none>;
1767                         };
1768
1769                         uart4_cts: uart4-cts {
1770                                 rockchip,pins = <0 GPIO_D0 RK_FUNC_3 &pcfg_pull_none>;
1771                         };
1772
1773                         uart4_rts: uart4-rts {
1774                                 rockchip,pins = <0 GPIO_D1 RK_FUNC_3 &pcfg_pull_none>;
1775                         };
1776                 };
1777
1778                 spi0 {
1779                         spi0_clk: spi0-clk {
1780                                 rockchip,pins = <1 GPIO_D5 RK_FUNC_2 &pcfg_pull_up>;
1781                         };
1782                         spi0_cs0: spi0-cs0 {
1783                                 rockchip,pins = <1 GPIO_D0 RK_FUNC_3 &pcfg_pull_up>;
1784                         };
1785                         spi0_tx: spi0-tx {
1786                                 rockchip,pins = <1 GPIO_C7 RK_FUNC_3 &pcfg_pull_up>;
1787                         };
1788                         spi0_rx: spi0-rx {
1789                                 rockchip,pins = <1 GPIO_C6 RK_FUNC_3 &pcfg_pull_up>;
1790                         };
1791                         spi0_cs1: spi0-cs1 {
1792                                 rockchip,pins = <1 GPIO_D1 RK_FUNC_3 &pcfg_pull_up>;
1793                         };
1794                 };
1795
1796                 spi1 {
1797                         spi1_clk: spi1-clk {
1798                                 rockchip,pins = <1 GPIO_B6 RK_FUNC_2 &pcfg_pull_up>;
1799                         };
1800                         spi1_cs0: spi1-cs0 {
1801                                 rockchip,pins = <1 GPIO_B7 RK_FUNC_2 &pcfg_pull_up>;
1802                         };
1803                         spi1_rx: spi1-rx {
1804                                 rockchip,pins = <1 GPIO_C0 RK_FUNC_2 &pcfg_pull_up>;
1805                         };
1806                         spi1_tx: spi1-tx {
1807                                 rockchip,pins = <1 GPIO_C1 RK_FUNC_2 &pcfg_pull_up>;
1808                         };
1809                         spi1_cs1: spi1-cs1 {
1810                                 rockchip,pins = <3 GPIO_D4 RK_FUNC_2 &pcfg_pull_up>;
1811                         };
1812                 };
1813
1814                 spi2 {
1815                         spi2_clk: spi2-clk {
1816                                 rockchip,pins = <0 GPIO_B4 RK_FUNC_2 &pcfg_pull_up>;
1817                         };
1818                         spi2_cs0: spi2-cs0 {
1819                                 rockchip,pins = <0 GPIO_B5 RK_FUNC_2 &pcfg_pull_up>;
1820                         };
1821                         spi2_rx: spi2-rx {
1822                                 rockchip,pins = <0 GPIO_B2 RK_FUNC_2 &pcfg_pull_up>;
1823                         };
1824                         spi2_tx: spi2-tx {
1825                                 rockchip,pins = <0 GPIO_B3 RK_FUNC_2 &pcfg_pull_up>;
1826                         };
1827                 };
1828
1829                 i2s {
1830                         i2s_mclk: i2s-mclk {
1831                                 rockchip,pins = <2 GPIO_C4 RK_FUNC_1 &pcfg_pull_none>;
1832                         };
1833
1834                         i2s_sclk:i2s-sclk {
1835                                 rockchip,pins = <2 GPIO_B4 RK_FUNC_1 &pcfg_pull_none>;
1836                         };
1837
1838                         i2s_lrckrx:i2s-lrckrx {
1839                                 rockchip,pins = <2 GPIO_B5 RK_FUNC_1 &pcfg_pull_none>;
1840                         };
1841
1842                         i2s_lrcktx:i2s-lrcktx {
1843                                 rockchip,pins = <2 GPIO_B6 RK_FUNC_1 &pcfg_pull_none>;
1844                         };
1845
1846                         i2s_sdi:i2s-sdi {
1847                                 rockchip,pins = <2 GPIO_B7 RK_FUNC_1 &pcfg_pull_none>;
1848                         };
1849
1850                         i2s_sdo0:i2s-sdo0 {
1851                                 rockchip,pins = <2 GPIO_C0 RK_FUNC_1 &pcfg_pull_none>;
1852                         };
1853
1854                         i2s_sdo1:i2s-sdo1 {
1855                                 rockchip,pins = <2 GPIO_C1 RK_FUNC_1 &pcfg_pull_none>;
1856                         };
1857
1858                         i2s_sdo2:i2s-sdo2 {
1859                                 rockchip,pins = <2 GPIO_C2 RK_FUNC_1 &pcfg_pull_none>;
1860                         };
1861
1862                         i2s_sdo3:i2s-sdo3 {
1863                                 rockchip,pins = <2 GPIO_C3 RK_FUNC_1 &pcfg_pull_none>;
1864                         };
1865
1866                         i2s_gpio: i2s-gpio {
1867                                 rockchip,pins = <2 GPIO_C4  RK_FUNC_GPIO &pcfg_pull_none>,
1868                                                 <2 GPIO_B4 RK_FUNC_GPIO &pcfg_pull_none>,
1869                                                 <2 GPIO_B5 RK_FUNC_GPIO &pcfg_pull_none>,
1870                                                 <2 GPIO_B6 RK_FUNC_GPIO &pcfg_pull_none>,
1871                                                 <2 GPIO_B7 RK_FUNC_GPIO &pcfg_pull_none>,
1872                                                 <2 GPIO_C0 RK_FUNC_GPIO &pcfg_pull_none>,
1873                                                 <2 GPIO_C1 RK_FUNC_GPIO &pcfg_pull_none>,
1874                                                 <2 GPIO_C2 RK_FUNC_GPIO &pcfg_pull_none>,
1875                                                 <2 GPIO_C3 RK_FUNC_GPIO &pcfg_pull_none>;
1876                         };
1877                 };
1878
1879                 spdif {
1880                         spdif_tx: spdif-tx {
1881                                 rockchip,pins = <2 GPIO_C7 RK_FUNC_1 &pcfg_pull_none>;
1882                         };
1883                 };
1884
1885                 sdmmc {
1886                         sdmmc_clk: sdmmc-clk {
1887                                 rockchip,pins = <2 GPIO_B1 RK_FUNC_1 &pcfg_pull_none_drv_4ma>;
1888                         };
1889
1890                         sdmmc_cmd: sdmmc-cmd {
1891                                 rockchip,pins = <2 GPIO_B2 RK_FUNC_1 &pcfg_pull_up_drv_4ma>;
1892                         };
1893
1894                         sdmmc_dectn: sdmmc-dectn {
1895                                 rockchip,pins = <2 GPIO_B3 RK_FUNC_1 &pcfg_pull_up_drv_4ma>;
1896                         };
1897
1898                         sdmmc_bus1: sdmmc-bus1 {
1899                                 rockchip,pins = <2 GPIO_A5 RK_FUNC_1 &pcfg_pull_up_drv_4ma>;
1900                         };
1901
1902                         sdmmc_bus4: sdmmc-bus4 {
1903                                 rockchip,pins = <2 GPIO_A5 RK_FUNC_1 &pcfg_pull_up_drv_4ma>,
1904                                                 <2 GPIO_A6 RK_FUNC_1 &pcfg_pull_up_drv_4ma>,
1905                                                 <2 GPIO_A7 RK_FUNC_1 &pcfg_pull_up_drv_4ma>,
1906                                                 <2 GPIO_B0 RK_FUNC_1 &pcfg_pull_up_drv_4ma>;
1907                         };
1908
1909                         sdmmc_gpio: sdmmc-gpio {
1910                                 rockchip,pins = <2 GPIO_B1 RK_FUNC_GPIO &pcfg_pull_up_drv_4ma>,//CLK
1911                                                 <2 GPIO_B2 RK_FUNC_GPIO &pcfg_pull_up_drv_4ma>,//CMD
1912                                                 <2 GPIO_B3 RK_FUNC_GPIO &pcfg_pull_up_drv_4ma>,//DET
1913                                                 <2 GPIO_A5 RK_FUNC_GPIO &pcfg_pull_up_drv_4ma>,//DO
1914                                                 <2 GPIO_A6 RK_FUNC_GPIO &pcfg_pull_up_drv_4ma>,//D1
1915                                                 <2 GPIO_A7 RK_FUNC_GPIO &pcfg_pull_up_drv_4ma>,//D2
1916                                                 <2 GPIO_B0 RK_FUNC_GPIO &pcfg_pull_up_drv_4ma>;//D3
1917                         };
1918                 };
1919
1920                 sdio0 {
1921                         sdio0_bus1: sdio0-bus1 {
1922                                 rockchip,pins = <2 GPIO_D4 RK_FUNC_1 &pcfg_pull_up_drv_4ma>;
1923                         };
1924
1925                         sdio0_bus4: sdio0-bus4 {
1926                                 rockchip,pins = <2 GPIO_D4 RK_FUNC_1 &pcfg_pull_up_drv_4ma>,
1927                                                 <2 GPIO_D5 RK_FUNC_1 &pcfg_pull_up_drv_4ma>,
1928                                                 <2 GPIO_D6 RK_FUNC_1 &pcfg_pull_up_drv_4ma>,
1929                                                 <2 GPIO_D7 RK_FUNC_1 &pcfg_pull_up_drv_4ma>;
1930                         };
1931
1932                         sdio0_cmd: sdio0-cmd {
1933                                 rockchip,pins = <3 GPIO_A0 RK_FUNC_1 &pcfg_pull_up_drv_4ma>;
1934                         };
1935
1936                         sdio0_clk: sdio0-clk {
1937                                 rockchip,pins = <3 GPIO_A1 RK_FUNC_1 &pcfg_pull_none_drv_4ma>;
1938                         };
1939
1940                         sdio0_dectn: sdio0-dectn {
1941                                 rockchip,pins = <3 GPIO_A2 RK_FUNC_1 &pcfg_pull_up>;
1942                         };
1943
1944                         sdio0_wrprt: sdio0-wrprt {
1945                                 rockchip,pins = <3 GPIO_A3 RK_FUNC_1 &pcfg_pull_up>;
1946                         };
1947
1948                         sdio0_pwren: sdio0-pwren {
1949                                 rockchip,pins = <3 GPIO_A4 RK_FUNC_1 &pcfg_pull_up>;
1950                         };
1951
1952                         sdio0_bkpwr: sdio0-bkpwr {
1953                                 rockchip,pins = <3 GPIO_A5 RK_FUNC_1 &pcfg_pull_up>;
1954                         };
1955
1956                         sdio0_int: sdio0-int {
1957                                 rockchip,pins = <3 GPIO_A6 RK_FUNC_1 &pcfg_pull_up>;
1958                         };
1959
1960                         sdio0_gpio: sdio0-gpio {
1961                                 rockchip,pins = <3 GPIO_A0 RK_FUNC_GPIO &pcfg_pull_up_drv_4ma>,//CMD
1962                                                 <3 GPIO_A1 RK_FUNC_GPIO &pcfg_pull_up_drv_4ma>,//CLK
1963                                                 <3 GPIO_A2 RK_FUNC_GPIO &pcfg_pull_up_drv_4ma>,//DET
1964                                                 <3 GPIO_A3 RK_FUNC_GPIO &pcfg_pull_up_drv_4ma>,//wrprt
1965                                                 <3 GPIO_A4 RK_FUNC_GPIO &pcfg_pull_up_drv_4ma>,//PWREN
1966                                                 <3 GPIO_A5 RK_FUNC_GPIO &pcfg_pull_up_drv_4ma>,//BKPWR
1967                                                 <3 GPIO_A6 RK_FUNC_GPIO &pcfg_pull_up_drv_4ma>,//INTN
1968                                                 <2 GPIO_D4 RK_FUNC_GPIO &pcfg_pull_up_drv_4ma>,//DO
1969                                                 <2 GPIO_D5 RK_FUNC_GPIO &pcfg_pull_up_drv_4ma>,//D1
1970                                                 <2 GPIO_D6 RK_FUNC_GPIO &pcfg_pull_up_drv_4ma>,//D2
1971                                                 <2 GPIO_D7 RK_FUNC_GPIO &pcfg_pull_up_drv_4ma>;//D3
1972                         };
1973                 };
1974
1975                 emmc {
1976                         emmc_clk: emmc-clk {
1977                                 rockchip,pins = <2 GPIO_A4 RK_FUNC_2 &pcfg_pull_none_drv_8ma>;
1978                         };
1979
1980                         emmc_cmd: emmc-cmd {
1981                                 rockchip,pins = <1 GPIO_D2 RK_FUNC_2 &pcfg_pull_up_drv_8ma>;
1982                         };
1983
1984                         emmc_pwren: emmc-pwren {
1985                                 rockchip,pins = <1 GPIO_D3 RK_FUNC_2 &pcfg_pull_none>;
1986                         };
1987
1988                         emmc_rstnout: emmc_rstnout {
1989                                 rockchip,pins = <2 GPIO_A3 RK_FUNC_2 &pcfg_pull_none>;
1990                         };
1991
1992                         emmc_bus1: emmc-bus1 {
1993                                 rockchip,pins = <1 GPIO_C2 RK_FUNC_2 &pcfg_pull_up_drv_8ma>;//DO
1994                         };
1995
1996                         emmc_bus4: emmc-bus4 {
1997                                 rockchip,pins = <1 GPIO_C2 RK_FUNC_2 &pcfg_pull_up_drv_8ma>,//DO
1998                                                 <1 GPIO_C3 RK_FUNC_2 &pcfg_pull_up_drv_8ma>,//D1
1999                                                 <1 GPIO_C4 RK_FUNC_2 &pcfg_pull_up_drv_8ma>,//D2
2000                                                 <1 GPIO_C5 RK_FUNC_2 &pcfg_pull_up_drv_8ma>;//D3
2001                         };
2002                 };
2003
2004                 pwm0 {
2005                         pwm0_pin: pwm0-pin {
2006                                 rockchip,pins = <3 GPIO_B0 RK_FUNC_2 &pcfg_pull_none>;
2007                         };
2008
2009                         vop_pwm_pin:vop-pwm {
2010                                 rockchip,pins = <3 GPIO_B0 RK_FUNC_3 &pcfg_pull_none>;
2011                         };
2012                 };
2013
2014                 pwm1 {
2015                         pwm1_pin: pwm1-pin {
2016                                 rockchip,pins = <0 GPIO_B0 RK_FUNC_2 &pcfg_pull_none>;
2017                         };
2018                 };
2019
2020                 pwm3 {
2021                         pwm3_pin: pwm3-pin {
2022                                 rockchip,pins = <3 GPIO_D6 RK_FUNC_3 &pcfg_pull_none>;
2023                         };
2024                 };
2025
2026                 lcdc {
2027                         lcdc_lcdc: lcdc-lcdc {
2028                                 rockchip,pins =
2029                                                 <0 GPIO_B6 RK_FUNC_1 &pcfg_pull_none>,//LCDC_D10
2030                                                 <0 GPIO_B7 RK_FUNC_1 &pcfg_pull_none>,//LCDC_D11
2031                                                 <0 GPIO_C0 RK_FUNC_1 &pcfg_pull_none>,//LCDC_D12
2032                                                 <0 GPIO_C1 RK_FUNC_1 &pcfg_pull_none>,//LCDC_D13
2033                                                 <0 GPIO_C2 RK_FUNC_1 &pcfg_pull_none>,//LCDC_D14
2034                                                 <0 GPIO_C3 RK_FUNC_1 &pcfg_pull_none>,//LCDC_D15
2035                                                 <0 GPIO_C4 RK_FUNC_1 &pcfg_pull_none>,//LCDC_D16
2036                                                 <0 GPIO_C5 RK_FUNC_1 &pcfg_pull_none>,//LCDC_D17
2037                                                 <0 GPIO_C6 RK_FUNC_1 &pcfg_pull_none>,//LCDC_D18
2038                                                 <0 GPIO_C7 RK_FUNC_1 &pcfg_pull_none>,//LCDC_D19
2039                                                 <0 GPIO_D0 RK_FUNC_1 &pcfg_pull_none>,//LCDC_D20
2040                                                 <0 GPIO_D1 RK_FUNC_1 &pcfg_pull_none>,//LCDC_D21
2041                                                 <0 GPIO_D2 RK_FUNC_1 &pcfg_pull_none>,//LCDC_D22
2042                                                 <0 GPIO_D3 RK_FUNC_1 &pcfg_pull_none>,//LCDC_D23
2043                                                 <0 GPIO_D7 RK_FUNC_1 &pcfg_pull_none>,//DCLK
2044                                                 <0 GPIO_D6 RK_FUNC_1 &pcfg_pull_none>,//DEN
2045                                                 <0 GPIO_D4 RK_FUNC_1 &pcfg_pull_none>,//HSYNC
2046                                                 <0 GPIO_D5 RK_FUNC_1 &pcfg_pull_none>;//VSYN
2047                         };
2048
2049                         lcdc_gpio: lcdc-gpio {
2050                                 rockchip,pins =
2051                                                 <0 GPIO_B6 RK_FUNC_GPIO &pcfg_pull_none>,//LCDC_D10
2052                                                 <0 GPIO_B7 RK_FUNC_GPIO &pcfg_pull_none>,//LCDC_D11
2053                                                 <0 GPIO_C0 RK_FUNC_GPIO &pcfg_pull_none>,//LCDC_D12
2054                                                 <0 GPIO_C1 RK_FUNC_GPIO &pcfg_pull_none>,//LCDC_D13
2055                                                 <0 GPIO_C2 RK_FUNC_GPIO &pcfg_pull_none>,//LCDC_D14
2056                                                 <0 GPIO_C3 RK_FUNC_GPIO &pcfg_pull_none>,//LCDC_D15
2057                                                 <0 GPIO_C4 RK_FUNC_GPIO &pcfg_pull_none>,//LCDC_D16
2058                                                 <0 GPIO_C5 RK_FUNC_GPIO &pcfg_pull_none>,//LCDC_D17
2059                                                 <0 GPIO_C6 RK_FUNC_GPIO &pcfg_pull_none>,//LCDC_D18
2060                                                 <0 GPIO_C7 RK_FUNC_GPIO &pcfg_pull_none>,//LCDC_D19
2061                                                 <0 GPIO_D0 RK_FUNC_GPIO &pcfg_pull_none>,//LCDC_D20
2062                                                 <0 GPIO_D1 RK_FUNC_GPIO &pcfg_pull_none>,//LCDC_D21
2063                                                 <0 GPIO_D2 RK_FUNC_GPIO &pcfg_pull_none>,//LCDC_D22
2064                                                 <0 GPIO_D3 RK_FUNC_GPIO &pcfg_pull_none>,//LCDC_D23
2065                                                 <0 GPIO_D7 RK_FUNC_GPIO &pcfg_pull_none>,//DCLK
2066                                                 <0 GPIO_D6 RK_FUNC_GPIO &pcfg_pull_none>,//DEN
2067                                                 <0 GPIO_D4 RK_FUNC_GPIO &pcfg_pull_none>,//HSYNC
2068                                                 <0 GPIO_D5 RK_FUNC_GPIO &pcfg_pull_none>;//VSYN
2069                         };
2070                 };
2071
2072                 isp {
2073                         cif_clkout: cif-clkout {
2074                                 rockchip,pins = <1 GPIO_B3 RK_FUNC_1 &pcfg_pull_none>;//cif_clkout
2075                         };
2076
2077                         isp_dvp_d2d9: isp-dvp-d2d9 {
2078                                 rockchip,pins = <1 GPIO_A0 RK_FUNC_1 &pcfg_pull_none>,//cif_data2
2079                                                 <1 GPIO_A1 RK_FUNC_1 &pcfg_pull_none>,//cif_data3
2080                                                 <1 GPIO_A2 RK_FUNC_1 &pcfg_pull_none>,//cif_data4
2081                                                 <1 GPIO_A3 RK_FUNC_1 &pcfg_pull_none>,//cif_data5
2082                                                 <1 GPIO_A4 RK_FUNC_1 &pcfg_pull_none>,//cif_data6
2083                                                 <1 GPIO_A5 RK_FUNC_1 &pcfg_pull_none>,//cif_data7
2084                                                 <1 GPIO_A6 RK_FUNC_1 &pcfg_pull_none>,//cif_data8
2085                                                 <1 GPIO_A7 RK_FUNC_1 &pcfg_pull_none>,//cif_data9
2086                                                 <1 GPIO_B0 RK_FUNC_1 &pcfg_pull_none>,//cif_sync
2087                                                 <1 GPIO_B1 RK_FUNC_1 &pcfg_pull_none>,//cif_href
2088                                                 <1 GPIO_B2 RK_FUNC_1 &pcfg_pull_none>,//cif_clkin
2089                                                 <1 GPIO_B3 RK_FUNC_1 &pcfg_pull_none>;//cif_clkout
2090                         };
2091
2092                         isp_dvp_d0d1: isp-dvp-d0d1 {
2093                                 rockchip,pins = <1 GPIO_B4 RK_FUNC_1 &pcfg_pull_none>,//cif_data0
2094                                                 <1 GPIO_B5 RK_FUNC_1 &pcfg_pull_none>;//cif_data1
2095                         };
2096
2097                         isp_dvp_d10d11:isp_d10d11       {
2098                                 rockchip,pins = <1 GPIO_B6 RK_FUNC_1 &pcfg_pull_none>,//cif_data10
2099                                                 <1 GPIO_B7 RK_FUNC_1 &pcfg_pull_none>;//cif_data11
2100                         };
2101
2102                         isp_dvp_d0d7: isp-dvp-d0d7 {
2103                                 rockchip,pins = <1 GPIO_B4 RK_FUNC_1 &pcfg_pull_none>,//cif_data0
2104                                                 <1 GPIO_B5 RK_FUNC_1 &pcfg_pull_none>,//cif_data1
2105                                                 <1 GPIO_A0 RK_FUNC_1 &pcfg_pull_none>,//cif_data2
2106                                                 <1 GPIO_A1 RK_FUNC_1 &pcfg_pull_none>,//cif_data3
2107                                                 <1 GPIO_A2 RK_FUNC_1 &pcfg_pull_none>,//cif_data4
2108                                                 <1 GPIO_A3 RK_FUNC_1 &pcfg_pull_none>,//cif_data5
2109                                                 <1 GPIO_A4 RK_FUNC_1 &pcfg_pull_none>,//cif_data6
2110                                                 <1 GPIO_A5 RK_FUNC_1 &pcfg_pull_none>;//cif_data7
2111                         };
2112
2113                         isp_dvp_d4d11: isp-dvp-d4d11 {
2114                                 rockchip,pins =
2115                                                 <1 GPIO_A2 RK_FUNC_1 &pcfg_pull_none>,//cif_data4
2116                                                 <1 GPIO_A3 RK_FUNC_1 &pcfg_pull_none>,//cif_data5
2117                                                 <1 GPIO_A4 RK_FUNC_1 &pcfg_pull_none>,//cif_data6
2118                                                 <1 GPIO_A5 RK_FUNC_1 &pcfg_pull_none>,//cif_data7
2119                                                 <1 GPIO_A6 RK_FUNC_1 &pcfg_pull_none>,//cif_data8
2120                                                 <1 GPIO_A7 RK_FUNC_1 &pcfg_pull_none>,//cif_data9
2121                                                 <1 GPIO_B6 RK_FUNC_1 &pcfg_pull_none>,//cif_data10
2122                                                 <1 GPIO_B7 RK_FUNC_1 &pcfg_pull_none>;//cif_data11
2123                         };
2124
2125                         isp_shutter: isp-shutter {
2126                                 rockchip,pins = <3 GPIO_C3 RK_FUNC_2 &pcfg_pull_none>, //SHUTTEREN
2127                                                 <3 GPIO_C6 RK_FUNC_2 &pcfg_pull_none>;//SHUTTERTRIG
2128                         };
2129
2130                         isp_flash_trigger: isp-flash-trigger {
2131                                 rockchip,pins = <3 GPIO_C4 RK_FUNC_2 &pcfg_pull_none>; //ISP_FLASHTRIGOU
2132                         };
2133
2134                         isp_prelight: isp-prelight {
2135                                 rockchip,pins = <3 GPIO_C5 RK_FUNC_2 &pcfg_pull_none>;//ISP_PRELIGHTTRIG
2136                         };
2137
2138                         isp_flash_trigger_as_gpio: isp_flash_trigger_as_gpio {
2139                                 rockchip,pins = <3 GPIO_C4 RK_FUNC_GPIO &pcfg_pull_none>;//ISP_FLASHTRIGOU
2140                         };
2141                 };
2142
2143                 gps {
2144                         gps_mag: gps-mag {
2145                                 rockchip,pins = <3 GPIO_B6 RK_FUNC_2 &pcfg_pull_none>;
2146                         };
2147
2148                         gps_sig: gps-sig {
2149                                 rockchip,pins = <3 GPIO_B7 RK_FUNC_2 &pcfg_pull_none>;
2150
2151                         };
2152
2153                         gps_rfclk: gps-rfclk {
2154                                 rockchip,pins = <3 GPIO_C0 RK_FUNC_3 &pcfg_pull_none>;
2155                         };
2156                 };
2157
2158                 gmac {
2159                         rgmii_pins: rgmii-pins {
2160                                 rockchip,pins = <3 GPIO_C6 RK_FUNC_1 &pcfg_pull_none>,//MAC_CLK
2161                                                 <3 GPIO_D0 RK_FUNC_1 &pcfg_pull_none>,//MDIO
2162                                                 <3 GPIO_C3 RK_FUNC_1 &pcfg_pull_none>,//MDC
2163                                                 <3 GPIO_B0 RK_FUNC_1 &pcfg_pull_none_drv_12ma>,//TXD0
2164                                                 <3 GPIO_B1 RK_FUNC_1 &pcfg_pull_none_drv_12ma>,//TXD1
2165                                                 <3 GPIO_B2 RK_FUNC_1 &pcfg_pull_none_drv_12ma>,//TXD2
2166                                                 <3 GPIO_B6 RK_FUNC_1 &pcfg_pull_none_drv_12ma>,//TXD3
2167                                                 <3 GPIO_D4 RK_FUNC_1 &pcfg_pull_none_drv_12ma>,//TXCLK
2168                                                 <3 GPIO_B5 RK_FUNC_1 &pcfg_pull_none_drv_12ma>,//TXEN
2169                                                 <3 GPIO_B7 RK_FUNC_1 &pcfg_pull_none>,//RXD0
2170                                                 <3 GPIO_C0 RK_FUNC_1 &pcfg_pull_none>,//RXD1
2171                                                 <3 GPIO_C1 RK_FUNC_1 &pcfg_pull_none>,//RXD2
2172                                                 <3 GPIO_C2 RK_FUNC_1 &pcfg_pull_none>,//RXD3
2173                                                 <3 GPIO_D1 RK_FUNC_1 &pcfg_pull_none>,//RXCLK
2174                                                 <3 GPIO_C4 RK_FUNC_1 &pcfg_pull_none>;//RXDV
2175                         };
2176
2177                         rmii_pins: rmii-pins {
2178                                 rockchip,pins = <3 GPIO_C6 RK_FUNC_1 &pcfg_pull_none>,//MAC_CLK
2179                                                 <3 GPIO_D0 RK_FUNC_1 &pcfg_pull_none>,//MDIO
2180                                                 <3 GPIO_C3 RK_FUNC_1 &pcfg_pull_none>,//MDC
2181                                                 <3 GPIO_B0 RK_FUNC_1 &pcfg_pull_none_drv_12ma>,//TXD0
2182                                                 <3 GPIO_B1 RK_FUNC_1 &pcfg_pull_none_drv_12ma>,//TXD1
2183                                                 <3 GPIO_B5 RK_FUNC_1 &pcfg_pull_none_drv_12ma>,//TXEN
2184                                                 <3 GPIO_B7 RK_FUNC_1 &pcfg_pull_none>,//RXD0
2185                                                 <3 GPIO_C0 RK_FUNC_1 &pcfg_pull_none>,//RXD1
2186                                                 <3 GPIO_C4 RK_FUNC_1 &pcfg_pull_none>,//RXDV
2187                                                 <3 GPIO_C5 RK_FUNC_1 &pcfg_pull_none>;//RXER
2188                         };
2189                 };
2190
2191                 tsadc_pin {
2192                         tsadc_int: tsadc-int {
2193                                 rockchip,pins = <0 GPIO_A3 RK_FUNC_1 &pcfg_pull_none>;
2194                         };
2195                         tsadc_gpio: tsadc-gpio {
2196                                 rockchip,pins = <0 GPIO_A3 RK_FUNC_GPIO &pcfg_pull_none>;
2197                         };
2198                 };
2199
2200                 hdmi_pin {
2201                         hdmi_cec: hdmi-cec {
2202                                 rockchip,pins = <3 GPIO_C7 RK_FUNC_1 &pcfg_pull_none>;
2203                         };
2204                 };
2205
2206                 hdmi_i2c {
2207                         hdmii2c_xfer: hdmii2c-xfer {
2208                                 rockchip,pins = <3 GPIO_D2 RK_FUNC_1 &pcfg_pull_none>,
2209                                                 <3 GPIO_D3 RK_FUNC_1 &pcfg_pull_none>;
2210                         };
2211                 };
2212
2213                 cpu_jtag {
2214                         cpu_jtag: cpu-jtag {
2215                                 rockchip,pins = <2 GPIO_A7 RK_FUNC_2 &pcfg_pull_up>,
2216                                                 <2 GPIO_B0 RK_FUNC_2 &pcfg_pull_up>;
2217                         };
2218                 };
2219
2220                 mcu_jtag {
2221                         mcu_jtag: mcu-jtag {
2222                                 rockchip,pins = <2 GPIO_B2 RK_FUNC_2 &pcfg_pull_up>,
2223                                                 <2 GPIO_B1 RK_FUNC_2 &pcfg_pull_up>;
2224                         };
2225                 };
2226         };
2227
2228         reboot {
2229                 compatible = "rockchip,rk3368-reboot";
2230                 rockchip,cru = <&cru>;
2231                 rockchip,pmugrf = <&pmugrf>;
2232         };
2233 };