ARM64: dts: rockchip: move rk3399 pmu-io-domain nodes to the pmugrf
[firefly-linux-kernel-4.4.55.git] / arch / arm64 / boot / dts / rockchip / rk3399-tve1205g.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/pinctrl/rk.h>
45 #include "rk3399.dtsi"
46 #include "rk3399-android-next.dtsi"
47 #include "rk3399-opp.dtsi"
48 #include <dt-bindings/sensor-dev.h>
49 #include <dt-bindings/pwm/pwm.h>
50
51 / {
52         compatible = "rockchip,rk3399-mid", "rockchip,rk3399";
53
54         edp_panel: edp-panel {
55                 compatible = "auo,b125han03", "panel-simple";
56                 backlight = <&backlight>;
57                 power-supply = <&vcc3v3_s0>;
58                 enable-gpios = <&gpio3 8 GPIO_ACTIVE_HIGH>;
59                 ports {
60                         panel_in_edp: endpoint {
61                                 remote-endpoint = <&edp_out_panel>;
62                         };
63                 };
64         };
65
66         vcc_sys: vcc-sys {
67                 compatible = "regulator-fixed";
68                 regulator-name = "vcc_sys";
69                 regulator-always-on;
70                 regulator-boot-on;
71                 regulator-min-microvolt = <3900000>;
72                 regulator-max-microvolt = <3900000>;
73         };
74
75         vcc3v3_sys: vcc3v3-sys {
76                 compatible = "regulator-fixed";
77                 regulator-name = "vcc3v3_sys";
78                 regulator-always-on;
79                 regulator-boot-on;
80                 regulator-min-microvolt = <3300000>;
81                 regulator-max-microvolt = <3300000>;
82         };
83
84         vcc5v0_host: vcc5v0-host-regulator {
85                 compatible = "regulator-fixed";
86                 enable-active-high;
87                 gpio = <&gpio4 25 GPIO_ACTIVE_HIGH>;
88                 pinctrl-names = "default";
89                 pinctrl-0 = <&host_vbus_drv>;
90                 regulator-name = "vcc5v0_host";
91         };
92
93         vdd_log: vdd-log {
94                 compatible = "pwm-regulator";
95                 pwms = <&pwm2 0 25000 0>;
96                 rockchip,pwm_id= <2>;
97                 rockchip,pwm_voltage = <1000000>;
98                 regulator-name = "vdd_log";
99                 regulator-min-microvolt = <750000>;
100                 regulator-max-microvolt = <1350000>;
101                 regulator-always-on;
102                 regulator-boot-on;
103         };
104
105         backlight: backlight {
106                 compatible = "pwm-backlight";
107                 pwms = <&pwm0 0 25000 PWM_POLARITY_INVERTED>;
108                 brightness-levels = <
109                         0   1   51  52  52  53  53  54
110                         54  55  55  56  56  57  57  58
111                         58  59  59  60  61  61  62  63
112                         63  64  65  65  66  67  67  68
113                         69  69  70  71  71  72  73  73
114                         74  75  75  76  77  77  78  79
115                         79  80  80  81  81  82  83  83
116                         84  85  86  86  87  88  89  89
117                         90  91  92  92  93  94  95  95
118                         96  97  98  98  99 100 101  101
119                         102 103 104 104 105 106 107 107
120                         108 109 110 110 111 112 113 113
121                         114 115 116 116 117 118 119 119
122                         120 121 122 122 123 124 125 125
123                         126 127 128 128 129 130 131 131
124                         132 133 134 134 135 136 137 137
125                         138 139 140 140 141 142 143 143
126                         144 145 146 146 147 148 149 149
127                         150 151 152 152 153 154 155 155
128                         156 157 158 158 159 160 161 161
129                         162 163 164 164 165 166 167 167
130                         168 169 170 170 171 172 173 173
131                         174 175 176 176 177 178 179 179
132                         180 181 182 182 183 184 185 185
133                         186 187 188 188 189 190 191 191
134                         216 217 218 218 219 220 221 221
135                         222 223 224 224 225 226 227 227
136                         228 229 230 230 231 232 233 233
137                         234 235 236 236 237 238 239 239
138                         240 241 242 242 243 244 245 245
139                         246 247 248 248 249 250 251 251
140                         252 253 254 254 255 255 255 255>;
141                 default-brightness-level = <200>;
142                 enable-gpios = <&gpio3 GPIO_A4 GPIO_ACTIVE_HIGH>;
143         };
144
145         vcc_phy: vcc-phy-regulator {
146                 compatible = "regulator-fixed";
147                 regulator-name = "vcc_phy";
148                 regulator-always-on;
149                 regulator-boot-on;
150         };
151
152         es8316-sound {
153                 compatible = "simple-audio-card";
154                 simple-audio-card,format = "i2s";
155                 simple-audio-card,name = "rockchip,es8316-codec";
156                 simple-audio-card,mclk-fs = <256>;
157                 simple-audio-card,widgets =
158                         "Microphone", "Mic Jack",
159                         "Headphone", "Headphone Jack";
160                 simple-audio-card,routing =
161                         "Mic Jack", "MICBIAS1",
162                         "IN1P", "Mic Jack",
163                         "Headphone Jack", "HPOL",
164                         "Headphone Jack", "HPOR";
165                 simple-audio-card,cpu {
166                         sound-dai = <&i2s0>;
167                 };
168                 simple-audio-card,codec {
169                         sound-dai = <&es8316>;
170                 };
171         };
172
173         spdif-sound {
174                 compatible = "simple-audio-card";
175                 simple-audio-card,name = "rockchip,spdif";
176                 simple-audio-card,cpu {
177                         sound-dai = <&spdif>;
178                 };
179                 simple-audio-card,codec {
180                         sound-dai = <&spdif_out>;
181                 };
182         };
183
184         spdif_out: spdif-out {
185                 compatible = "linux,spdif-dit";
186                 #sound-dai-cells = <0>;
187         };
188
189         sdio_pwrseq: sdio-pwrseq {
190                 compatible = "mmc-pwrseq-simple";
191                 clocks = <&rk808 1>;
192                 clock-names = "ext_clock";
193                 pinctrl-names = "default";
194                 pinctrl-0 = <&wifi_enable_h>;
195
196                 /*
197                  * On the module itself this is one of these (depending
198                  * on the actual card populated):
199                  * - SDIO_RESET_L_WL_REG_ON
200                  * - PDN (power down when low)
201                  */
202                 reset-gpios = <&gpio0 10 GPIO_ACTIVE_LOW>; /* GPIO0_B2 */
203         };
204
205         wireless-wlan {
206                 compatible = "wlan-platdata";
207                 rockchip,grf = <&grf>;
208                 wifi_chip_type = "ap6354";
209                 sdio_vref = <1800>;
210                 WIFI,host_wake_irq = <&gpio0 3 GPIO_ACTIVE_HIGH>; /* GPIO0_a3 */
211                 status = "okay";
212         };
213
214         wireless-bluetooth {
215                 compatible = "bluetooth-platdata";
216                 clocks = <&rk808 1>;
217                 clock-names = "ext_clock";
218                 //wifi-bt-power-toggle;
219                 uart_rts_gpios = <&gpio2 19 GPIO_ACTIVE_LOW>; /* GPIO2_C3 */
220                 pinctrl-names = "default", "rts_gpio";
221                 pinctrl-0 = <&uart0_rts>;
222                 pinctrl-1 = <&uart0_gpios>;
223                 //BT,power_gpio  = <&gpio3 19 GPIO_ACTIVE_HIGH>; /* GPIOx_xx */
224                 BT,reset_gpio    = <&gpio0 9 GPIO_ACTIVE_HIGH>; /* GPIO0_B1 */
225                 BT,wake_gpio     = <&gpio2 26 GPIO_ACTIVE_HIGH>; /* GPIO2_D2 */
226                 BT,wake_host_irq = <&gpio0 4 GPIO_ACTIVE_HIGH>; /* GPIO0_A4 */
227                 status = "okay";
228         };
229
230         uboot-charge {
231                 compatible = "rockchip,uboot-charge";
232                 rockchip,uboot-charge-on = <0>;
233                 rockchip,android-charge-on = <1>;
234         };
235
236         vibrator {
237                 compatible = "rk-vibrator-gpio";
238                 vibrator-gpio = <&gpio4 30 GPIO_ACTIVE_LOW>;
239                 status = "okay";
240         };
241
242         rk_headset {
243                 compatible = "rockchip_headset";
244                 headset_gpio = <&gpio4 28 GPIO_ACTIVE_HIGH>;
245                 pinctrl-names = "default";
246                 pinctrl-0 = <&hp_det>;
247                 io-channels = <&saradc 2>;
248         };
249 };
250
251 &rk_key {
252         compatible = "rockchip,key";
253         status = "okay";
254
255         io-channels = <&saradc 1>;
256
257         vol-up-key {
258                 linux,code = <114>;
259                 label = "volume up";
260                 rockchip,adc_value = <1>;
261         };
262
263         vol-down-key {
264                 linux,code = <115>;
265                 label = "volume down";
266                 rockchip,adc_value = <170>;
267         };
268
269         power-key {
270                 gpios = <&gpio0 5 GPIO_ACTIVE_LOW>;
271                 linux,code = <116>;
272                 label = "power";
273                 gpio-key,wakeup;
274         };
275
276         menu-key {
277                 linux,code = <59>;
278                 label = "menu";
279                 rockchip,adc_value = <746>;
280         };
281
282         home-key {
283                 linux,code = <102>;
284                 label = "home";
285                 rockchip,adc_value = <355>;
286         };
287
288         back-key {
289                 linux,code = <158>;
290                 label = "back";
291                 rockchip,adc_value = <560>;
292         };
293
294         camera-key {
295                 linux,code = <212>;
296                 label = "camera";
297                 rockchip,adc_value = <450>;
298         };
299 };
300
301 &sdmmc {
302         clock-frequency = <50000000>;
303         clock-freq-min-max = <400000 150000000>;
304         supports-sd;
305         bus-width = <4>;
306         cap-mmc-highspeed;
307         cap-sd-highspeed;
308         disable-wp;
309         num-slots = <1>;
310         //sd-uhs-sdr104;
311         vqmmc-supply = <&vcc_sd>;
312         pinctrl-names = "default";
313         pinctrl-0 = <&sdmmc_clk &sdmmc_cmd &sdmmc_cd &sdmmc_bus4>;
314         status = "okay";
315 };
316
317 &sdio0 {
318         clock-frequency = <150000000>;
319         clock-freq-min-max = <200000 150000000>;
320         supports-sdio;
321         bus-width = <4>;
322         disable-wp;
323         cap-sd-highspeed;
324         cap-sdio-irq;
325         keep-power-in-suspend;
326         mmc-pwrseq = <&sdio_pwrseq>;
327         non-removable;
328         num-slots = <1>;
329         pinctrl-names = "default";
330         pinctrl-0 = <&sdio0_bus4 &sdio0_cmd &sdio0_clk>;
331         sd-uhs-sdr104;
332         status = "okay";
333 };
334
335 &emmc_phy {
336         status = "okay";
337 };
338
339 &sdhci {
340         bus-width = <8>;
341         mmc-hs400-1_8v;
342         supports-emmc;
343         non-removable;
344         keep-power-in-suspend;
345         mmc-hs400-enhanced-strobe;
346         status = "okay";
347 };
348
349 &i2s0 {
350         status = "okay";
351         rockchip,i2s-broken-burst-len;
352         rockchip,playback-channels = <8>;
353         rockchip,capture-channels = <8>;
354         #sound-dai-cells = <0>;
355 };
356
357 &i2s2 {
358         #sound-dai-cells = <0>;
359 };
360
361 &spdif {
362         status = "okay";
363         #sound-dai-cells = <0>;
364 };
365
366 &i2c0 {
367         status = "okay";
368         i2c-scl-rising-time-ns = <180>;
369         i2c-scl-falling-time-ns = <30>;
370         clock-frequency = <400000>;
371
372         vdd_cpu_b: syr837@40 {
373                 compatible = "silergy,syr827";
374                 reg = <0x40>;
375                 vin-supply = <&vcc_sys>;
376                 regulator-compatible = "fan53555-reg";
377                 pinctrl-0 = <&vsel1_gpio>;
378                 vsel-gpios = <&gpio1 17 GPIO_ACTIVE_HIGH>;
379                 regulator-name = "vdd_cpu_b";
380                 regulator-min-microvolt = <712500>;
381                 regulator-max-microvolt = <1500000>;
382                 regulator-ramp-delay = <1000>;
383                 fcs,suspend-voltage-selector = <1>;
384                 regulator-always-on;
385                 regulator-initial-state = <3>;
386                 regulator-state-mem {
387                         regulator-off-in-suspend;
388                 };
389         };
390
391         vdd_gpu: syr828@41 {
392                 compatible = "silergy,syr828";
393                 status = "okay";
394                 reg = <0x41>;
395                 vin-supply = <&vcc_sys>;
396                 regulator-compatible = "fan53555-reg";
397                 pinctrl-0 = <&vsel2_gpio>;
398                 vsel-gpios = <&gpio1 14 GPIO_ACTIVE_HIGH>;
399                 regulator-name = "vdd_gpu";
400                 regulator-min-microvolt = <735000>;
401                 regulator-max-microvolt = <1400000>;
402                 regulator-ramp-delay = <1000>;
403                 fcs,suspend-voltage-selector = <1>;
404                 regulator-boot-on;
405                 regulator-state-mem {
406                         regulator-off-in-suspend;
407                 };
408         };
409
410         rk808: pmic@1b {
411                 compatible = "rockchip,rk808";
412                 reg = <0x1b>;
413                 interrupt-parent = <&gpio1>;
414                 interrupts = <21 IRQ_TYPE_LEVEL_LOW>;
415                 pinctrl-0 = <&pmic_int_l>;
416                 rockchip,system-power-controller;
417                 wakeup-source;
418                 #clock-cells = <1>;
419                 clock-output-names = "xin32k", "rk808-clkout2";
420
421                 vcc1-supply = <&vcc3v3_sys>;
422                 vcc2-supply = <&vcc3v3_sys>;
423                 vcc3-supply = <&vcc3v3_sys>;
424                 vcc4-supply = <&vcc3v3_sys>;
425                 vcc6-supply = <&vcc3v3_sys>;
426                 vcc7-supply = <&vcc3v3_sys>;
427                 vcc8-supply = <&vcc3v3_sys>;
428                 vcc9-supply = <&vcc3v3_sys>;
429                 vcc10-supply = <&vcc3v3_sys>;
430                 vcc11-supply = <&vcc3v3_sys>;
431                 vcc12-supply = <&vcc3v3_sys>;
432                 vddio-supply = <&vcc1v8_pmu>;
433
434                 regulators {
435                         vdd_center: DCDC_REG1 {
436                                 regulator-always-on;
437                                 regulator-boot-on;
438                                 regulator-min-microvolt = <750000>;
439                                 regulator-max-microvolt = <1350000>;
440                                 regulator-ramp-delay = <6001>;
441                                 regulator-name = "vdd_center";
442                                 regulator-state-mem {
443                                         regulator-off-in-suspend;
444                                 };
445                         };
446
447                         vdd_cpu_l: DCDC_REG2 {
448                                 regulator-always-on;
449                                 regulator-boot-on;
450                                 regulator-min-microvolt = <750000>;
451                                 regulator-max-microvolt = <1350000>;
452                                 regulator-ramp-delay = <6001>;
453                                 regulator-name = "vdd_cpu_l";
454                                 regulator-state-mem {
455                                         regulator-off-in-suspend;
456                                 };
457                         };
458
459                         vcc_ddr: DCDC_REG3 {
460                                 regulator-always-on;
461                                 regulator-boot-on;
462                                 regulator-name = "vcc_ddr";
463                                 regulator-state-mem {
464                                         regulator-on-in-suspend;
465                                 };
466                         };
467
468                         vcc_1v8: DCDC_REG4 {
469                                 regulator-always-on;
470                                 regulator-boot-on;
471                                 regulator-min-microvolt = <1800000>;
472                                 regulator-max-microvolt = <1800000>;
473                                 regulator-name = "vcc_1v8";
474                                 regulator-state-mem {
475                                         regulator-on-in-suspend;
476                                         regulator-suspend-microvolt = <1800000>;
477                                 };
478                         };
479
480                         vcc1v8_dvp: LDO_REG1 {
481                                 regulator-always-on;
482                                 regulator-boot-on;
483                                 regulator-min-microvolt = <1800000>;
484                                 regulator-max-microvolt = <1800000>;
485                                 regulator-name = "vcc1v8_dvp";
486                                 regulator-state-mem {
487                                         regulator-off-in-suspend;
488                                 };
489                         };
490
491                         vcc3v0_tp: LDO_REG2 {
492                                 regulator-always-on;
493                                 regulator-boot-on;
494                                 regulator-min-microvolt = <3000000>;
495                                 regulator-max-microvolt = <3000000>;
496                                 regulator-name = "vcc3v0_tp";
497                                 regulator-state-mem {
498                                         regulator-off-in-suspend;
499                                 };
500                         };
501
502                         vcc1v8_pmu: LDO_REG3 {
503                                 regulator-always-on;
504                                 regulator-boot-on;
505                                 regulator-min-microvolt = <1800000>;
506                                 regulator-max-microvolt = <1800000>;
507                                 regulator-name = "vcc1v8_pmu";
508                                 regulator-state-mem {
509                                         regulator-on-in-suspend;
510                                         regulator-suspend-microvolt = <1800000>;
511                                 };
512                         };
513
514                         vcc_sd: LDO_REG4 {
515                                 regulator-always-on;
516                                 regulator-boot-on;
517                                 regulator-min-microvolt = <1800000>;
518                                 regulator-max-microvolt = <3300000>;
519                                 regulator-name = "vcc_sd";
520                                 regulator-state-mem {
521                                         regulator-on-in-suspend;
522                                         regulator-suspend-microvolt = <3300000>;
523                                 };
524                         };
525
526                         vcca3v0_codec: LDO_REG5 {
527                                 regulator-always-on;
528                                 regulator-boot-on;
529                                 regulator-min-microvolt = <3000000>;
530                                 regulator-max-microvolt = <3000000>;
531                                 regulator-name = "vcca3v0_codec";
532                                 regulator-state-mem {
533                                         regulator-off-in-suspend;
534                                 };
535                         };
536
537                         vcc_1v5: LDO_REG6 {
538                                 regulator-always-on;
539                                 regulator-boot-on;
540                                 regulator-min-microvolt = <1500000>;
541                                 regulator-max-microvolt = <1500000>;
542                                 regulator-name = "vcc_1v5";
543                                 regulator-state-mem {
544                                         regulator-on-in-suspend;
545                                         regulator-suspend-microvolt = <1500000>;
546                                 };
547                         };
548
549                         vcca1v8_codec: LDO_REG7 {
550                                 regulator-always-on;
551                                 regulator-boot-on;
552                                 regulator-min-microvolt = <1800000>;
553                                 regulator-max-microvolt = <1800000>;
554                                 regulator-name = "vcca1v8_codec";
555                                 regulator-state-mem {
556                                         regulator-off-in-suspend;
557                                 };
558                         };
559
560                         vcc_3v0: LDO_REG8 {
561                                 regulator-always-on;
562                                 regulator-boot-on;
563                                 regulator-min-microvolt = <3000000>;
564                                 regulator-max-microvolt = <3000000>;
565                                 regulator-name = "vcc_3v0";
566                                 regulator-state-mem {
567                                         regulator-on-in-suspend;
568                                         regulator-suspend-microvolt = <3000000>;
569                                 };
570                         };
571
572                         vcc3v3_s3: SWITCH_REG1 {
573                                 regulator-always-on;
574                                 regulator-boot-on;
575                                 regulator-name = "vcc3v3_s3";
576                                 regulator-state-mem {
577                                         regulator-off-in-suspend;
578                                 };
579                         };
580
581                         vcc3v3_s0: SWITCH_REG2 {
582                                 regulator-always-on;
583                                 regulator-boot-on;
584                                 regulator-name = "vcc3v3_s0";
585                                 regulator-state-mem {
586                                         regulator-off-in-suspend;
587                                 };
588                         };
589                 };
590         };
591 };
592
593 &i2c1 {
594         status = "okay";
595         i2c-scl-rising-time-ns = <140>;
596         i2c-scl-falling-time-ns = <30>;
597
598         es8316: es8316@10 {
599                 #sound-dai-cells = <0>;
600                 compatible = "everest,es8316";
601                 reg = <0x11>;
602                 clocks = <&cru SCLK_I2S_8CH_OUT>;
603                 clock-names = "mclk";
604                 spk-con-gpio = <&gpio0 11 GPIO_ACTIVE_HIGH>;
605         };
606 };
607
608 &i2c5 {
609         status = "okay";
610         i2c-scl-rising-time-ns = <345>;
611         i2c-scl-falling-time-ns = <11>;
612         clock-frequency = <400000>;
613
614         touchpad: touchpad@2c {
615                 compatible = "hid-over-i2c";
616                 interrupt-parent = <&gpio1>;
617                 interrupts = <GPIO_C2 IRQ_TYPE_LEVEL_LOW>;
618                 pinctrl-names = "default";
619                 pinctrl-0 = <&touchpad_irq_gpio>;
620                 reg = <0x2c>;
621                 hid-descr-addr = <0x002c>;
622         };
623 };
624
625 &i2c6 {
626         status = "okay";
627         i2c-scl-rising-time-ns = <345>;
628         i2c-scl-falling-time-ns = <11>;
629         clock-frequency = <400000>;
630
631         fusb1: fusb30x@22 {
632                 compatible = "fairchild,fusb302";
633                 reg = <0x22>;
634                 pinctrl-names = "default";
635                 pinctrl-0 = <&fusb1_int>;
636                 vbus-5v-gpios = <&gpio4 GPIO_D6 GPIO_ACTIVE_LOW>;
637                 int-n-gpios = <&gpio1 GPIO_B5 GPIO_ACTIVE_HIGH>;
638                 status = "okay";
639         };
640 };
641
642 &i2c7 {
643         status = "okay";
644         i2c-scl-rising-time-ns = <345>;
645         i2c-scl-falling-time-ns = <11>;
646         clock-frequency = <400000>;
647
648         fusb0: fusb30x@22 {
649                 compatible = "fairchild,fusb302";
650                 reg = <0x22>;
651                 pinctrl-names = "default";
652                 pinctrl-0 = <&fusb0_int>;
653                 vbus-5v-gpios = <&gpio4 GPIO_D5 GPIO_ACTIVE_LOW>;
654                 int-n-gpios = <&gpio1 GPIO_A2 GPIO_ACTIVE_HIGH>;
655                 status = "okay";
656         };
657 };
658
659 &io_domains {
660         status = "okay";
661         bt656-supply = <&vcc_3v0>;
662         audio-supply = <&vcca1v8_codec>;
663         sdmmc-supply = <&vcc_sd>;
664         gpio1830-supply = <&vcc_3v0>;
665 };
666
667 &cpu_l0 {
668         cpu-supply = <&vdd_cpu_l>;
669 };
670
671 &cpu_l1 {
672         cpu-supply = <&vdd_cpu_l>;
673 };
674
675 &cpu_l2 {
676         cpu-supply = <&vdd_cpu_l>;
677 };
678
679 &cpu_l3 {
680         cpu-supply = <&vdd_cpu_l>;
681 };
682
683 &cpu_b0 {
684         cpu-supply = <&vdd_cpu_b>;
685 };
686
687 &cpu_b1 {
688         cpu-supply = <&vdd_cpu_b>;
689 };
690
691 &gpu {
692         status = "okay";
693         mali-supply = <&vdd_gpu>;
694 };
695
696 &rga {
697         status = "okay";
698 };
699
700 &spi1 {
701         status = "disabled";
702 };
703
704 &tcphy0 {
705         extcon = <&fusb0>;
706         status = "okay";
707 };
708
709 &tcphy1 {
710         extcon = <&fusb1>;
711         status = "okay";
712 };
713
714 &tsadc {
715         rockchip,hw-tshut-mode = <1>; /* tshut mode 0:CRU 1:GPIO */
716         rockchip,hw-tshut-polarity = <1>; /* tshut polarity 0:LOW 1:HIGH */
717         status = "okay";
718 };
719
720 &u2phy0 {
721         status = "okay";
722         extcon = <&fusb0>;
723
724         u2phy0_otg: otg-port {
725                 status = "okay";
726         };
727
728         u2phy0_host: host-port {
729                 phy-supply = <&vcc5v0_host>;
730                 status = "okay";
731         };
732 };
733
734 &u2phy1 {
735         status = "okay";
736         extcon = <&fusb1>;
737
738         u2phy1_otg: otg-port {
739                 status = "okay";
740         };
741
742         u2phy1_host: host-port {
743                 phy-supply = <&vcc5v0_host>;
744                 status = "okay";
745         };
746 };
747
748 &uart0 {
749         pinctrl-names = "default";
750         pinctrl-0 = <&uart0_xfer &uart0_cts>;
751         status = "okay";
752 };
753
754 &uart2 {
755         status = "okay";
756 };
757
758 &usb_host0_ehci {
759         status = "okay";
760 };
761
762 &usb_host0_ohci {
763         status = "okay";
764 };
765
766 &usbdrd3_0 {
767         extcon = <&fusb0>;
768         status = "okay";
769 };
770
771 &usbdrd_dwc3_0 {
772         status = "okay";
773 };
774
775 &usb_host1_ehci {
776         status = "okay";
777 };
778
779 &usb_host1_ohci {
780         status = "okay";
781 };
782
783 &usbdrd3_1 {
784         extcon = <&fusb1>;
785         status = "okay";
786 };
787
788 &usbdrd_dwc3_1 {
789         status = "okay";
790 };
791
792 &pmu_io_domains {
793         status = "okay";
794         pmu1830-supply = <&vcc_1v8>;
795 };
796
797 &pwm0 {
798         status = "okay";
799 };
800
801 &pwm2 {
802         status = "okay";
803 };
804
805 &saradc {
806         status = "okay";
807 };
808
809 &pinctrl {
810         sdio-pwrseq {
811                 wifi_enable_h: wifi-enable-h {
812                         rockchip,pins = <0 10 RK_FUNC_GPIO &pcfg_pull_none>;
813                 };
814         };
815
816         wireless-bluetooth {
817                 uart0_gpios: uart0-gpios {
818                         rockchip,pins = <2 19 RK_FUNC_GPIO &pcfg_pull_none>;
819                 };
820         };
821
822         pmic {
823                 pmic_int_l: pmic-int-l {
824                         rockchip,pins =
825                                 <1 21 RK_FUNC_GPIO &pcfg_pull_up>;
826                 };
827                 vsel1_gpio: vsel1-gpio {
828                         rockchip,pins =
829                                 <1 17 RK_FUNC_GPIO &pcfg_pull_down>;
830                 };
831                 vsel2_gpio: vsel2-gpio {
832                         rockchip,pins =
833                                 <1 14 RK_FUNC_GPIO &pcfg_pull_down>;
834                 };
835         };
836
837         headphone {
838                 hp_det: hp-det {
839                         rockchip,pins = <4 28 RK_FUNC_GPIO &pcfg_pull_up>;
840                 };
841         };
842
843         touchpad {
844                 touchpad_irq_gpio: touchpad-irq-gpio {
845                         rockchip,pins = <1 GPIO_C2 RK_FUNC_GPIO &pcfg_pull_up>;
846                 };
847         };
848
849         usb2 {
850                 host_vbus_drv: host-vbus-drv {
851                         rockchip,pins =
852                                 <4 25 RK_FUNC_GPIO &pcfg_pull_none>;
853                 };
854         };
855
856         fusb30x {
857                 fusb0_int: fusb0-int {
858                         rockchip,pins =
859                                 <1 GPIO_A2 RK_FUNC_GPIO &pcfg_pull_up>;
860                 };
861                 fusb1_int: fusb1-int {
862                         rockchip,pins =
863                                 <1 GPIO_B5 RK_FUNC_GPIO &pcfg_pull_up>;
864                 };
865         };
866 };
867
868 &edp {
869         status = "okay";
870
871         ports {
872                 edp_out: port@1 {
873                         reg = <1>;
874                         #address-cells = <1>;
875                         #size-cells = <0>;
876                         edp_out_panel: endpoint@0 {
877                                 reg = <0>;
878                                 remote-endpoint = <&panel_in_edp>;
879                         };
880                 };
881         };
882 };
883
884 &mipi_dsi {
885         status = "disabled";
886 };
887
888 &vpu {
889         status = "okay";
890 };
891
892 &rkvdec {
893         status = "okay";
894 };
895
896 &route_edp {
897         status = "okay";
898         logo,mode = "center";
899 };