ARM64: dts: rk3366-tb: change usb2-host vbus supply as a regulator
[firefly-linux-kernel-4.4.55.git] / arch / arm64 / boot / dts / rockchip / rk3366-tb.dts
1 /*
2  * Copyright (c) 2016 Fuzhou Rockchip Electronics Co., Ltd
3  *
4  * This file is dual-licensed: you can use it either under the terms
5  * of the GPL or the X11 license, at your option. Note that this dual
6  * licensing only applies to this file, and not this project as a
7  * whole.
8  *
9  *  a) This file is free software; you can redistribute it and/or
10  *     modify it under the terms of the GNU General Public License as
11  *     published by the Free Software Foundation; either version 2 of the
12  *     License, or (at your option) any later version.
13  *
14  *     This file is distributed in the hope that it will be useful,
15  *     but WITHOUT ANY WARRANTY; without even the implied warranty of
16  *     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
17  *     GNU General Public License for more details.
18  *
19  * Or, alternatively,
20  *
21  *  b) Permission is hereby granted, free of charge, to any person
22  *     obtaining a copy of this software and associated documentation
23  *     files (the "Software"), to deal in the Software without
24  *     restriction, including without limitation the rights to use,
25  *     copy, modify, merge, publish, distribute, sublicense, and/or
26  *     sell copies of the Software, and to permit persons to whom the
27  *     Software is furnished to do so, subject to the following
28  *     conditions:
29  *
30  *     The above copyright notice and this permission notice shall be
31  *     included in all copies or substantial portions of the Software.
32  *
33  *     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
34  *     EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
35  *     OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
36  *     NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
37  *     HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
38  *     WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
39  *     FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
40  *     OTHER DEALINGS IN THE SOFTWARE.
41  */
42
43 /dts-v1/;
44 #include <dt-bindings/pwm/pwm.h>
45 #include "rk3366.dtsi"
46
47 / {
48         model = "Rockchip SDK tb board";
49         compatible = "rockchip,tb", "rockchip,rk3366";
50
51         chosen {
52                 bootargs = "console=uart,mmio32,0xff690000";
53         };
54
55         ion {
56                 compatible = "rockchip,ion";
57                 #address-cells = <1>;
58                 #size-cells = <0>;
59
60                 cma-heap {
61                         reg = <0x00000000 0x02000000>;
62                 };
63
64                 system-heap {
65                 };
66         };
67
68         ramoops_mem: ramoops_mem {
69                 reg = <0x0 0x100000 0x0 0x100000>;
70                 reg-names = "ramoops_mem";
71         };
72
73         ramoops {
74                 compatible = "ramoops";
75                 record-size = <0x0 0x10000>;
76                 console-size = <0x0 0x80000>;
77                 ftrace-size = <0x0 0x10000>;
78                 pmsg-size = <0x0 0x50000>;
79                 memory-region = <&ramoops_mem>;
80         };
81
82         backlight: backlight {
83                 compatible = "pwm-backlight";
84                 pwms = <&pwm0 0 25000 PWM_POLARITY_INVERTED>;
85                 brightness-levels = <
86                           0   1   2   3   4   5   6   7
87                           8   9  10  11  12  13  14  15
88                          16  17  18  19  20  21  22  23
89                          24  25  26  27  28  29  30  31
90                          32  33  34  35  36  37  38  39
91                          40  41  42  43  44  45  46  47
92                          48  49  50  51  52  53  54  55
93                          56  57  58  59  60  61  62  63
94                          64  65  66  67  68  69  70  71
95                          72  73  74  75  76  77  78  79
96                          80  81  82  83  84  85  86  87
97                          88  89  90  91  92  93  94  95
98                          96  97  98  99 100 101 102 103
99                         104 105 106 107 108 109 110 111
100                         112 113 114 115 116 117 118 119
101                         120 121 122 123 124 125 126 127
102                         128 129 130 131 132 133 134 135
103                         136 137 138 139 140 141 142 143
104                         144 145 146 147 148 149 150 151
105                         152 153 154 155 156 157 158 159
106                         160 161 162 163 164 165 166 167
107                         168 169 170 171 172 173 174 175
108                         176 177 178 179 180 181 182 183
109                         184 185 186 187 188 189 190 191
110                         192 193 194 195 196 197 198 199
111                         200 201 202 203 204 205 206 207
112                         208 209 210 211 212 213 214 215
113                         216 217 218 219 220 221 222 223
114                         224 225 226 227 228 229 230 231
115                         232 233 234 235 236 237 238 239
116                         240 241 242 243 244 245 246 247
117                         248 249 250 251 252 253 254 255>;
118                 default-brightness-level = <200>;
119                 enable-gpios = <&gpio0 26 GPIO_ACTIVE_HIGH>;
120         };
121
122         rk_key: rockchip-key {
123                 compatible = "rockchip,key";
124                 status = "okay";
125
126                 io-channels = <&saradc 1>;
127
128                 vol-up-key {
129                         linux,code = <115>;
130                         label = "volume up";
131                         rockchip,adc_value = <1>;
132                 };
133
134                 vol-down-key {
135                         linux,code = <114>;
136                         label = "volume down";
137                         rockchip,adc_value = <170>;
138                 };
139
140                 power-key {
141                         gpios = <&gpio0 11 GPIO_ACTIVE_LOW>;
142                         linux,code = <116>;
143                         label = "power";
144                         gpio-key,wakeup;
145                 };
146
147                 menu-key {
148                         linux,code = <59>;
149                         label = "menu";
150                         rockchip,adc_value = <355>;
151                 };
152
153                 home-key {
154                         linux,code = <102>;
155                         label = "home";
156                         rockchip,adc_value = <746>;
157                 };
158
159                 back-key {
160                         linux,code = <158>;
161                         label = "back";
162                         rockchip,adc_value = <560>;
163                 };
164
165                 camera-key {
166                         linux,code = <212>;
167                         label = "camera";
168                         rockchip,adc_value = <450>;
169                 };
170         };
171
172         rt5640-sound {
173                 compatible = "simple-audio-card";
174                 simple-audio-card,format = "i2s";
175                 simple-audio-card,name = "rockchip,rt5640-codec";
176                 simple-audio-card,mclk-fs = <256>;
177                 simple-audio-card,widgets =
178                         "Microphone", "Mic Jack",
179                         "Headphone", "Headphone Jack";
180                 simple-audio-card,routing =
181                         "Mic Jack", "MICBIAS1",
182                         "IN1P", "Mic Jack",
183                         "Headphone Jack", "HPOL",
184                         "Headphone Jack", "HPOR";
185                 simple-audio-card,cpu {
186                         sound-dai = <&i2s_8ch>;
187                 };
188                 simple-audio-card,codec {
189                         sound-dai = <&rt5640>;
190                 };
191         };
192
193         spdif-sound {
194                 compatible = "simple-audio-card";
195                 simple-audio-card,name = "rockchip,spdif";
196                 simple-audio-card,cpu {
197                         sound-dai = <&spdif>;
198                 };
199                 simple-audio-card,codec {
200                         sound-dai = <&spdif_out>;
201                 };
202         };
203
204         spdif_out: spdif-out {
205                 compatible = "linux,spdif-dit";
206                 #sound-dai-cells = <0>;
207         };
208
209         vcc_sys: vcc-sys {
210                 compatible = "regulator-fixed";
211                 regulator-name = "vcc_sys";
212                 regulator-always-on;
213                 regulator-boot-on;
214                 regulator-min-microvolt = <3800000>;
215                 regulator-max-microvolt = <3800000>;
216         };
217
218         ext_gmac: external-gmac-clock {
219                 compatible = "fixed-clock";
220                 clock-frequency = <125000000>;
221                 clock-output-names = "ext_gmac";
222                 #clock-cells = <0>;
223         };
224
225         vbus_host: vbus-host-regulator {
226                 compatible = "regulator-fixed";
227                 enable-active-high;
228                 gpio = <&gpio0 16 GPIO_ACTIVE_HIGH>;
229                 pinctrl-names = "default";
230                 pinctrl-0 = <&host_vbus_drv>;
231                 regulator-name = "vbus_host";
232         };
233
234         vcc_phy: vcc-phy-regulator {
235                 compatible = "regulator-fixed";
236                 enable-active-high;
237                 gpio = <&gpio0 25 GPIO_ACTIVE_HIGH>;
238                 pinctrl-names = "default";
239                 pinctrl-0 = <&eth_phy_pwr>;
240                 regulator-name = "vcc_phy";
241                 regulator-always-on;
242                 regulator-boot-on;
243         };
244
245         io-domains {
246                 compatible = "rockchip,rk3366-io-voltage-domain";
247                 rockchip,grf = <&grf>;
248
249                 lcdc-supply = <&vcc_io>;
250                 dvpts-supply = <&vcc_18>;
251                 wifibt-supply = <&vccio_wl>;
252                 audio-supply = <&vcc_io>;
253                 sdcard-supply = <&vccio_sd>;
254                 tphdsor-supply = <&vcc_io>;
255         };
256
257         dwc_control_usb: dwc-control-usb {
258                 compatible = "rockchip,rk3368-dwc-control-usb";
259                 rockchip,grf = <&grf>;
260                 grf-offset = <0x049c>; /* GRF_SOC_STATUS for USB2.0 OTG */
261                 interrupts = <GIC_SPI 93 IRQ_TYPE_LEVEL_HIGH>,
262                              <GIC_SPI 94 IRQ_TYPE_LEVEL_HIGH>,
263                              <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>,
264                              <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>;
265                 interrupt-names = "otg_id", "otg_bvalid",
266                                   "otg_linestate", "host0_linestate";
267                 clocks = <&cru SCLK_USBPHY480M>;
268                 clock-names = "usbphy_480m";
269
270                 usb_bc {
271                         compatible = "inno,phy";
272                         regbase = &dwc_control_usb;
273                         rk_usb,bvalid     = <0x49c 23 1>;
274                         rk_usb,iddig      = <0x49c 26 1>;
275                         rk_usb,vdmsrcen   = <0x718 12 1>;
276                         rk_usb,vdpsrcen   = <0x718 11 1>;
277                         rk_usb,rdmpden    = <0x718 10 1>;
278                         rk_usb,idpsrcen   = <0x718  9 1>;
279                         rk_usb,idmsinken  = <0x718  8 1>;
280                         rk_usb,idpsinken  = <0x718  7 1>;
281                         rk_usb,dpattach   = <0x498 31 1>;
282                         rk_usb,cpdet      = <0x498 30 1>;
283                         rk_usb,dcpattach  = <0x498 29 1>;
284                 };
285         };
286
287         i2c@2 {
288                 compatible = "i2c-gpio";
289                 gpios = <&gpio5 15 GPIO_ACTIVE_HIGH>, /* sda */
290                         <&gpio5 16 GPIO_ACTIVE_HIGH>; /* scl */
291                 i2c-gpio,delay-us = <2>;        /* ~100 kHz */
292                 #address-cells = <1>;
293                 #size-cells = <0>;
294                 pinctrl-names = "default";
295                 pinctrl-0 = <&i2c2_gpio>;
296                 status = "disabled";
297         };
298
299         i2c@4 {
300                 compatible = "i2c-gpio";
301                 gpios = <&gpio5 9 GPIO_ACTIVE_HIGH>, /* sda */
302                         <&gpio5 8 GPIO_ACTIVE_HIGH>; /* scl */
303                 i2c-gpio,delay-us = <2>;        /* ~100 kHz */
304                 #address-cells = <1>;
305                 #size-cells = <0>;
306                 pinctrl-names = "default";
307                 pinctrl-0 = <&i2c4_gpio>;
308                 status = "okay";
309
310                 gt9xx: gt9xx@14 {
311                         compatible = "goodix,gt9xx";
312                         reg = <0x14>;
313                         touch-gpio = <&gpio5 11 IRQ_TYPE_LEVEL_LOW>;
314                         reset-gpio = <&gpio5 10 GPIO_ACTIVE_HIGH>;
315                         max-x = <1200>;
316                         max-y = <1900>;
317                         tp-size = <911>;
318                         tp-supply = <&vcc_tp>;
319                         status = "okay";
320                 };
321         };
322
323         sdio_pwrseq: sdio-pwrseq {
324                 compatible = "mmc-pwrseq-simple";
325                 clocks = <&rk818 1>;
326                 clock-names = "ext_clock";
327                 pinctrl-names = "default";
328                 pinctrl-0 = <&wifi_enable_h>;
329
330                 /*
331                  * On the module itself this is one of these (depending
332                  * on the actual card populated):
333                  * - SDIO_RESET_L_WL_REG_ON
334                  * - PDN (power down when low)
335                  */
336                 reset-gpios = <&gpio0 14 GPIO_ACTIVE_LOW>; /* GPIO0_B6 */
337         };
338
339         wireless-wlan {
340                 compatible = "wlan-platdata";
341                 rockchip,grf = <&grf>;
342                 wifi_chip_type = "ap6335";
343                 sdio_vref = <1800>;
344                 WIFI,host_wake_irq = <&gpio3 20 GPIO_ACTIVE_HIGH>; /* GPIO3_c4 */
345                 status = "okay";
346         };
347
348         wireless-bluetooth {
349                 compatible = "bluetooth-platdata";
350                 //wifi-bt-power-toggle;
351                 uart_rts_gpios = <&gpio3 11 GPIO_ACTIVE_LOW>; /* GPIO3_b3 */
352                 pinctrl-names = "default","rts_gpio";
353                 pinctrl-0 = <&uart0_rts>;
354                 pinctrl-1 = <&uart0_rts_gpio>;
355                 //BT,power_gpio  = <&gpio3 19 GPIO_ACTIVE_HIGH>; /* GPIO3_c3 */
356                 BT,reset_gpio    = <&gpio3 19 GPIO_ACTIVE_HIGH>; /* GPIO3_c3 */
357                 BT,wake_gpio     = <&gpio3 18 GPIO_ACTIVE_HIGH>; /* GPIO3_c2 */
358                 BT,wake_host_irq = <&gpio3 21 GPIO_ACTIVE_HIGH>; /* GPIO3_c5 */
359                 status = "okay";
360         };
361 };
362
363 &tsadc {
364         status = "okay";
365 };
366
367 &nandc0 {
368         status = "okay"; /* enable both for emmc and nand */
369 };
370
371 &emmc {
372         clock-frequency = <100000000>;
373         clock-freq-min-max = <400000 100000000>;
374         supports-emmc;
375         bus-width = <8>;
376         cap-mmc-highspeed;
377         disable-wp;
378         non-removable;
379         num-slots = <1>;
380         pinctrl-names = "default";
381         pinctrl-0 = <&emmc_clk &emmc_cmd &emmc_pwr &emmc_bus8>;
382         status = "okay";
383 };
384
385 &sdmmc {
386         clock-frequency = <37500000>;
387         clock-freq-min-max = <400000 37500000>;
388         supports-sd;
389         bus-width = <4>;
390         cap-mmc-highspeed;
391         cap-sd-highspeed;
392         card-detect-delay = <200>;
393         disable-wp;
394         num-slots = <1>;
395         pinctrl-names = "default";
396         pinctrl-0 = <&sdmmc_clk &sdmmc_cmd &sdmmc_cd &sdmmc_bus4>;
397         status = "disabled";
398 };
399
400 &sdio {
401         clock-frequency = <37500000>;
402         clock-freq-min-max = <200000 37500000>;
403         supports-sdio;
404         bus-width = <4>;
405         disable-wp;
406         cap-sd-highspeed;
407         cap-sdio-irq;
408         keep-power-in-suspend;
409         mmc-pwrseq = <&sdio_pwrseq>;
410         non-removable;
411         num-slots = <1>;
412         pinctrl-names = "default";
413         pinctrl-0 = <&sdio_bus4 &sdio_cmd &sdio_clk>;
414         sd-uhs-sdr104;
415         status = "okay";
416 };
417
418 &uart0 {
419         status = "okay";
420         pinctrl-0 = <&uart0_xfer &uart0_cts>;
421 };
422
423 &saradc {
424         status = "okay";
425 };
426
427 &i2c0 {
428         status = "okay";
429         i2c-scl-rising-time-ns = <250>;
430         i2c-scl-falling-time-ns = <20>;
431
432         syr827: syr827@40 {
433                 regulator-name = "vdd_arm";
434                 compatible = "silergy,syr827";
435                 status = "okay";
436                 reg = <0x40>;
437                 regulator-compatible = "fan53555-reg";
438                 regulator-min-microvolt = <712500>;
439                 regulator-max-microvolt = <1500000>;
440                 fcs,suspend-voltage-selector = <1>;
441                 regulator-always-on;
442                 regulator-boot-on;
443                 regulator-initial-state = <3>;
444                 regulator-ramp-delay = <2000>;
445                 regulator-state-mem {
446                         regulator-off-in-suspend;
447                         regulator-suspend-microvolt = <900000>;
448                 };
449         };
450
451         rk818: pmic@1c {
452                 compatible = "rockchip,rk818";
453                 status = "okay";
454                 reg = <0x1c>;
455                 clock-output-names = "xin32k", "wifibt_32kin";
456                 interrupt-parent = <&gpio0>;
457                 interrupts = <2 IRQ_TYPE_LEVEL_LOW>;
458                 pinctrl-names = "default";
459                 pinctrl-0 = <&pmic_int_l>;
460                 rockchip,system-power-controller;
461                 wakeup-source;
462                 #clock-cells = <1>;
463
464                 vcc1-supply = <&vcc_sys>;
465                 vcc2-supply = <&vcc_sys>;
466                 vcc3-supply = <&vcc_sys>;
467                 vcc4-supply = <&vcc_sys>;
468                 vcc6-supply = <&vcc_sys>;
469                 vcc7-supply = <&vcc_sys>;
470                 vcc8-supply = <&vcc_sys>;
471                 vcc9-supply = <&vcc_io>;
472
473                 regulators {
474                         vdd_logic: DCDC_REG1 {
475                                 regulator-name = "vdd_logic";
476                                 regulator-always-on;
477                                 regulator-boot-on;
478                                 regulator-min-microvolt = <750000>;
479                                 regulator-max-microvolt = <1450000>;
480                                 regulator-ramp-delay = <6001>;
481                                 regulator-state-mem {
482                                         regulator-on-in-suspend;
483                                         regulator-suspend-microvolt = <1000000>;
484                                 };
485                         };
486
487                         vdd_gpu: DCDC_REG2 {
488                                 regulator-name = "vdd_gpu";
489                                 regulator-always-on;
490                                 regulator-boot-on;
491                                 regulator-min-microvolt = <800000>;
492                                 regulator-max-microvolt = <1250000>;
493                                 regulator-ramp-delay = <6001>;
494                                 regulator-state-mem {
495                                         regulator-on-in-suspend;
496                                         regulator-suspend-microvolt = <1000000>;
497                                 };
498                         };
499
500                         vcc_ddr: DCDC_REG3 {
501                                 regulator-name = "vcc_ddr";
502                                 regulator-always-on;
503                                 regulator-boot-on;
504                                 regulator-state-mem {
505                                         regulator-on-in-suspend;
506                                 };
507                         };
508
509                         vcc_io: DCDC_REG4 {
510                                 regulator-name = "vcc_io";
511                                 regulator-always-on;
512                                 regulator-boot-on;
513                                 regulator-min-microvolt = <3300000>;
514                                 regulator-max-microvolt = <3300000>;
515                                 regulator-state-mem {
516                                         regulator-on-in-suspend;
517                                         regulator-suspend-microvolt = <3300000>;
518                                 };
519                         };
520
521                         vcca_codec: LDO_REG1 {
522                                 regulator-name = "vcca_codec";
523                                 regulator-always-on;
524                                 regulator-boot-on;
525                                 regulator-min-microvolt = <3300000>;
526                                 regulator-max-microvolt = <3300000>;
527                                 regulator-state-mem {
528                                         regulator-on-in-suspend;
529                                         regulator-suspend-microvolt = <3300000>;
530                                 };
531                         };
532
533                         vcc_tp: LDO_REG2 {
534                                 regulator-name = "vcc_tp";
535                                 regulator-always-on;
536                                 regulator-boot-on;
537                                 regulator-min-microvolt = <3000000>;
538                                 regulator-max-microvolt = <3000000>;
539                                 regulator-state-mem {
540                                         regulator-on-in-suspend;
541                                         regulator-suspend-microvolt = <3000000>;
542                                 };
543                         };
544
545                         vdd_10: LDO_REG3 {
546                                 regulator-name = "vdd_10";
547                                 regulator-always-on;
548                                 regulator-boot-on;
549                                 regulator-min-microvolt = <1000000>;
550                                 regulator-max-microvolt = <1000000>;
551                                 regulator-state-mem {
552                                         regulator-on-in-suspend;
553                                         regulator-suspend-microvolt = <1000000>;
554                                 };
555                         };
556
557                         vcc18_lcd: LDO_REG4 {
558                                 regulator-name = "vcc18_lcd";
559                                 regulator-always-on;
560                                 regulator-boot-on;
561                                 regulator-min-microvolt = <1800000>;
562                                 regulator-max-microvolt = <1800000>;
563                                 regulator-state-mem {
564                                         regulator-on-in-suspend;
565                                         regulator-suspend-microvolt = <1800000>;
566                                 };
567                         };
568
569                         vccio_pmu: LDO_REG5 {
570                                 regulator-name = "vccio_pmu";
571                                 regulator-always-on;
572                                 regulator-boot-on;
573                                 regulator-min-microvolt = <1800000>;
574                                 regulator-max-microvolt = <1800000>;
575                                 regulator-state-mem {
576                                         regulator-on-in-suspend;
577                                         regulator-suspend-microvolt = <1800000>;
578                                 };
579                         };
580
581                         vdd10_lcd: LDO_REG6 {
582                                 regulator-name = "vdd10_lcd";
583                                 regulator-always-on;
584                                 regulator-boot-on;
585                                 regulator-min-microvolt = <1000000>;
586                                 regulator-max-microvolt = <1000000>;
587                                 regulator-state-mem {
588                                         regulator-on-in-suspend;
589                                         regulator-suspend-microvolt = <1000000>;
590                                 };
591                         };
592
593                         vcc_18: LDO_REG7 {
594                                 regulator-name = "vcc_18";
595                                 regulator-always-on;
596                                 regulator-boot-on;
597                                 regulator-min-microvolt = <1800000>;
598                                 regulator-max-microvolt = <1800000>;
599                                 regulator-state-mem {
600                                         regulator-on-in-suspend;
601                                         regulator-suspend-microvolt = <1800000>;
602                                 };
603                         };
604
605                         vccio_wl: LDO_REG8 {
606                                 regulator-name = "vccio_wl";
607                                 regulator-always-on;
608                                 regulator-boot-on;
609                                 regulator-min-microvolt = <1800000>;
610                                 regulator-max-microvolt = <3300000>;
611                                 regulator-state-mem {
612                                         regulator-on-in-suspend;
613                                         regulator-suspend-microvolt = <3300000>;
614                                 };
615                         };
616
617                         vccio_sd: LDO_REG9 {
618                                 regulator-name = "vccio_sd";
619                                 regulator-always-on;
620                                 regulator-boot-on;
621                                 regulator-min-microvolt = <1800000>;
622                                 regulator-max-microvolt = <3300000>;
623                                 regulator-state-mem {
624                                         regulator-on-in-suspend;
625                                         regulator-suspend-microvolt = <3300000>;
626                                 };
627                         };
628
629                         vcc_sd: SWITCH_REG {
630                                 regulator-name = "vcc_sd";
631                                 regulator-always-on;
632                                 regulator-boot-on;
633                                 regulator-state-mem {
634                                         regulator-on-in-suspend;
635                                 };
636                         };
637                 };
638         };
639 };
640
641 &i2c1 {
642         status = "okay";
643         i2c-scl-rising-time-ns = <460>;
644         i2c-scl-falling-time-ns = <15>;
645
646         rt5640: rt5640@1c {
647                 #sound-dai-cells = <0>;
648                 compatible = "realtek,rt5640";
649                 reg = <0x1c>;
650                 clocks = <&cru SCLK_I2S_8CH_OUT>;
651                 clock-names = "mclk";
652                 realtek,in1-differential;
653         };
654 };
655
656 &i2s_8ch {
657         status = "okay";
658         rockchip,i2s-broken-burst-len;
659         rockchip,playback-channels = <8>;
660         rockchip,capture-channels = <2>;
661         #sound-dai-cells = <0>;
662 };
663
664 &spdif {
665         status = "okay";
666         #sound-dai-cells = <0>;
667 };
668
669 &pwm0 {
670         status = "okay";
671 };
672
673 &rga {
674         status = "okay";
675 };
676
677 &uart2 {
678         status = "okay";
679 };
680
681 &fb {
682         status = "okay";
683         rockchip,disp-mode = <DUAL>;
684         rockchip,uboot-logo-on = <0>;
685 };
686
687 &rk_screen {
688         status = "okay";
689         #include <dt-bindings/display/screen-timing/lcd-tv080wum-mipi.dtsi>
690         /* #include <dt-bindings/display/screen-timing/lcd-b101ew05.dtsi> */
691 };
692
693 &lvds {
694         pinctrl-names = "lcdc", "sleep";
695         pinctrl-0 = <&lcdc_lcdc>;
696         pinctrl-1 = <&lcdc_gpio>;
697         status = "disabled";
698 };
699
700 &dsihost0 {
701         status = "okay";
702 };
703
704 &hdmi {
705         status = "okay";
706         rockchip,hdmi_video_source = <DISPLAY_SOURCE_LCDC1>;
707         rockchip,phy_table =
708                 <148500000 0 0 17 18 18 18>,
709                 <297000000 1 1 17 14 14 14>,
710                 <594000000 1 1 16 5 5 5>;
711 };
712
713 &vop_lite {
714         status = "okay";
715         rockchip,prop = <EXTEND>;
716         rockchip,mirror = <NO_MIRROR>;
717         rockchip,cabc_mode = <0>;
718         rockchip,fb-win-map = <FB_DEFAULT_ORDER>;
719 };
720
721 &vopl_mmu {
722         status = "okay";
723 };
724
725 &iep_mmu {
726         status = "okay";
727 };
728
729 &vpu_mmu {
730         status = "okay";
731 };
732
733 &vdec_mmu {
734         status = "okay";
735 };
736
737 &iep {
738         status = "okay";
739 };
740
741 &vpu {
742         status = "okay";
743 };
744
745 &rkvdec {
746         status = "okay";
747 };
748
749 &vop_big {
750         status = "okay";
751         rockchip,prop = <PRMRY>;
752         backlight = <&backlight>;
753         rockchip,mirror = <NO_MIRROR>;
754         rockchip,cabc_mode = <0>;
755         rockchip,fb-win-map = <FB_DEFAULT_ORDER>;
756         power_ctr: power_ctr {
757                 rockchip,debug = <0>;
758                 lcd_en: lcd-en {
759                         rockchip,power_type = <GPIO>;
760                         gpios = <&gpio0 12 GPIO_ACTIVE_HIGH>; /* GPIO_B4 = 12 */
761                         rockchip,delay = <10>;
762                 };
763
764                 lcd_cs: lcd-cs {
765                         rockchip,power_type = <GPIO>;
766                         gpios = <&gpio0 24 GPIO_ACTIVE_HIGH>; /* GPIO_D0 = 24 */
767                         rockchip,delay = <10>;
768                 };
769
770                 /* lcd_rst: lcd-rst {
771                  *      rockchip,power_type = <GPIO>;
772                  *      gpios = <&gpio3 GPIO_D6 GPIO_ACTIVE_HIGH>;
773                  *      rockchip,delay = <5>;
774                  * };
775                  */
776         };
777 };
778
779 &vopb_mmu {
780         status = "okay";
781 };
782
783 &pinctrl {
784         pmic {
785                 pmic_int_l: pmic-int-l {
786                         rockchip,pins = <0 2 RK_FUNC_GPIO &pcfg_pull_up>;
787                 };
788         };
789
790         sdio-pwrseq {
791                 wifi_enable_h: wifienable-h {
792                         rockchip,pins = <0 14 RK_FUNC_GPIO &pcfg_pull_none>;
793                 };
794         };
795
796         wireless-bluetooth {
797                 uart0_rts_gpio: uart0-rts-gpios {
798                         rockchip,pins = <3 11 RK_FUNC_GPIO &pcfg_pull_none>;
799                 };
800         };
801 };
802
803 &gmac {
804         phy-supply = <&vcc_phy>;
805         phy-mode = "rgmii";
806         clock_in_out = "input";
807         snps,reset-gpio = <&gpio2 15 GPIO_ACTIVE_LOW>;
808         snps,reset-active-low;
809         snps,reset-delays-us = <0 10000 50000>;
810         assigned-clocks = <&cru SCLK_MAC>;
811         assigned-clock-parents = <&ext_gmac>;
812         pinctrl-names = "default";
813         pinctrl-0 = <&rgmii_pins>;
814         tx_delay = <0x25>;
815         rx_delay = <0x1d>;
816         status = "okay";
817 };
818
819 &u2phy_host {
820         phy-supply = <&vbus_host>;
821 };
822
823 &dwc_control_usb {
824         otg_drv_gpio = <&gpio0 10 GPIO_ACTIVE_LOW>; /* GPIO_B2 = 10 */
825
826         rockchip,remote_wakeup;
827         rockchip,usb_irq_wakeup;
828 };
829
830 &usb_host0_ehci {
831         assigned-clocks = <&cru SCLK_USBPHY480M>;
832         assigned-clock-parents = <&u2phy>;
833         status = "okay";
834 };
835
836 &usb_host0_ohci {
837         status = "okay";
838 };
839
840 &usb_otg {
841         clocks = <&cru SCLK_OTG_PHY0>, <&cru HCLK_OTG>;
842         clock-names = "sclk_otgphy0", "otg";
843         resets = <&cru SRST_USBOTG_AHB>,
844                  <&cru SRST_USBOTG_PHY>,
845                  <&cru SRST_USBOTG_CON>;
846         reset-names = "otg_ahb", "otg_phy", "otg_controller";
847         /* 0 - Normal, 1 - Force Host, 2 - Force Device */
848         rockchip,usb-mode = <0>;
849         status = "okay";
850 };
851
852 &scr {
853         status = "disabled";
854 };
855
856 &cpu0 {
857         cpu-supply = <&syr827>;
858 };
859
860 &gpu {
861         mali-supply = <&vdd_logic>;
862         status = "okay";
863 };