41667e7f588599ad40489ee4351d368cb6ac59a8
[firefly-linux-kernel-4.4.55.git] / arch / arm / boot / dts / rk3288-tb.dts
1 /dts-v1/;
2
3 #include "rk3288.dtsi"
4 #include "lcd-b101ew05.dtsi"
5
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 = <0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255>;
61                 default-brightness-level = <128>;
62                 enable-gpios = <&gpio7 GPIO_A2 GPIO_ACTIVE_HIGH>;
63         };
64
65         pwm_regulator {
66                 compatible = "rockchip_pwm_regulator";
67                 pwms = <&pwm1 0 2000>;
68                 rockchip,pwm_id= <1>;
69                 rockchip,pwm_voltage_map= <925000 950000 975000 1000000 1025000 1050000 1075000 1100000 1125000 1150000 1175000 1200000 1225000 1250000 1275000 1300000 1325000 1350000 1375000 1400000>;
70                 rockchip,pwm_voltage= <1000000>;
71                 rockchip,pwm_min_voltage= <925000>;
72                 rockchip,pwm_max_voltage= <1400000>;
73                 rockchip,pwm_suspend_voltage= <950000>;
74                 rockchip,pwm_coefficient= <475>;
75                 regulators {
76                         #address-cells = <1>;
77                         #size-cells = <0>;
78                         pwm_reg0: regulator@0 {
79                                 regulator-compatible = "pwm_dcdc1";
80                                 regulator-name= "vdd_logic";
81                                 regulator-min-microvolt = <925000>;
82                                 regulator-max-microvolt = <1400000>;
83                                 regulator-always-on;
84                                 regulator-boot-on;
85                         };
86                 };
87         };
88
89         codec_hdmi_i2s: codec-hdmi-i2s {
90                 compatible = "hdmi-i2s";
91         };
92
93         codec_hdmi_spdif: codec-hdmi-spdif {
94                 compatible = "hdmi-spdif";
95         };
96
97         rockchip-hdmi-i2s {
98                 compatible = "rockchip-hdmi-i2s";
99                 dais {
100                         dai0 {
101                                 audio-codec = <&codec_hdmi_i2s>;
102                                 i2s-controller = <&i2s>;
103                                 format = "i2s";
104                                 //continuous-clock;
105                                 //bitclock-inversion;
106                                 //frame-inversion;
107                                 //bitclock-master;
108                                 //frame-master;
109                         };
110                 };
111         };
112         
113         rockchip-hdmi-spdif {
114                 compatible = "rockchip-hdmi-spdif";
115                 dais {
116                         dai0 {
117                                 audio-codec = <&codec_hdmi_spdif>;
118                                 i2s-controller = <&spdif>;
119                         };
120                 };
121         };
122
123         rockchip-rt5631 {
124                 compatible = "rockchip-rt5631";
125                 dais {
126                         dai0 {
127                                 audio-codec = <&rt5631>;
128                                 i2s-controller = <&i2s>;
129                                 format = "i2s";
130                                 //continuous-clock;
131                                 //bitclock-inversion;
132                                 //frame-inversion;
133                                 //bitclock-master;
134                                 //frame-master;
135                         };
136                 };
137         };
138
139         rockchip-rt3224 {
140                 compatible = "rockchip-rt3261";
141                 dais {
142                         dai0 {
143                                 audio-codec = <&rt3261>;
144                                 i2s-controller = <&i2s>;
145                                 format = "i2s";
146                                 //continuous-clock;
147                                 //bitclock-inversion;
148                                 //frame-inversion;
149                                 //bitclock-master;
150                                 //frame-master;
151                         };
152                         dai1 {
153                                 audio-codec = <&rt3261>;
154                                 i2s-controller = <&i2s>;
155                                 format = "dsp_a";
156                                 //continuous-clock;
157                                 bitclock-inversion;
158                                 //frame-inversion;
159                                 //bitclock-master;
160                                 //frame-master;
161                         };
162                 };
163         };
164
165         usb_control {
166                 compatible = "rockchip,rk3288-usb-control";
167
168                 host_drv_gpio = <&gpio0 GPIO_B6 GPIO_ACTIVE_LOW>;
169                 otg_drv_gpio = <&gpio0 GPIO_B4 GPIO_ACTIVE_LOW>;
170
171                 rockchip,remote_wakeup;
172                 rockchip,usb_irq_wakeup;
173         };
174 };
175
176 &gmac {
177 //      power_ctl_by = "gpio";  //"gpio" "pmu"
178         power-gpio = <&gpio0 GPIO_A6 GPIO_ACTIVE_HIGH>;
179 //      power-pmu = "act_ldo"
180         reset-gpio = <&gpio4 GPIO_A7 GPIO_ACTIVE_LOW>;
181 };
182
183 &pinctrl {
184         //used for init some gpio
185         init-gpios = <&gpio0 GPIO_A6 GPIO_ACTIVE_HIGH
186                         /*&gpio0 GPIO_C2 GPIO_ACTIVE_HIGH */
187                         /*&gpio7 GPIO_B7 GPIO_ACTIVE_LOW */>;
188         
189         gpio0_gpio {
190                         gpio0_c2: gpio0-c2 {
191                                 rockchip,pins = <GPIO0_C2>;
192                                 rockchip,pull = <VALUE_PULL_DOWN>;
193                         };
194
195                         //to add
196                 };
197                 
198         gpio7_gpio {
199                         gpio7_b7: gpio7-b7 {
200                                 rockchip,pins = <GPIO7_B7>;
201                                 rockchip,pull = <VALUE_PULL_UP>;
202                         };
203
204                         //to add
205                 };
206                 
207         //could add other pinctrl definition such as gpio
208
209 };
210
211 &emmc {
212         clock-frequency = <100000000>;
213         clock-freq-min-max = <400000 100000000>;
214
215         supports-highspeed;
216         supports-emmc;
217         bootpart-no-access;
218
219         //supports-DDR_MODE; //you should set the two value in your project. only close in RK3288-SDK board.
220         //caps2-mmc-hs200;
221
222         ignore-pm-notify;
223         keep-power-in-suspend;
224         
225         //poll-hw-reset 
226         status = "okay";
227 };
228     
229 &sdmmc {
230                 clock-frequency = <50000000>;
231                 lock-freq-min-max = <400000 50000000>;
232                 supports-highspeed;
233                 supports-sd;
234                 broken-cd;
235                 card-detect-delay = <200>;
236
237                 ignore-pm-notify;
238                 keep-power-in-suspend;
239         
240                 vmmc-supply = <&rk808_ldo5_reg>;
241                 status = "okay";
242 };
243                 
244 &sdio {
245                 clock-frequency = <50000000>;
246                 clock-freq-min-max = <200000 50000000>;
247                 supports-highspeed;
248                 supports-sdio;
249                 ignore-pm-notify;
250                 keep-power-in-suspend;
251                 //cap-sdio-irq;
252                 status = "okay";
253 };
254
255 &spi0 {
256         status = "okay";
257         max-freq = <48000000>;  
258         /*
259         spi_test@00 {
260                 compatible = "rockchip,spi_test_bus0_cs0";
261                 reg = <0>;
262                 spi-max-frequency = <24000000>;
263                 //spi-cpha;
264                 //spi-cpol;
265                 poll_mode = <0>;
266                 type = <0>;
267                 enable_dma = <0>;
268
269         };
270
271         spi_test@01 {
272                 compatible = "rockchip,spi_test_bus0_cs1";
273                 reg = <1>;
274                 spi-max-frequency = <24000000>;
275                 spi-cpha;
276                 spi-cpol;
277                 poll_mode = <0>;
278                 type = <0>;
279                 enable_dma = <0>;               
280         };
281         */
282 };
283
284 &spi1 {
285         status = "okay";
286         max-freq = <48000000>;
287         /*
288         spi_test@10 {
289                 compatible = "rockchip,spi_test_bus1_cs0";
290                 reg = <0>;
291                 spi-max-frequency = <24000000>;
292                 //spi-cpha;
293                 //spi-cpol;
294                 poll_mode = <0>;
295                 type = <0>;
296                 enable_dma = <0>;
297         };
298
299         */
300 };
301
302 &spi2 {
303         status = "okay";
304         max-freq = <48000000>;
305         /*
306         spi_test@20 {
307                 compatible = "rockchip,spi_test_bus2_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         spi_test@21 {
318                 compatible = "rockchip,spi_test_bus2_cs1";
319                 reg = <1>;
320                 spi-max-frequency = <24000000>;
321                 //spi-cpha;
322                 //spi-cpol;
323                 poll_mode = <0>;
324                 type = <0>;
325                 enable_dma = <0>;
326         };
327         */
328 };
329
330 &uart_bt {
331         status = "okay";
332         dma-names = "!tx", "!rx";
333         pinctrl-0 = <&uart0_xfer &uart0_cts>;
334 };
335
336 &i2c0 {
337         status = "okay";
338         rk808: rk808@1b {
339                 reg = <0x1b>;
340                 status = "okay";
341         };
342         rk818: rk818@1c {
343                 reg = <0x1c>;
344                 status = "okay";
345         };
346                 syr827: syr827@40 {
347                 compatible = "silergy,syr82x";
348         reg = <0x40>;
349                 status = "okay";
350                 regulators {
351                         #address-cells = <1>;
352                         #size-cells = <0>;      
353                         syr827_dc1: regulator@0 {
354                         reg = <0>;
355                         regulator-compatible = "syr82x_dcdc1";
356                         regulator-name = "vdd_arm";
357                         regulator-min-microvolt = <712500>;
358                         regulator-max-microvolt = <1500000>;
359                         regulator-always-on;
360                         regulator-boot-on;
361                         regulator-initial-mode = <0x2>;
362                         regulator-initial-state = <3>;
363                         regulator-state-mem {
364                                 regulator-state-mode = <0x2>;
365                                 regulator-state-disabled;
366                                 regulator-state-uv = <900000>;
367                         };
368                 };
369            };
370         };
371         syr828: syr828@41 {
372                 compatible = "silergy,syr82x";
373                 reg = <0x41>;
374                 status = "okay";
375                 regulators {
376                         #address-cells = <1>;
377                         #size-cells = <0>;      
378                         syr828_dc1: regulator@0 {
379                         reg = <0>;
380                         regulator-compatible = "syr82x_dcdc1";
381                         regulator-name = "vdd_gpu";
382                         regulator-min-microvolt = <712500>;
383                         regulator-max-microvolt = <1500000>;
384         //              regulator-always-on;
385                         regulator-boot-on;
386                         regulator-initial-mode = <0x2>;
387                         regulator-initial-state = <3>;
388                         regulator-state-mem {
389                                 regulator-state-mode = <0x2>;
390                                 regulator-state-disabled;
391                                 regulator-state-uv = <900000>;
392                         };      
393                 };
394            };
395         };
396         act8846: act8846@5a {
397                 reg = <0x5a>;
398                 status = "okay";
399         };
400
401         ricoh619: ricoh619@32 {
402                 reg = <0x32>;
403                 status = "okay";
404         };
405         bq24296: bq24296@6b {
406                 compatible = "ti,bq24296";
407                 reg = <0x6b>;
408                 gpios = <&gpio0 GPIO_A7 GPIO_ACTIVE_HIGH>,<&gpio0 GPIO_B0 GPIO_ACTIVE_HIGH>;
409                 bq24296,chg_current = <1000 2000 3000>;
410                 status = "okay";
411         };
412         
413         bq27320: bq27320@55 {
414                 compatible = "ti,bq27320";
415                 reg = <0x55>;
416         /*   gpios = <&gpio0 GPIO_A7 GPIO_ACTIVE_HIGH>; */
417                 status = "okay";
418         };
419
420         CW2015@62 {
421                 compatible = "cw201x";
422                 reg = <0x62>;
423                 dc_det_gpio = <&gpio0 GPIO_B0 GPIO_ACTIVE_LOW>;
424                 bat_low_gpio = <&gpio0 GPIO_A7 GPIO_ACTIVE_LOW>;
425                 chg_ok_gpio = <&gpio0 GPIO_B1 GPIO_ACTIVE_HIGH>;
426                 bat_config_info = <0x15 0x42 0x60 0x59 0x52 0x58 0x4D 0x48 0x48 0x44 0x44 0x46 0x49 0x48 0x32
427                         0x24 0x20 0x17 0x13 0x0F 0x19 0x3E 0x51 0x45 0x08 0x76 0x0B 0x85 0x0E 0x1C 0x2E 0x3E 0x4D 0x52 0x52
428                         0x57 0x3D 0x1B 0x6A 0x2D 0x25 0x43 0x52 0x87 0x8F 0x91 0x94 0x52 0x82 0x8C 0x92 0x96 0xFF 0x7B 0xBB
429                         0xCB 0x2F 0x7D 0x72 0xA5 0xB5 0xC1 0x46 0xAE>;
430                 is_dc_charge = <1>;
431                 is_usb_charge = <0>;
432         };
433         
434         rtc@51 {
435                 compatible = "rtc,hym8563";
436                 reg = <0x51>;
437                 irq_gpio = <&gpio0 GPIO_A4 IRQ_TYPE_EDGE_FALLING>;
438         };
439
440 };
441
442 &i2c1 {
443         status = "okay";
444         rtc@51 {
445                 compatible = "nxp,pcf8563";
446                 reg = <0x51>;
447         };
448         
449         sensor@1d {
450                 compatible = "gs_mma8452";
451                 reg = <0x1d>;
452                 type = <SENSOR_TYPE_ACCEL>;
453                 irq-gpio = <&gpio8 GPIO_A0 IRQ_TYPE_EDGE_FALLING>;
454                 irq_enable = <1>;
455                 poll_delay_ms = <30>;
456                 layout = <1>;
457         };
458                 sensor@19 {
459                 compatible = "gs_lis3dh";
460                 reg = <0x19>;
461                 type = <SENSOR_TYPE_ACCEL>;
462                 irq-gpio = <&gpio0 GPIO_A0 IRQ_TYPE_LEVEL_LOW>;
463                 irq_enable = <1>;
464                 poll_delay_ms = <30>;
465                 layout = <1>;
466         };
467                 sensor@0d {
468                 compatible = "ak8963";
469                 reg = <0x0d>;
470                 type = <SENSOR_TYPE_COMPASS>;
471                 irq-gpio = <&gpio8 GPIO_A2 IRQ_TYPE_EDGE_RISING>;
472                 irq_enable = <1>;
473                 poll_delay_ms = <30>;
474                 layout = <1>;
475         };
476
477                 sensor@6b {
478                 compatible = "l3g20d_gyro";
479                 reg = <0x6b>;
480                 type = <SENSOR_TYPE_GYROSCOPE>;
481                 irq-gpio = <&gpio8 GPIO_A3 IRQ_TYPE_LEVEL_LOW>;
482                 irq_enable = <1>;
483                 poll_delay_ms = <30>;
484                 layout = <1>;
485         };
486         sensor@10 {
487               compatible = "ls_cm3218";
488               reg = <0x10>;
489               type = <SENSOR_TYPE_LIGHT>;
490               irq-gpio = <&gpio8 GPIO_A3 IRQ_TYPE_EDGE_FALLING>;              
491               irq_enable = <1>;
492               poll_delay_ms = <30>;
493               layout = <1>;
494        };
495         
496 };
497
498 &i2c2 {
499         status = "okay";
500         rt5631: rt5631@1a {
501                 compatible = "rt5631";
502                 reg = <0x1a>;
503         };
504         es8323: es8323@10 {
505                 compatible = "es8323";
506                 reg = <0x10>;
507         };
508         rt3261: rt3261@1c {
509                 compatible = "rt3261";
510                 reg = <0x1c>;
511         //      codec-en-gpio = <0>;//sdk default high level
512                 spk-num= <2>;
513                 modem-input-mode = <1>;
514                 lout-to-modem_mode = <1>;
515                 spk-amplify = <2>;
516                 playback-if1-data_control = <0>;
517                 playback-if2-data_control = <0>;
518         };
519         rt5616: rt5616@1b {
520                 compatible = "rt5616";
521                 reg = <0x1b>;
522         };
523 };
524
525 &i2c3 {
526         status = "okay";
527 };
528
529 &i2c4 {
530         status = "okay";
531         ts@55 {
532                 compatible = "goodix,gt8xx";
533                 reg = <0x55>;
534                 touch-gpio = <&gpio7 GPIO_A6 IRQ_TYPE_LEVEL_LOW>;
535                 reset-gpio = <&gpio7 GPIO_A5 GPIO_ACTIVE_LOW>;
536                 //power-gpio = <&gpio0 GPIO_C5 GPIO_ACTIVE_LOW>;
537                 max-x = <1280>;
538                 max-y = <800>;
539         };
540         
541         ts@01 {
542                 compatible = "ct,vtl_ts";
543                 reg = <0x01>;
544                 screen_max_x = <2048>;
545                 screen_max_y = <1536>;
546                 irq_gpio_number = <&gpio7 GPIO_A6 IRQ_TYPE_LEVEL_LOW>;
547                 rst_gpio_number = <&gpio7 GPIO_A5 GPIO_ACTIVE_HIGH>;
548         };
549 };
550
551 &i2c5 {
552         status = "disable";
553 };
554
555 &fb {
556         rockchip,disp-mode = <DUAL>;
557 };
558
559 &rk_screen {
560          display-timings = <&disp_timings>;
561 };
562
563 /*lcdc1 as PRMRY(LCD),lcdc0 as EXTEND(HDMI)*/
564 &lcdc1 {
565         status = "okay";
566         rockchip,cabc_mode = <0>;
567         power_ctr: power_ctr {
568                 rockchip,debug = <0>;
569                 rockchip,mirror = <NO_MIRROR>;
570                 lcd_en:lcd_en {
571                         rockchip,power_type = <GPIO>;
572                         gpios = <&gpio7 GPIO_A3 GPIO_ACTIVE_HIGH>;
573                         rockchip,delay = <10>;
574                 };
575                 
576                 lcd_cs:lcd_cs {
577 rockchip,power_type = <GPIO>;
578                         gpios = <&gpio7 GPIO_A4 GPIO_ACTIVE_HIGH>;
579                         rockchip,delay = <10>;
580                 };
581
582                 /*lcd_rst:lcd_rst {
583                         rockchip,power_type = <GPIO>;
584                         gpios = <&gpio3 GPIO_D6 GPIO_ACTIVE_HIGH>;
585                         rockchip,delay = <5>;
586                 };*/
587
588         };
589 };
590
591 &lcdc0 {
592         status = "okay";
593 };
594
595 &hdmi {
596         status = "okay";
597         rockchips,hdmi_audio_source = <0>;
598 };
599
600 &adc {
601         status = "okay";
602
603         rockchip_headset {
604                 compatible = "rockchip_headset";
605                 headset_gpio = <&gpio0 GPIO_C2 GPIO_ACTIVE_LOW>;
606                 pinctrl-names = "default";
607                 pinctrl-0 = <&gpio0_c2>;
608                 io-channels = <&adc 2>; 
609        /*
610                hook_gpio = ;
611                hook_down_type = ; //interrupt hook key down status 
612                 */       
613        };
614
615         key {
616                 compatible = "rockchip,key";
617                 io-channels = <&adc 1>;
618
619                 vol-up-key {
620                         linux,code = <115>;
621                         label = "volume up";
622                         rockchip,adc_value = <1>;
623                 };
624
625                 vol-down-key {
626                         linux,code = <114>;
627                         label = "volume down";
628                         rockchip,adc_value = <170>;
629                 };
630                 
631                 power-key {
632                         gpios = <&gpio0 GPIO_A5 GPIO_ACTIVE_LOW>;
633                         linux,code = <116>;
634                         label = "power";
635                         gpio-key,wakeup;
636                 };
637
638                 menu-key {
639                         linux,code = <59>;
640                         label = "menu";
641                         rockchip,adc_value = <355>;
642                 };
643
644                 home-key {
645                         linux,code = <102>;
646                         label = "home";
647                         rockchip,adc_value = <746>;
648                 };
649
650                 back-key {
651                         linux,code = <158>;
652                         label = "back";
653                         rockchip,adc_value = <560>;
654                 };
655
656                 camera-key {
657                         linux,code = <212>;
658                         label = "camera";
659                         rockchip,adc_value = <450>;
660                 };
661         };
662 };
663
664 &pwm0 {
665         status = "okay";
666 };
667
668 &pwm1 {
669         status = "okay";
670 };
671
672
673 &clk_core_dvfs_table {
674         operating-points = <
675                 /* KHz    uV */
676                 126000 850000
677                 216000 850000
678                 312000 850000
679                 408000 850000
680                 600000 900000
681                 696000 950000
682                 816000 1000000
683                 1008000 1050000
684                 1200000 1100000
685                 1416000 1200000
686                 >;
687         status="okay";
688 };
689
690 &clk_gpu_dvfs_table {
691         operating-points = <
692                 /* KHz    uV */
693                 100000 850000
694                 200000 900000
695                 300000 950000
696                 420000 1050000
697                 500000 1150000
698                 >;
699         status="okay";
700 };
701
702 &clk_ddr_dvfs_table {
703         operating-points = <
704                 /* KHz    uV */
705                 200000 950000
706                 300000 950000
707                 400000 1000000
708                 533000 1050000
709                 >;
710
711         freq-table = <
712                 /*status                freq(KHz)*/
713                 SYS_STATUS_NORMAL       400000
714                 SYS_STATUS_SUSPEND      200000
715                 SYS_STATUS_VIDEO_1080P  240000
716                 SYS_STATUS_VIDEO_4K     400000
717                 SYS_STATUS_PERFORMANCE  528000
718                 SYS_STATUS_DUALVIEW     400000
719                 SYS_STATUS_BOOST        324000
720                 SYS_STATUS_ISP          400000
721                 >;
722         auto-freq-table = <
723                 240000
724                 324000
725                 396000
726                 528000
727                 >;
728         auto-freq=<1>;
729         status="okay";
730 };
731 /include/ "act8846.dtsi"
732 &act8846 {
733         gpios =<&gpio7 GPIO_A1 GPIO_ACTIVE_LOW>,<&gpio0 GPIO_B2 GPIO_ACTIVE_HIGH>;
734         act8846,system-power-controller;
735
736         regulators {
737                 
738                 dcdc1_reg: regulator@0{
739                         regulator-name= "act_dcdc1";
740                         regulator-min-microvolt = <1200000>;
741                         regulator-max-microvolt = <1200000>;
742                         regulator-always-on;
743                         regulator-boot-on;
744                 };
745
746                 dcdc2_reg: regulator@1 {
747                         regulator-name= "vccio";
748                         regulator-min-microvolt = <3300000>;
749                         regulator-max-microvolt = <3300000>;
750                         regulator-initial-state = <3>;
751                         regulator-state-mem {
752                                 regulator-state-enabled;
753                                 regulator-state-uv = <3300000>;
754                         };              
755                 };
756
757                 dcdc3_reg: regulator@2 {
758                         regulator-name= "vdd_logic";
759                         regulator-min-microvolt = <700000>;
760                         regulator-max-microvolt = <1500000>;
761                         regulator-initial-state = <3>;
762                         regulator-state-mem {
763                                 regulator-state-enabled;
764                                 regulator-state-uv = <1200000>;
765                         };              
766                 
767                 };
768
769                 dcdc4_reg: regulator@3 {
770                         regulator-name= "act_dcdc4";
771                         regulator-min-microvolt = <2000000>;
772                         regulator-max-microvolt = <2000000>;
773                                 regulator-initial-state = <3>;
774                         regulator-state-mem {
775                                 regulator-state-enabled;
776                                 regulator-state-uv = <2000000>;
777                         };
778                 };
779
780                 ldo1_reg: regulator@4 {
781                         regulator-name= "vccio_sd";
782                         regulator-min-microvolt = <3300000>;
783                         regulator-max-microvolt = <3300000>;
784                         
785                 };
786
787                 ldo2_reg: regulator@5 {
788                         regulator-name= "act_ldo2";
789                         regulator-min-microvolt = <1000000>;
790                         regulator-max-microvolt = <1000000>;
791                 
792                 };
793
794                 ldo3_reg: regulator@6 {
795                         regulator-name= "act_ldo3";
796                         regulator-min-microvolt = <3300000>;
797                         regulator-max-microvolt = <3300000>;
798                         
799                 };
800
801                 ldo4_reg:regulator@7 {
802                         regulator-name= "act_ldo4";
803                         regulator-min-microvolt = <3300000>;
804                         regulator-max-microvolt = <3300000>;
805                 
806                 };
807
808                 ldo5_reg: regulator@8 {
809                         regulator-name= "act_ldo5";
810                         regulator-min-microvolt = <3300000>;
811                         regulator-max-microvolt = <3300000>;
812                 
813                 };
814
815                 ldo6_reg: regulator@9 {
816                         regulator-name= "act_ldo6";
817                         regulator-min-microvolt = <1000000>;
818                         regulator-max-microvolt = <1000000>;
819                         regulator-initial-state = <3>;
820                         regulator-state-mem {
821                                 regulator-state-enabled;
822                         };
823                         
824                 };
825
826                 ldo7_reg: regulator@10 {
827                         regulator-name= "vcc_18";
828                         regulator-min-microvolt = <1800000>;
829                         regulator-max-microvolt = <1800000>;
830                         regulator-initial-state = <3>;
831                         regulator-state-mem {
832                                 regulator-state-enabled;
833                         };
834                 
835                 };
836
837                 ldo8_reg: regulator@11 {
838                         regulator-name= "act_ldo8";
839                         regulator-min-microvolt = <1800000>;
840                         regulator-max-microvolt = <1800000>;
841                 
842                 };
843         };
844 };
845
846
847 /include/ "rk808.dtsi"
848 &rk808 {
849         gpios =<&gpio0 GPIO_A4 GPIO_ACTIVE_HIGH>,<&gpio0 GPIO_B3 GPIO_ACTIVE_LOW>;
850         rk808,system-power-controller;
851
852         regulators {
853                 
854                 rk808_dcdc1_reg: regulator@0{
855                         regulator-name= "vdd_arm";
856                         regulator-always-on;
857                         regulator-boot-on;
858                 };
859
860                 rk808_dcdc2_reg: regulator@1 {
861                         regulator-name= "vdd_gpu";
862                 //      regulator-always-on;
863                         regulator-boot-on;
864                 };
865
866                 rk808_dcdc3_reg: regulator@2 {
867                         regulator-name= "rk_dcdc3";
868                         regulator-min-microvolt = <1200000>;
869                         regulator-max-microvolt = <1200000>;
870                         regulator-always-on;
871                         regulator-boot-on;
872                 };
873
874                 rk808_dcdc4_reg: regulator@3 {
875                         regulator-name= "vccio";
876                         regulator-min-microvolt = <1800000>;
877                         regulator-max-microvolt = <3300000>;
878                         regulator-always-on;
879                         regulator-boot-on;
880                 };
881
882                 rk808_ldo1_reg: regulator@4 {
883                         regulator-name= "rk_ldo1";
884                         regulator-min-microvolt = <3300000>;
885                         regulator-max-microvolt = <3300000>;
886                         regulator-always-on;
887                         regulator-boot-on;
888                 };
889
890                 rk808_ldo2_reg: regulator@5 {
891                         regulator-name= "rk_ldo2";
892                         regulator-min-microvolt = <3300000>;
893                         regulator-max-microvolt = <3300000>;
894                         regulator-always-on;
895                         regulator-boot-on;
896                 };
897
898                 rk808_ldo3_reg: regulator@6 {
899                         regulator-name= "rk_ldo3";
900                         regulator-min-microvolt = <1000000>;
901                         regulator-max-microvolt = <1000000>;
902                         regulator-always-on;
903                         regulator-boot-on;
904                 };
905
906                 rk808_ldo4_reg:regulator@7 {
907                         regulator-name= "rk_ldo4";
908                         regulator-min-microvolt = <1800000>;
909                         regulator-max-microvolt = <1800000>;
910                         regulator-always-on;
911                         regulator-boot-on;
912                 };
913
914                 rk808_ldo5_reg: regulator@8 {
915                         regulator-name= "vcc_sd";
916                         regulator-min-microvolt = <1800000>;
917                         regulator-max-microvolt = <3300000>;
918                         regulator-always-on;
919                         regulator-boot-on;
920                 };
921
922                 rk808_ldo6_reg: regulator@9 {
923                         regulator-name= "rk_ldo6";
924                         regulator-min-microvolt = <1000000>;
925                         regulator-max-microvolt = <1000000>;
926                         regulator-always-on;
927                         regulator-boot-on;
928                 };
929
930                 rk808_ldo7_reg: regulator@10 {
931                         regulator-name= "rk_ldo7";
932                         regulator-min-microvolt = <1800000>;
933                         regulator-max-microvolt = <1800000>;
934                         regulator-always-on;
935                         regulator-boot-on;
936                 };
937
938                 rk808_ldo8_reg: regulator@11 {
939                         regulator-name= "rk_ldo8";
940                         regulator-min-microvolt = <3300000>;
941                         regulator-max-microvolt = <3300000>;
942                         regulator-always-on;
943                         regulator-boot-on;
944                 };
945
946                 rk808_ldo9_reg: regulator@12 {
947                         regulator-name= "rk_ldo9";
948                         regulator-always-on;
949                         regulator-boot-on;
950                 };
951
952                 rk808_ldo10_reg: regulator@13 {
953                         regulator-name= "rk_ldo10";
954                         regulator-always-on;
955                         regulator-boot-on;
956                 };
957         };
958 };
959
960 /include/ "ricoh619.dtsi"
961 &ricoh619 {
962         gpios =<&gpio0 GPIO_A4 GPIO_ACTIVE_HIGH>,<&gpio0 GPIO_B3 GPIO_ACTIVE_LOW>,<&gpio0 GPIO_B0 GPIO_ACTIVE_HIGH>;
963         ricoh619,system-power-controller;
964         
965         regulators {
966                 ricoh619_dcdc1_reg: regulator@0 {
967                         regulator-name = "vdd_logic";
968                         regulator-min-microvolt = < 700000>;
969                         regulator-max-microvolt = <1500000>;
970                         regulator-initial-mode = <0x2>;
971                         regulator-initial-state = <3>;
972                         regulator-state-mem {
973                                 regulator-state-mode = <0x2>;
974                                 regulator-state-enabled;
975                                 regulator-state-uv = <900000>;
976                         };      
977                 };
978                 ricoh619_dcdc2_reg: regulator@1 {
979                         regulator-name = "ricoh619_dcdc2";
980                         regulator-min-microvolt = <1200000>;
981                         regulator-max-microvolt = <1200000>;
982                         regulator-initial-mode = <0x2>;
983                         regulator-initial-state = <3>;
984                         regulator-state-mem {
985                                 regulator-state-mode = <0x2>;
986                                 regulator-state-enabled;
987                                 regulator-state-uv = <1200000>;
988                         };      
989                 };
990                 ricoh619_dcdc3_reg: regulator@2 {
991                         regulator-name = "ricoh619_dcdc3";
992                         regulator-min-microvolt = < 1200000>;
993                         regulator-max-microvolt = <1200000>;
994                         regulator-initial-mode = <0x2>;
995                         regulator-initial-state = <3>;
996                         regulator-state-mem {
997                                 regulator-state-mode = <0x2>;
998                                 regulator-state-enabled;
999                                 regulator-state-uv = <1200000>;
1000                         };      
1001                 };
1002                 ricoh619_dcdc4_reg: regulator@3 {
1003                         regulator-name = "ricoh619_dcdc4";
1004                         regulator-min-microvolt = < 3300000>;
1005                         regulator-max-microvolt = <3300000>;
1006                         regulator-initial-mode = <0x2>;
1007                         regulator-initial-state = <3>;
1008                         regulator-state-mem {
1009                                 regulator-state-mode = <0x2>;
1010                                 regulator-state-enabled;
1011                                 regulator-state-uv = <2800000>;
1012                         };      
1013                 };
1014                 ricoh619_dcdc5_reg: regulator@4 {
1015                         regulator-name = "ricoh619_dcdc5";
1016                         regulator-min-microvolt = < 2000000>;
1017                         regulator-max-microvolt = <2000000>;
1018                         regulator-initial-mode = <0x2>;
1019                         regulator-initial-state = <3>;
1020                         regulator-state-mem {
1021                                 regulator-state-mode = <0x2>;
1022                                 regulator-state-enabled;
1023                                 regulator-state-uv = <2000000>;
1024                         };      
1025                 };
1026                 ricoh619_ldo1_reg: regulator@5  {
1027                         regulator-name = "ricoh619_ldo1";
1028                         regulator-min-microvolt = <3300000>;
1029                         regulator-max-microvolt = <3300000>;
1030                         regulator-initial-state = <3>;
1031                         regulator-state-mem {
1032                                 regulator-state-enabled;
1033                                 regulator-state-uv = <3300000>;
1034                         };      
1035                 };
1036                 ricoh619_ldo2_reg: regulator@6  {
1037                         regulator-name = "ricoh619_ldo2";
1038                         regulator-min-microvolt = <3300000>;
1039                         regulator-max-microvolt = <3300000>;
1040                         regulator-initial-state = <3>;
1041                         regulator-state-mem {
1042                                 regulator-state-enabled;
1043                                 regulator-state-uv = <3300000>;
1044                         };
1045                 };
1046                 ricoh619_ldo3_reg: regulator@7  {
1047                         regulator-name = "ricoh619_ldo3";
1048                         regulator-min-microvolt = <3300000>;
1049                         regulator-max-microvolt = <3300000>;
1050                         regulator-initial-state = <3>;
1051                         regulator-state-mem {
1052                                 regulator-state-enabled;
1053                                 regulator-state-uv = <3300000>;
1054                         };
1055                 };
1056                 ricoh619_ldo4_reg: regulator@8  {
1057                         regulator-name = "vcc_sd";
1058                         regulator-min-microvolt = <3300000>;
1059                         regulator-max-microvolt = <3300000>;
1060                         regulator-initial-state = <3>;
1061                         regulator-state-mem {
1062                                 regulator-state-enabled;
1063                                 regulator-state-uv = <3300000>;
1064                         };
1065                 };
1066                 ricoh619_ldo5_reg: regulator@9  {
1067                         regulator-name = "ricoh619_ldo5";
1068                         regulator-min-microvolt = <3300000>;
1069                         regulator-max-microvolt = <3300000>;
1070                         regulator-initial-state = <3>;
1071                         regulator-state-mem {
1072                                 regulator-state-enabled;
1073                                 regulator-state-uv = <3300000>;
1074                         };
1075                 };
1076                 ricoh619_ldo6_reg: regulator@10  {
1077                         regulator-name = "ricoh619_ldo6";
1078                         regulator-min-microvolt = <1800000>;
1079                         regulator-max-microvolt = <1800000>;
1080                         regulator-initial-state = <3>;
1081                         regulator-state-mem {
1082                                 regulator-state-enabled;
1083                                 regulator-state-uv = <1800000>;
1084                         };
1085                 };
1086                 ricoh619_ldo7_reg: regulator@11  {
1087                         regulator-name = "ricoh619_ldo7";
1088                         regulator-min-microvolt = <1000000>;
1089                         regulator-max-microvolt = <1000000>;
1090                         regulator-initial-state = <3>;
1091                         regulator-state-mem {
1092                                 regulator-state-enabled;
1093                                 regulator-state-uv = <1000000>;
1094                         };
1095                 };
1096                 ricoh619_ldo8_reg: regulator@12  {
1097                         regulator-name = "ricoh619_ldo8";
1098                         regulator-min-microvolt = <1800000>;
1099                         regulator-max-microvolt = <1800000>;
1100                         regulator-initial-state = <3>;
1101                         regulator-state-mem {
1102                                 regulator-state-enabled;
1103                                 regulator-state-uv = <1800000>;
1104                         };
1105                 };
1106                 ricoh619_ldo9_reg: regulator@13  {
1107                         regulator-name = "ricoh619_ldo9";
1108                         regulator-min-microvolt = <1000000>;
1109                         regulator-max-microvolt = <1000000>;
1110                         regulator-initial-state = <3>;
1111                         regulator-state-mem {
1112                                 regulator-state-enabled;
1113                                 regulator-state-uv = <1000000>;
1114                         };
1115                 };
1116                 ricoh619_ldo10_reg: regulator@14  {
1117                         regulator-name = "ricoh619_ldo10";
1118                         regulator-min-microvolt = <1800000>;
1119                         regulator-max-microvolt = <1800000>;
1120                         regulator-initial-state = <3>;
1121                         regulator-state-mem {
1122                                 regulator-state-enabled;
1123                                 regulator-state-uv = <1800000>;
1124                         };
1125                 };
1126                 ricoh619_ldortc1_reg: regulator@15  {
1127                         regulator-name = "ricoh619_ldortc1";
1128                         regulator-min-microvolt = < 3300000>;
1129                         regulator-max-microvolt = <3300000>;
1130                 };
1131                 ricoh619_ldortc2_reg: regulator@16  {
1132                         regulator-name = "ricoh619_ldortc2";
1133                         regulator-min-microvolt = < 3300000>;
1134                         regulator-max-microvolt = <3300000>;
1135                 };
1136         };
1137 };
1138 /include/ "rk818.dtsi"
1139 &rk818 {
1140         gpios =<&gpio0 GPIO_A4 GPIO_ACTIVE_HIGH>,<&gpio0 GPIO_B3 GPIO_ACTIVE_LOW>;
1141         rk818,system-power-controller;
1142
1143         regulators {
1144                 
1145                 rk818_dcdc1_reg: regulator@0{
1146                         regulator-name= "vdd_logic";
1147                         regulator-min-microvolt = <700000>;
1148                         regulator-max-microvolt = <1500000>;
1149                         regulator-initial-mode = <0x2>;
1150                         regulator-initial-state = <3>;
1151                         regulator-state-mem {
1152                                 regulator-state-mode = <0x2>;
1153                                 regulator-state-enabled;
1154                                 regulator-state-uv = <900000>;
1155                         };              
1156                 };
1157
1158                 rk818_dcdc2_reg: regulator@1 {
1159                         regulator-name= "rk818_dcdc2";
1160                         regulator-min-microvolt = <1200000>;
1161                         regulator-max-microvolt = <1200000>;    
1162                         regulator-initial-mode = <0x2>;
1163                         regulator-initial-state = <3>;
1164                         regulator-state-mem {
1165                                 regulator-state-mode = <0x2>;
1166                                 regulator-state-enabled;
1167                                 regulator-state-uv = <1200000>;
1168                         };      
1169                 };
1170
1171                 rk818_dcdc3_reg: regulator@2 {
1172                         regulator-name= "rk818_dcdc3";
1173                         regulator-min-microvolt = <1200000>;
1174                         regulator-max-microvolt = <1200000>;
1175                                 regulator-initial-mode = <0x2>;
1176                         regulator-initial-state = <3>;
1177                         regulator-state-mem {
1178                                 regulator-state-mode = <0x2>;
1179                                 regulator-state-enabled;
1180                                 regulator-state-uv = <1200000>;
1181                         };      
1182                 };
1183
1184                 rk818_dcdc4_reg: regulator@3 {
1185                         regulator-name= "vccio";
1186                         regulator-min-microvolt = <1800000>;
1187                         regulator-max-microvolt = <3300000>;
1188                         regulator-initial-mode = <0x2>;
1189                         regulator-initial-state = <3>;
1190                         regulator-state-mem {
1191                                 regulator-state-mode = <0x2>;
1192                                 regulator-state-enabled;
1193                                 regulator-state-uv = <2800000>;
1194                         };      
1195                 };
1196
1197                 rk818_ldo1_reg: regulator@4 {
1198                         regulator-name= "rk818_ldo1";
1199                         regulator-min-microvolt = <3300000>;
1200                         regulator-max-microvolt = <3300000>;
1201                         regulator-initial-state = <3>;
1202                         regulator-state-mem {
1203                                 regulator-state-enabled;
1204                                 regulator-state-uv = <3300000>;
1205                         };      
1206                 };
1207
1208                 rk818_ldo2_reg: regulator@5 {
1209                         regulator-name= "rk818_ldo2";
1210                         regulator-min-microvolt = <3300000>;
1211                         regulator-max-microvolt = <3300000>;
1212                         regulator-initial-state = <3>;
1213                         regulator-state-mem {
1214                                 regulator-state-enabled;
1215                                 regulator-state-uv = <3300000>;
1216                         };      
1217                 };
1218
1219                 rk818_ldo3_reg: regulator@6 {
1220                         regulator-name= "rk818_ldo3";
1221                         regulator-min-microvolt = <1000000>;
1222                         regulator-max-microvolt = <1000000>;
1223                         regulator-initial-state = <3>;
1224                         regulator-state-mem {
1225                                 regulator-state-enabled;
1226                                 regulator-state-uv = <1000000>;
1227                         };      
1228                 };
1229
1230                 rk818_ldo4_reg:regulator@7 {
1231                         regulator-name= "rk818_ldo4";
1232                         regulator-min-microvolt = <1800000>;
1233                         regulator-max-microvolt = <1800000>;
1234                         regulator-initial-state = <3>;
1235                         regulator-state-mem {
1236                                 regulator-state-disabled;
1237                                 regulator-state-uv = <1800000>;
1238                         };
1239                 };
1240
1241                 rk818_ldo5_reg: regulator@8 {
1242                         regulator-name= "rk818_ldo5";
1243                         regulator-min-microvolt = <3300000>;
1244                         regulator-max-microvolt = <3300000>;
1245                         regulator-initial-state = <3>;
1246                         regulator-state-mem {
1247                                 regulator-state-enabled;
1248                                 regulator-state-uv = <3300000>;
1249                         };
1250                 };
1251
1252                 rk818_ldo6_reg: regulator@9 {
1253                         regulator-name= "rk818_ldo6";
1254                         regulator-min-microvolt = <1000000>;
1255                         regulator-max-microvolt = <1000000>;
1256                         regulator-initial-state = <3>;
1257                         regulator-state-mem {
1258                                 regulator-state-disabled;
1259                                 regulator-state-uv = <1000000>;
1260                         };      
1261                 };
1262
1263                 rk818_ldo7_reg: regulator@10 {
1264                         regulator-name= "rk818_ldo7";
1265                         regulator-min-microvolt = <1800000>;
1266                         regulator-max-microvolt = <1800000>;
1267                         regulator-initial-state = <3>;
1268                         regulator-state-mem {
1269                                 regulator-state-enabled;
1270                                 regulator-state-uv = <1800000>;
1271                         };      
1272                 };
1273
1274                 rk818_ldo8_reg: regulator@11 {
1275                         regulator-name= "rk818_ldo8";
1276                         regulator-min-microvolt = <1800000>;
1277                         regulator-max-microvolt = <1800000>;
1278                         regulator-initial-state = <3>;
1279                         regulator-state-mem {
1280                                 regulator-state-enabled;
1281                                 regulator-state-uv = <1800000>;
1282                         };      
1283                 };
1284                 rk818_ldo9_reg: regulator@12 {
1285                         regulator-name= "vcc_sd";
1286                         regulator-min-microvolt = <1800000>;
1287                 regulator-max-microvolt = <3300000>;
1288                         regulator-initial-state = <3>;
1289                         regulator-state-mem {
1290                                 regulator-state-enabled;
1291                                 regulator-state-uv = <3300000>;
1292                         };
1293                 };
1294                 rk818_ldo10_reg: regulator@13 {
1295                         regulator-name= "rk818_ldo10";
1296                         regulator-state-mem {
1297                                 regulator-state-disabled;
1298                         };
1299                 };
1300         };
1301        battery {
1302                 ocv_table = <3350 3677 3693 3719 3752 3770 3775 3778 3785 3796 3812 3839 3881 3907 3933 3958 3978 4033 4087 4123 4174>;
1303                 design_capacity = <2100>;
1304                 design_qmax = <2200>;
1305                 max_overcharge = <100>;
1306                 max_charge_currentma = <1500>;
1307                 max_charge_voltagemv = <4260>;
1308                 max_bat_voltagemv = <4200>;
1309         };
1310 };
1311
1312 &lcdc_vdd_domain {
1313         regulator-name = "vcc30_lcd";
1314         };
1315 &dpio_vdd_domain{
1316         regulator-name = "vcc18_cif";   
1317         };
1318 &flash0_vdd_domain{
1319         regulator-name = "vcc_flash";   
1320         };
1321 &flash1_vdd_domain{
1322         regulator-name = "vcc_flash";                   
1323         };
1324 &apio3_vdd_domain{
1325         regulator-name = "vccio_wl";            
1326         };
1327 &apio5_vdd_domain{
1328         regulator-name = "vccio";               
1329         };
1330 &apio4_vdd_domain{
1331         regulator-name = "vccio";               
1332         };
1333 &apio1_vdd_domain{
1334         regulator-name = "vccio";                       
1335         };
1336 &apio2_vdd_domain{
1337         regulator-name = "vccio";               
1338         };
1339 &sdmmc0_vdd_domain{
1340         regulator-name = "vcc_sd";                      
1341         };
1342