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