Merge remote-tracking branch 'origin/develop-3.10-next' into develop-3.10
[firefly-linux-kernel-4.4.55.git] / arch / arm / boot / dts / rk3288-tb_8846.dts
1 /dts-v1/;
2
3 #include "rk3288.dtsi"
4 //#include "lcd-b101ew05.dtsi"
5 #include "lcd-F402.dtsi"
6 / {
7         fiq-debugger {
8                 status = "okay";
9         };
10
11     wireless-wlan {
12         compatible = "wlan-platdata";
13
14         wifi_chip_type = "";
15         sdio_vref = <1800>; //1800mv or 3300mv
16
17         //power_ctrl_by_pmu;
18         power_pmu_regulator = "act_ldo3";
19         power_pmu_enable_level = <1>; //1->HIGH, 0->LOW
20
21         //vref_ctrl_enable;
22         //vref_ctrl_gpio = <&gpio0 GPIO_A2 GPIO_ACTIVE_HIGH>;
23         vref_pmu_regulator = "act_ldo3";
24         vref_pmu_enable_level = <1>; //1->HIGH, 0->LOW
25
26         WIFI,poweren_gpio = <&gpio4 GPIO_D4 GPIO_ACTIVE_HIGH>;
27         WIFI,host_wake_irq = <&gpio4 GPIO_D6 GPIO_ACTIVE_HIGH>;
28         //WIFI,reset_gpio = <&gpio0 GPIO_A2 GPIO_ACTIVE_LOW>;
29
30         status = "okay";
31     };
32
33     wireless-bluetooth {
34         compatible = "bluetooth-platdata";
35
36         //wifi-bt-power-toggle;
37
38         uart_rts_gpios = <&gpio4 GPIO_C3 GPIO_ACTIVE_LOW>;
39         pinctrl-names = "default","rts_gpio";
40         pinctrl-0 = <&uart0_rts>;
41         pinctrl-1 = <&uart0_rts_gpio>;
42
43         BT,power_gpio = <&gpio4 GPIO_D3 GPIO_ACTIVE_HIGH>;
44         BT,reset_gpio = <&gpio4 GPIO_D5 GPIO_ACTIVE_HIGH>;
45         BT,wake_gpio = <&gpio4 GPIO_D2 GPIO_ACTIVE_HIGH>;
46         BT,wake_host_irq = <&gpio4 GPIO_D7 GPIO_ACTIVE_LOW>;
47
48         status = "okay";
49     };
50
51     hallsensor {
52                compatible = "hall_och165t";
53                type = <SENSOR_TYPE_HALL>;
54                irq-gpio = <&gpio0 GPIO_A6 IRQ_TYPE_EDGE_BOTH>;
55      };
56
57         backlight {
58                 compatible = "pwm-backlight";
59                 pwms = <&pwm0 0 25000>;
60                 brightness-levels = <255 254 253 252 251 250 249 248 247 246 245 244 243 242 241 240
61                      239 238 237 236 235 234 233 232 231 230 229 228 227 226 225 224 223 222 221 220
62                      219 218 217 216 215 214 213 212 211 210 209 208 207 206 205 204 203 202 201 200
63                      199 198 197 196 195 194 193 192 191 190 189 188 187 186 185 184 183 182 181 180
64                      179 178 177 176 175 174 173 172 171 170 169 168 167 166 165 164 163 162 161 160
65                      159 158 157 156 155 154 153 152 151 150 149 148 147 146 145 144 143 142 141 140
66                      139 138 137 136 135 134 133 132 131 130 129 128 127 126 125 124 123 122 121 120
67                      119 118 117 116 115 114 113 112 111 110 109 108 107 106 105 104 103 102 101 100
68                      99 98 97 96 95 94 93 92 91 90 89 88 87 86 85 84 83 82 81 80 79 78 77 76 75 74 73 72 71 70
69                      69 68 67 66 65 64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 45 44 43 42 41 40
70                      39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10
71                      9 8 7 6 5 4 3 2 1 0>;
72                 default-brightness-level = <200>;
73                 enable-gpios = <&gpio7 GPIO_A2 GPIO_ACTIVE_HIGH>;
74         };
75
76         pwm_regulator {
77                 compatible = "rockchip_pwm_regulator";
78                 pwms = <&pwm1 0 2000>;
79                 rockchip,pwm_id= <1>;
80                 rockchip,pwm_voltage_map= <925000 950000 975000 1000000 1025000 1050000 1075000 1100000 1125000 1150000 1175000 1200000 1225000 1250000 1275000 1300000 1325000 1350000 1375000 1400000>;
81                 rockchip,pwm_voltage= <1000000>;
82                 rockchip,pwm_min_voltage= <925000>;
83                 rockchip,pwm_max_voltage= <1400000>;
84                 rockchip,pwm_suspend_voltage= <950000>;
85                 rockchip,pwm_coefficient= <475>;
86                 regulators {
87                         #address-cells = <1>;
88                         #size-cells = <0>;
89                         pwm_reg0: regulator@0 {
90                                 regulator-compatible = "pwm_dcdc1";
91                                 regulator-name= "vdd_logic";
92                                 regulator-min-microvolt = <925000>;
93                                 regulator-max-microvolt = <1400000>;
94                                 regulator-always-on;
95                                 regulator-boot-on;
96                         };
97                 };
98         };
99
100         codec_hdmi_i2s: codec-hdmi-i2s {
101                 compatible = "hdmi-i2s";
102         };
103
104         codec_hdmi_spdif: codec-hdmi-spdif {
105                 compatible = "hdmi-spdif";
106         };
107
108         rockchip-hdmi-i2s {
109                 compatible = "rockchip-hdmi-i2s";
110                 dais {
111                         dai0 {
112                                 audio-codec = <&codec_hdmi_i2s>;
113                                 i2s-controller = <&i2s>;
114                                 format = "i2s";
115                                 //continuous-clock;
116                                 //bitclock-inversion;
117                                 //frame-inversion;
118                                 //bitclock-master;
119                                 //frame-master;
120                         };
121                 };
122         };
123         
124         rockchip-hdmi-spdif {
125                 compatible = "rockchip-hdmi-spdif";
126                 dais {
127                         dai0 {
128                                 audio-codec = <&codec_hdmi_spdif>;
129                                 i2s-controller = <&spdif>;
130                         };
131                 };
132         };
133
134         rockchip-rt5631 {
135                 compatible = "rockchip-rt5631";
136                 dais {
137                         dai0 {
138                                 audio-codec = <&rt5631>;
139                                 i2s-controller = <&i2s>;
140                                 format = "i2s";
141                                 //continuous-clock;
142                                 //bitclock-inversion;
143                                 //frame-inversion;
144                                 //bitclock-master;
145                                 //frame-master;
146                         };
147                 };
148         };
149
150         rockchip-rt3224 {
151                 compatible = "rockchip-rt3261";
152                 dais {
153                         dai0 {
154                                 audio-codec = <&rt3261>;
155                                 i2s-controller = <&i2s>;
156                                 format = "i2s";
157                                 //continuous-clock;
158                                 //bitclock-inversion;
159                                 //frame-inversion;
160                                 //bitclock-master;
161                                 //frame-master;
162                         };
163                         dai1 {
164                                 audio-codec = <&rt3261>;
165                                 i2s-controller = <&i2s>;
166                                 format = "dsp_a";
167                                 //continuous-clock;
168                                 bitclock-inversion;
169                                 //frame-inversion;
170                                 //bitclock-master;
171                                 //frame-master;
172                         };
173                 };
174         };
175
176         usb_control {
177                 compatible = "rockchip,rk3288-usb-control";
178
179                 host_drv_gpio = <&gpio0 GPIO_B6 GPIO_ACTIVE_LOW>;
180                 otg_drv_gpio = <&gpio0 GPIO_B4 GPIO_ACTIVE_LOW>;
181
182                 rockchip,remote_wakeup;
183                 rockchip,usb_irq_wakeup;
184         };
185         chosen {
186                 bootargs = "vmalloc=512M";
187         };
188 };
189
190 &gmac {
191 //      power_ctl_by = "gpio";  //"gpio" "pmu"
192         power-gpio = <&gpio0 GPIO_A6 GPIO_ACTIVE_HIGH>;
193 //      power-pmu = "act_ldo"
194 //      reset-gpio = <&gpio4 GPIO_A7 GPIO_ACTIVE_LOW>;
195 };
196
197 &pinctrl {
198         //used for init some gpio
199         init-gpios = <&gpio0 GPIO_A6 GPIO_ACTIVE_HIGH
200                         /*&gpio0 GPIO_C2 GPIO_ACTIVE_HIGH */
201                         /*&gpio7 GPIO_B7 GPIO_ACTIVE_LOW */>;
202         
203         gpio0_gpio {
204                         gpio0_c2: gpio0-c2 {
205                                 rockchip,pins = <GPIO0_C2>;
206                                 rockchip,pull = <VALUE_PULL_DOWN>;
207                         };
208
209                         //to add
210                 };
211                 
212         gpio7_gpio {
213                         gpio7_a7: gpio7-a7 {
214                                 rockchip,pins = <GPIO7_A7>;
215                                 rockchip,pull = <VALUE_PULL_DOWN>;
216                         };
217
218                         //to add
219                 };
220                 
221         //could add other pinctrl definition such as gpio
222
223         // gmac drive strength
224         gpio4_gmac {
225                 mac_clk: mac-clk {
226                         rockchip,drive = <VALUE_DRV_12MA>;
227                 };
228
229                 mac_txpins: mac-txpins {
230                         rockchip,drive = <VALUE_DRV_12MA>;
231                 };
232
233                 mac_rxpins: mac-rxpins {
234                         rockchip,drive = <VALUE_DRV_12MA>;
235                 };
236
237                 mac_crs: mac-crs {
238                         rockchip,drive = <VALUE_DRV_12MA>;
239                 };
240
241                 mac_mdpins: mac-mdpins {
242                         rockchip,drive = <VALUE_DRV_12MA>;
243                 };
244         };
245 };
246
247 &nandc0 {
248         status = "disabled"; // used nand set "disabled" ,used emmc set "okay"
249 };
250 &nandc1 {
251         status = "disabled"; // used nand set "disabled" ,used emmc set "okay"
252 };   
253
254 &nandc0reg {
255         status = "okay"; // used nand set "disabled" ,used emmc set "okay"
256 };
257
258 &emmc {
259         clock-frequency = <100000000>;
260         clock-freq-min-max = <400000 100000000>;
261
262         supports-highspeed;
263         supports-emmc;
264         bootpart-no-access;
265
266         //supports-DDR_MODE; //you should set the two value in your project. only close in RK3288-SDK board.
267         //caps2-mmc-hs200;
268
269         ignore-pm-notify;
270         keep-power-in-suspend;
271         
272         //poll-hw-reset 
273         status = "okay";
274 };
275     
276 &sdmmc {
277                 clock-frequency = <50000000>;
278                 clock-freq-min-max = <400000 50000000>;
279                 supports-highspeed;
280                 supports-sd;
281                 broken-cd;
282                 card-detect-delay = <200>;
283
284                 ignore-pm-notify;
285                 keep-power-in-suspend;
286         
287                 vmmc-supply = <&ldo1_reg>;
288                 status = "okay";
289 };
290                 
291 &sdio {
292                 clock-frequency = <50000000>;
293                 clock-freq-min-max = <200000 50000000>;
294                 supports-highspeed;
295                 supports-sdio;
296                 ignore-pm-notify;
297                 keep-power-in-suspend;
298                 //cap-sdio-irq;
299                 status = "okay";
300 };
301
302 &spi0 {
303         status = "okay";
304         max-freq = <48000000>;  
305         /*
306         spi_test@00 {
307                 compatible = "rockchip,spi_test_bus0_cs0";
308                 reg = <0>;
309                 spi-max-frequency = <24000000>;
310                 //spi-cpha;
311                 //spi-cpol;
312                 poll_mode = <0>;
313                 type = <0>;
314                 enable_dma = <0>;
315
316         };
317
318         spi_test@01 {
319                 compatible = "rockchip,spi_test_bus0_cs1";
320                 reg = <1>;
321                 spi-max-frequency = <24000000>;
322                 spi-cpha;
323                 spi-cpol;
324                 poll_mode = <0>;
325                 type = <0>;
326                 enable_dma = <0>;               
327         };
328         */
329 };
330
331 &spi1 {
332         status = "okay";
333         max-freq = <48000000>;
334         /*
335         spi_test@10 {
336                 compatible = "rockchip,spi_test_bus1_cs0";
337                 reg = <0>;
338                 spi-max-frequency = <24000000>;
339                 //spi-cpha;
340                 //spi-cpol;
341                 poll_mode = <0>;
342                 type = <0>;
343                 enable_dma = <0>;
344         };
345
346         */
347 };
348
349 &spi2 {
350         status = "okay";
351         max-freq = <48000000>;
352         /*
353         spi_test@20 {
354                 compatible = "rockchip,spi_test_bus2_cs0";
355                 reg = <0>;
356                 spi-max-frequency = <24000000>;
357                 //spi-cpha;
358                 //spi-cpol;
359                 poll_mode = <0>;
360                 type = <0>;
361                 enable_dma = <0>;
362         };
363
364         spi_test@21 {
365                 compatible = "rockchip,spi_test_bus2_cs1";
366                 reg = <1>;
367                 spi-max-frequency = <24000000>;
368                 //spi-cpha;
369                 //spi-cpol;
370                 poll_mode = <0>;
371                 type = <0>;
372                 enable_dma = <0>;
373         };
374         */
375 };
376
377 &uart_bt {
378         status = "okay";
379         dma-names = "!tx", "!rx";
380         pinctrl-0 = <&uart0_xfer &uart0_cts>;
381 };
382
383 &i2c0 {
384         status = "okay";
385         rk808: rk808@1b {
386                 reg = <0x1b>;
387                 status = "okay";
388         };
389         rk818: rk818@1c {
390                 reg = <0x1c>;
391                 status = "okay";
392         };
393                 syr827: syr827@40 {
394                 compatible = "silergy,syr82x";
395         reg = <0x40>;
396                 status = "okay";
397                 regulators {
398                         #address-cells = <1>;
399                         #size-cells = <0>;      
400                         syr827_dc1: regulator@0 {
401                         reg = <0>;
402                         regulator-compatible = "syr82x_dcdc1";
403                         regulator-name = "vdd_arm";
404                         regulator-min-microvolt = <712500>;
405                         regulator-max-microvolt = <1500000>;
406                         regulator-always-on;
407                         regulator-boot-on;
408                         regulator-initial-mode = <0x2>;
409                         regulator-initial-state = <3>;
410                         regulator-state-mem {
411                                 regulator-state-mode = <0x2>;
412                                 regulator-state-disabled;
413                                 regulator-state-uv = <900000>;
414                         };
415                 };
416            };
417         };
418         syr828: syr828@41 {
419                 compatible = "silergy,syr82x";
420                 reg = <0x41>;
421                 status = "okay";
422                 regulators {
423                         #address-cells = <1>;
424                         #size-cells = <0>;      
425                         syr828_dc1: regulator@0 {
426                         reg = <0>;
427                         regulator-compatible = "syr82x_dcdc1";
428                         regulator-name = "vdd_gpu";
429                         regulator-min-microvolt = <712500>;
430                         regulator-max-microvolt = <1500000>;
431                         regulator-always-on;
432                 regulator-boot-on;
433                         regulator-initial-mode = <0x2>;
434                         regulator-initial-state = <3>;
435                         regulator-state-mem {
436                                 regulator-state-mode = <0x2>;
437                                 regulator-state-enabled;
438                                 regulator-state-uv = <900000>;
439                         };      
440                 };
441            };
442         };
443         act8846: act8846@5a {
444                 reg = <0x5a>;
445                 status = "okay";
446         };
447
448         ricoh619: ricoh619@32 {
449                 reg = <0x32>;
450                 status = "okay";
451         };
452         bq24296: bq24296@6b {
453                 compatible = "ti,bq24296";
454                 reg = <0x6b>;
455                 gpios = <&gpio0 GPIO_A7 GPIO_ACTIVE_HIGH>,<&gpio0 GPIO_B0 GPIO_ACTIVE_HIGH>;
456                 bq24296,chg_current = <1000 2000 3000>;
457                 status = "okay";
458         };
459         
460         bq27320: bq27320@55 {
461                 compatible = "ti,bq27320";
462                 reg = <0x55>;
463         /*   gpios = <&gpio0 GPIO_A7 GPIO_ACTIVE_HIGH>; */
464                 status = "okay";
465         };
466
467         CW2015@62 {
468                 compatible = "cw201x";
469                 reg = <0x62>;
470                 dc_det_gpio = <&gpio0 GPIO_B0 GPIO_ACTIVE_LOW>;
471                 bat_low_gpio = <&gpio0 GPIO_A7 GPIO_ACTIVE_LOW>;
472                 chg_ok_gpio = <&gpio0 GPIO_B1 GPIO_ACTIVE_HIGH>;
473                 bat_config_info = <0x15 0x42 0x60 0x59 0x52 0x58 0x4D 0x48 0x48 0x44 0x44 0x46 0x49 0x48 0x32
474                         0x24 0x20 0x17 0x13 0x0F 0x19 0x3E 0x51 0x45 0x08 0x76 0x0B 0x85 0x0E 0x1C 0x2E 0x3E 0x4D 0x52 0x52
475                         0x57 0x3D 0x1B 0x6A 0x2D 0x25 0x43 0x52 0x87 0x8F 0x91 0x94 0x52 0x82 0x8C 0x92 0x96 0xFF 0x7B 0xBB
476                         0xCB 0x2F 0x7D 0x72 0xA5 0xB5 0xC1 0x46 0xAE>;
477                 is_dc_charge = <1>;
478                 is_usb_charge = <0>;
479         };
480         
481         rtc@51 {
482                 compatible = "rtc,hym8563";
483                 reg = <0x51>;
484                 irq_gpio = <&gpio0 GPIO_A4 IRQ_TYPE_EDGE_FALLING>;
485         };
486
487 };
488
489 &i2c1 {
490         status = "okay";
491                 
492         mpu6050:mpu@68{
493                 compatible = "mpu6050";
494                 reg = <0x68>;
495                 mpu-int_config = <0x10>;
496                 mpu-level_shifter = <0>;
497                 mpu-orientation = <0 1 0 1 0 0 0 0 1>;  
498                 orientation-x= <0>;
499                 orientation-y= <1>;
500                 orientation-z= <1>;
501                 irq-gpio = <&gpio8 GPIO_A0 IRQ_TYPE_LEVEL_LOW>;                 
502                 mpu-debug = <0>;
503         };
504         
505
506         ak8963:compass@0d{
507                 compatible = "mpu_ak8963";
508                 reg = <0x0d>;
509                 compass-bus = <0>;
510                 compass-adapt_num = <0>;
511                 compass-orientation = <1 0 0 0 1 0 0 0 1>;
512                 orientation-x= <0>;
513                 orientation-y= <0>;
514                 orientation-z= <1>;     
515                 compass-debug = <1>;
516                 status = "okay";
517         };      
518
519 };
520
521 &i2c2 {
522         status = "okay";
523         rt5631: rt5631@1a {
524                 compatible = "rt5631";
525                 reg = <0x1a>;
526         };
527         es8323: es8323@10 {
528                 compatible = "es8323";
529                 reg = <0x10>;
530         };
531         rt3261: rt3261@1c {
532                 compatible = "rt3261";
533                 reg = <0x1c>;
534         //      codec-en-gpio = <0>;//sdk default high level
535                 spk-num= <2>;
536                 modem-input-mode = <1>;
537                 lout-to-modem_mode = <1>;
538                 spk-amplify = <2>;
539                 playback-if1-data_control = <0>;
540                 playback-if2-data_control = <0>;
541         };
542         rt5616: rt5616@1b {
543                 compatible = "rt5616";
544                 reg = <0x1b>;
545         };
546 };
547
548 &i2c3 {
549         status = "okay";
550 };
551
552 &i2c4 {
553         status = "okay";
554         ts@55 {
555                 compatible = "goodix,gt8xx";
556                 reg = <0x55>;
557                 touch-gpio = <&gpio7 GPIO_A6 IRQ_TYPE_LEVEL_LOW>;
558                 reset-gpio = <&gpio7 GPIO_A5 GPIO_ACTIVE_LOW>;
559                 //power-gpio = <&gpio0 GPIO_C5 GPIO_ACTIVE_LOW>;
560                 max-x = <1280>;
561                 max-y = <800>;
562         };
563         
564         ts@01 {
565                 compatible = "ct,vtl_ts";
566                 reg = <0x01>;
567                 screen_max_x = <1536>;
568                 screen_max_y = <2048>;
569                 irq_gpio_number = <&gpio7 GPIO_A6 IRQ_TYPE_LEVEL_LOW>;
570                 rst_gpio_number = <&gpio7 GPIO_A5 GPIO_ACTIVE_HIGH>;
571         };
572 };
573
574 &i2c5 {
575         status = "disable";
576 };
577
578 &fb {
579         rockchip,disp-mode = <DUAL>;
580         rockchip,uboot-logo-on = <1>;
581 };
582
583 &rk_screen {
584          display-timings = <&disp_timings>;
585 };
586
587 /*lcdc0 as PRMRY(LCD),lcdc1 as EXTEND(HDMI)*/
588 &lcdc0 {
589         status = "okay";
590         rockchip,mirror = <NO_MIRROR>;
591         rockchip,cabc_mode = <0>;
592         power_ctr: power_ctr {
593                 rockchip,debug = <0>;
594                 lcd_en:lcd_en {
595                         rockchip,power_type = <GPIO>;
596                         gpios = <&gpio7 GPIO_A3 GPIO_ACTIVE_HIGH>;
597                         rockchip,delay = <10>;
598                 };
599                 
600                 lcd_cs:lcd_cs {
601                         rockchip,power_type = <GPIO>;
602                         gpios = <&gpio7 GPIO_A4 GPIO_ACTIVE_HIGH>;
603                         rockchip,delay = <10>;
604                 };
605
606                 /*lcd_rst:lcd_rst {
607                         rockchip,power_type = <GPIO>;
608                         gpios = <&gpio3 GPIO_D6 GPIO_ACTIVE_HIGH>;
609                         rockchip,delay = <5>;
610                 };*/
611
612         };
613 };
614
615 &lcdc1 {
616         status = "okay";
617         rockchip,mirror = <ROTATE_270>;
618
619 };
620
621 &hdmi {
622         status = "okay";
623         rockchips,hdmi_audio_source = <0>;
624 };
625
626 &adc {
627         status = "okay";
628
629         rockchip_headset {
630                 compatible = "rockchip_headset";
631                 headset_gpio = <&gpio7 GPIO_A7 GPIO_ACTIVE_LOW>;
632                 pinctrl-names = "default";
633                 pinctrl-0 = <&gpio7_a7>;
634                 io-channels = <&adc 2>; 
635        /*
636                hook_gpio = ;
637                hook_down_type = ; //interrupt hook key down status 
638                 */       
639        };
640
641         key {
642                 compatible = "rockchip,key";
643                 io-channels = <&adc 1>;
644
645                 vol-up-key {
646                         linux,code = <115>;
647                         label = "volume up";
648                         rockchip,adc_value = <1>;
649                 };
650
651                 vol-down-key {
652                         linux,code = <114>;
653                         label = "volume down";
654                         rockchip,adc_value = <170>;
655                 };
656                 
657                 power-key {
658                         gpios = <&gpio0 GPIO_A5 GPIO_ACTIVE_LOW>;
659                         linux,code = <116>;
660                         label = "power";
661                         gpio-key,wakeup;
662                 };
663
664                 menu-key {
665                         linux,code = <59>;
666                         label = "menu";
667                         rockchip,adc_value = <355>;
668                 };
669
670                 home-key {
671                         linux,code = <102>;
672                         label = "home";
673                         rockchip,adc_value = <746>;
674                 };
675
676                 back-key {
677                         linux,code = <158>;
678                         label = "back";
679                         rockchip,adc_value = <560>;
680                 };
681
682                 camera-key {
683                         linux,code = <212>;
684                         label = "camera";
685                         rockchip,adc_value = <450>;
686                 };
687         };
688 };
689
690 &pwm0 {
691         status = "okay";
692 };
693
694 &pwm1 {
695         status = "okay";
696 };
697
698
699 &clk_core_dvfs_table {
700         operating-points = <
701                 /* KHz    uV */
702                 126000 900000
703                 216000 900000
704                 312000 900000
705                 408000 900000
706                 600000 900000
707                 696000 950000
708                 816000 1000000
709                 1008000 1050000
710                 1200000 1100000
711                 1416000 1200000
712                 1512000 1300000
713                 1608000 1350000
714         //      1704000 1350000
715         //      1800000 1400000
716                 >;
717         status="okay";
718 };
719
720 &clk_gpu_dvfs_table {
721         operating-points = <
722                 /* KHz    uV */
723                 100000 900000
724                 200000 900000
725                 300000 950000
726                 420000 1050000
727                 500000 1150000
728                 >;
729         status="okay";
730 };
731
732 &clk_ddr_dvfs_table {
733         operating-points = <
734                 /* KHz    uV */
735                 200000 1050000
736                 300000 1050000
737                 400000 1100000
738                 533000 1150000
739                 >;
740
741         freq-table = <
742                 /*status                freq(KHz)*/
743                 SYS_STATUS_NORMAL       400000
744                 SYS_STATUS_SUSPEND      200000
745                 SYS_STATUS_VIDEO_1080P  240000
746                 SYS_STATUS_VIDEO_4K     400000
747                 SYS_STATUS_PERFORMANCE  528000
748                 SYS_STATUS_DUALVIEW     400000
749                 SYS_STATUS_BOOST        324000
750                 SYS_STATUS_ISP          400000
751                 >;
752         auto-freq-table = <
753                 240000
754                 324000
755                 396000
756                 528000
757                 >;
758         auto-freq=<1>;
759         status="okay";
760 };
761 /include/ "act8846.dtsi"
762 &act8846 {
763         gpios =<&gpio7 GPIO_A1 GPIO_ACTIVE_LOW>,<&gpio0 GPIO_B2 GPIO_ACTIVE_HIGH>;
764         act8846,system-power-controller;
765
766         regulators {
767                 
768                 dcdc1_reg: regulator@0{
769                         regulator-name= "act_dcdc1";
770                         regulator-min-microvolt = <1200000>;
771                         regulator-max-microvolt = <1200000>;
772                         regulator-always-on;
773                         regulator-boot-on;
774                 };
775
776                 dcdc2_reg: regulator@1 {
777                         regulator-name= "vccio";
778                         regulator-min-microvolt = <3300000>;
779                         regulator-max-microvolt = <3300000>;
780                         regulator-initial-state = <3>;
781                         regulator-state-mem {
782                                 regulator-state-enabled;
783                                 regulator-state-uv = <3300000>;
784                         };              
785                 };
786
787                 dcdc3_reg: regulator@2 {
788                         regulator-name= "vdd_logic";
789                         regulator-min-microvolt = <700000>;
790                         regulator-max-microvolt = <1500000>;
791                         regulator-initial-state = <3>;
792                         regulator-state-mem {
793                                 regulator-state-enabled;
794                                 regulator-state-uv = <1000000>;
795                         };              
796                 
797                 };
798
799                 dcdc4_reg: regulator@3 {
800                         regulator-name= "act_dcdc4";
801                         regulator-min-microvolt = <2000000>;
802                         regulator-max-microvolt = <2000000>;
803                                 regulator-initial-state = <3>;
804                         regulator-state-mem {
805                                 regulator-state-enabled;
806                                 regulator-state-uv = <2000000>;
807                         };
808                 };
809
810                 ldo1_reg: regulator@4 {
811                         regulator-name= "vccio_sd";
812                         regulator-min-microvolt = <1800000>;
813                         regulator-max-microvolt = <3300000>;
814                         
815                 };
816
817                 ldo2_reg: regulator@5 {
818                         regulator-name= "act_ldo2";
819                         regulator-min-microvolt = <1000000>;
820                         regulator-max-microvolt = <1000000>;
821                 
822                 };
823
824                 ldo3_reg: regulator@6 {
825                         regulator-name= "act_ldo3";
826                         regulator-min-microvolt = <3300000>;
827                         regulator-max-microvolt = <3300000>;
828                         
829                 };
830
831                 ldo4_reg:regulator@7 {
832                         regulator-name= "act_ldo4";
833                         regulator-min-microvolt = <3300000>;
834                         regulator-max-microvolt = <3300000>;
835                 
836                 };
837
838                 ldo5_reg: regulator@8 {
839                         regulator-name= "act_ldo5";
840                         regulator-min-microvolt = <3300000>;
841                         regulator-max-microvolt = <3300000>;
842                 
843                 };
844
845                 ldo6_reg: regulator@9 {
846                         regulator-name= "act_ldo6";
847                         regulator-min-microvolt = <1000000>;
848                         regulator-max-microvolt = <1000000>;
849                         regulator-initial-state = <3>;
850                         regulator-state-mem {
851                                 regulator-state-enabled;
852                         };
853                         
854                 };
855
856                 ldo7_reg: regulator@10 {
857                         regulator-name= "vcc_18";
858                         regulator-min-microvolt = <1800000>;
859                         regulator-max-microvolt = <1800000>;
860                         regulator-initial-state = <3>;
861                         regulator-state-mem {
862                                 regulator-state-enabled;
863                         };
864                 
865                 };
866
867                 ldo8_reg: regulator@11 {
868                         regulator-name= "act_ldo8";
869                         regulator-min-microvolt = <1800000>;
870                         regulator-max-microvolt = <1800000>;
871                 
872                 };
873         };
874 };
875
876
877 /include/ "rk808.dtsi"
878 &rk808 {
879         gpios =<&gpio0 GPIO_A4 GPIO_ACTIVE_HIGH>,<&gpio0 GPIO_B3 GPIO_ACTIVE_LOW>;
880         rk808,system-power-controller;
881
882         regulators {
883                 
884                 rk808_dcdc1_reg: regulator@0{
885                         regulator-name= "vdd_arm";
886                         regulator-always-on;
887                         regulator-boot-on;
888                 };
889
890                 rk808_dcdc2_reg: regulator@1 {
891                         regulator-name= "vdd_gpu";
892                         regulator-always-on;
893                         regulator-boot-on;
894                 };
895
896                 rk808_dcdc3_reg: regulator@2 {
897                         regulator-name= "rk_dcdc3";
898                         regulator-min-microvolt = <1200000>;
899                         regulator-max-microvolt = <1200000>;
900                         regulator-always-on;
901                         regulator-boot-on;
902                 };
903
904                 rk808_dcdc4_reg: regulator@3 {
905                         regulator-name= "vccio";
906                         regulator-min-microvolt = <1800000>;
907                         regulator-max-microvolt = <3300000>;
908                         regulator-always-on;
909                         regulator-boot-on;
910                 };
911
912                 rk808_ldo1_reg: regulator@4 {
913                         regulator-name= "rk_ldo1";
914                         regulator-min-microvolt = <3300000>;
915                         regulator-max-microvolt = <3300000>;
916                         regulator-always-on;
917                         regulator-boot-on;
918                 };
919
920                 rk808_ldo2_reg: regulator@5 {
921                         regulator-name= "rk_ldo2";
922                         regulator-min-microvolt = <3300000>;
923                         regulator-max-microvolt = <3300000>;
924                         regulator-always-on;
925                         regulator-boot-on;
926                 };
927
928                 rk808_ldo3_reg: regulator@6 {
929                         regulator-name= "rk_ldo3";
930                         regulator-min-microvolt = <1000000>;
931                         regulator-max-microvolt = <1000000>;
932                         regulator-always-on;
933                         regulator-boot-on;
934                 };
935
936                 rk808_ldo4_reg:regulator@7 {
937                         regulator-name= "rk_ldo4";
938                         regulator-min-microvolt = <1800000>;
939                         regulator-max-microvolt = <1800000>;
940                         regulator-always-on;
941                         regulator-boot-on;
942                 };
943
944                 rk808_ldo5_reg: regulator@8 {
945                         regulator-name= "vcc_sd";
946                         regulator-min-microvolt = <1800000>;
947                         regulator-max-microvolt = <3300000>;
948                         regulator-always-on;
949                         regulator-boot-on;
950                 };
951
952                 rk808_ldo6_reg: regulator@9 {
953                         regulator-name= "rk_ldo6";
954                         regulator-min-microvolt = <1000000>;
955                         regulator-max-microvolt = <1000000>;
956                         regulator-always-on;
957                         regulator-boot-on;
958                 };
959
960                 rk808_ldo7_reg: regulator@10 {
961                         regulator-name= "rk_ldo7";
962                         regulator-min-microvolt = <1800000>;
963                         regulator-max-microvolt = <1800000>;
964                         regulator-always-on;
965                         regulator-boot-on;
966                 };
967
968                 rk808_ldo8_reg: regulator@11 {
969                         regulator-name= "rk_ldo8";
970                         regulator-min-microvolt = <3300000>;
971                         regulator-max-microvolt = <3300000>;
972                         regulator-always-on;
973                         regulator-boot-on;
974                 };
975
976                 rk808_ldo9_reg: regulator@12 {
977                         regulator-name= "rk_ldo9";
978                         regulator-always-on;
979                         regulator-boot-on;
980                 };
981
982                 rk808_ldo10_reg: regulator@13 {
983                         regulator-name= "rk_ldo10";
984                         regulator-always-on;
985                         regulator-boot-on;
986                 };
987         };
988 };
989
990 &lcdc_vdd_domain {
991         regulator-name = "vcc30_lcd";
992         };
993 &dpio_vdd_domain{
994         regulator-name = "vcc18_cif";   
995         };
996 &flash0_vdd_domain{
997         regulator-name = "vcc_flash";   
998         };
999 &flash1_vdd_domain{
1000         regulator-name = "vcc_flash";                   
1001         };
1002 &apio3_vdd_domain{
1003         regulator-name = "vccio_wl";            
1004         };
1005 &apio5_vdd_domain{
1006         regulator-name = "vccio";               
1007         };
1008 &apio4_vdd_domain{
1009         regulator-name = "vccio";               
1010         };
1011 &apio1_vdd_domain{
1012         regulator-name = "vccio";                       
1013         };
1014 &apio2_vdd_domain{
1015         regulator-name = "vccio";               
1016         };
1017 &sdmmc0_vdd_domain{
1018         regulator-name = "vcc_sd";                      
1019         };
1020
1021 &ion_cma {
1022        reg = <0x40000000 0x28000000>; /* 640MB */
1023 };