a2011314c383d577f8291f2f704077ae0c457e35
[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 = <28000>;
16
17         //power_ctrl_by_pmu;
18         pmu_regulator = "act_ldo3";
19         pmu_enable_level = <1>; //1->HIGH, 0->LOW
20
21         WIFI,poweren_gpio = <&gpio4 GPIO_D4 GPIO_ACTIVE_HIGH>;
22         WIFI,host_wake_irq = <&gpio4 GPIO_D6 GPIO_ACTIVE_HIGH>;
23         //WIFI,reset_gpio = <&gpio0 GPIO_A2 GPIO_ACTIVE_LOW>;
24
25         status = "okay";
26     };
27
28     wireless-bluetooth {
29         compatible = "bluetooth-platdata";
30
31         uart_rts_gpios = <&gpio4 GPIO_C3 GPIO_ACTIVE_LOW>;
32         pinctrl-names = "default","rts_gpio";
33         pinctrl-0 = <&uart0_rts>;
34         pinctrl-1 = <&uart0_rts_gpio>;
35
36         BT,power_gpio = <&gpio4 GPIO_D3 GPIO_ACTIVE_HIGH>;
37         BT,reset_gpio = <&gpio4 GPIO_D5 GPIO_ACTIVE_HIGH>;
38         BT,wake_gpio = <&gpio4 GPIO_D2 GPIO_ACTIVE_HIGH>;
39         BT,wake_host_irq = <&gpio4 GPIO_D7 GPIO_ACTIVE_LOW>;
40
41         status = "okay";
42     };
43
44     hallsensor {
45                compatible = "hall_och165t";
46                type = <SENSOR_TYPE_HALL>;
47                irq-gpio = <&gpio0 GPIO_A6 IRQ_TYPE_EDGE_BOTH>;
48      };
49
50         backlight {
51                 compatible = "pwm-backlight";
52                 pwms = <&pwm0 0 25000>;
53                 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>;
54                 default-brightness-level = <128>;
55                 enable-gpios = <&gpio7 GPIO_A2 GPIO_ACTIVE_HIGH>;
56         };
57
58         pwm_regulator {
59                 compatible = "rockchip_pwm_regulator";
60                 pwms = <&pwm1 0 25000>;
61                 rockchip,pwm_id= <1>;
62                 rockchip,pwm_voltage_map= <925000 950000 975000 1000000 1025000 1050000 1075000 1100000 1125000 1150000 1175000 1200000 1225000 1250000 1275000 1300000 1325000 1350000 1375000 1400000>;
63                 rockchip,pwm_voltage= <1000000>;
64                 rockchip,pwm_min_voltage= <925000>;
65                 rockchip,pwm_max_voltage= <1400000>;
66                 rockchip,pwm_suspend_voltage= <950000>;
67                 rockchip,pwm_coefficient= <475>;
68                 regulators {
69                         #address-cells = <1>;
70                         #size-cells = <0>;
71                         pwm_reg0: regulator@0 {
72                                 regulator-compatible = "pwm_dcdc1";
73                                 regulator-name= "vdd_logic";
74                                 regulator-min-microvolt = <925000>;
75                                 regulator-max-microvolt = <1400000>;
76                                 regulator-always-on;
77                                 regulator-boot-on;
78                         };
79                 };
80         };
81
82         codec_hdmi_i2s: codec-hdmi-i2s {
83                 compatible = "hdmi-i2s";
84         };
85
86         codec_hdmi_spdif: codec-hdmi-spdif {
87                 compatible = "hdmi-spdif";
88         };
89
90         rockchip-hdmi-i2s {
91                 compatible = "rockchip-hdmi-i2s";
92                 dais {
93                         dai0 {
94                                 audio-codec = <&codec_hdmi_i2s>;
95                                 i2s-controller = <&i2s>;
96                                 format = "i2s";
97                                 //continuous-clock;
98                                 //bitclock-inversion;
99                                 //frame-inversion;
100                                 //bitclock-master;
101                                 //frame-master;
102                         };
103                 };
104         };
105         
106         rockchip-hdmi-spdif {
107                 compatible = "rockchip-hdmi-spdif";
108         };
109
110         rockchip-rt5631 {
111                 compatible = "rockchip-rt5631";
112                 dais {
113                         dai0 {
114                                 audio-codec = <&rt5631>;
115                                 i2s-controller = <&i2s>;
116                                 format = "i2s";
117                                 //continuous-clock;
118                                 //bitclock-inversion;
119                                 //frame-inversion;
120                                 //bitclock-master;
121                                 //frame-master;
122                         };
123                 };
124         };
125
126         rockchip-rt3224 {
127                 compatible = "rockchip-rt3224";
128                 dais {
129                         dai0 {
130                                 audio-codec = <&rt3261>;
131                                 i2s-controller = <&i2s>;
132                                 format = "i2s";
133                                 //continuous-clock;
134                                 //bitclock-inversion;
135                                 //frame-inversion;
136                                 //bitclock-master;
137                                 //frame-master;
138                         };
139                 };
140         };
141
142 };
143
144 &emmc {
145         clock-frequency = <50000000>;
146         clock-freq-min-max = <400000 50000000>;
147
148         supports-highspeed;
149         supports-emmc;
150         bootpart-no-access;
151         
152         status = "okay";
153 };
154     
155 &sdmmc {
156         clock-frequency = <50000000>;
157         lock-freq-min-max = <400000 50000000>;              
158             
159         supports-highspeed;
160         supports-sd;
161         broken-cd;
162         card-detect-delay = <200>;
163
164         
165         vmmc-supply = <&rk808_ldo5_reg>;
166         status = "okay";
167 };
168                 
169 &sdio {
170         clock-frequency = <50000000>;
171         clock-freq-min-max = <200000 50000000>;
172                 
173         supports-highspeed;             
174         supports-sdio;
175         //cap-sdio-irq;
176
177         status = "diabled";
178 };
179
180 &spi0 {
181         status = "okay";
182 };
183
184 &spi1 {
185         status = "okay";
186 };
187
188 &spi2 {
189         status = "okay";
190 };
191
192 &i2c0 {
193         status = "okay";
194         rk808: rk808@1b {
195                 reg = <0x1b>;
196                 status = "okay";
197         };
198         
199         bq24296: bq24296@6b {
200                 compatible = "ti,bq24296";
201                 reg = <0x6b>;
202                 gpios = <&gpio0 GPIO_A7 GPIO_ACTIVE_HIGH>;
203                 bq24296,chg_current = <1000 500 2000>;
204                 status = "disable";
205         };
206         bq27320: bq27320@55 {
207                 compatible = "ti,bq27320";
208                 reg = <0x55>;
209         /*   gpios = <&gpio0 GPIO_A7 GPIO_ACTIVE_HIGH>; */
210                 status = "disable";
211         };
212 };
213
214 &i2c1 {
215         status = "okay";
216         rtc@51 {
217                 compatible = "nxp,pcf8563";
218                 reg = <0x51>;
219         };
220         
221         sensor@1d {
222                 compatible = "gs_mma8452";
223                 reg = <0x1d>;
224                 type = <SENSOR_TYPE_ACCEL>;
225                 irq-gpio = <&gpio8 GPIO_A0 IRQ_TYPE_EDGE_FALLING>;
226                 irq_enable = <1>;
227                 poll_delay_ms = <30>;
228                 layout = <1>;
229         };
230                 sensor@19 {
231                 compatible = "gs_lis3dh";
232                 reg = <0x19>;
233                 type = <SENSOR_TYPE_ACCEL>;
234                 irq-gpio = <&gpio0 GPIO_A0 IRQ_TYPE_LEVEL_LOW>;
235                 irq_enable = <1>;
236                 poll_delay_ms = <30>;
237                 layout = <1>;
238         };
239                 sensor@0d {
240                 compatible = "ak8963";
241                 reg = <0x0d>;
242                 type = <SENSOR_TYPE_COMPASS>;
243                 irq-gpio = <&gpio8 GPIO_A2 IRQ_TYPE_EDGE_RISING>;
244                 irq_enable = <1>;
245                 poll_delay_ms = <30>;
246                 layout = <1>;
247         };
248
249                 sensor@6b {
250                 compatible = "l3g20d_gyro";
251                 reg = <0x6b>;
252                 type = <SENSOR_TYPE_GYROSCOPE>;
253                 irq-gpio = <&gpio8 GPIO_A3 IRQ_TYPE_LEVEL_LOW>;
254                 irq_enable = <1>;
255                 poll_delay_ms = <30>;
256                 layout = <1>;
257         };
258         sensor@10 {
259               compatible = "ls_cm3218";
260               reg = <0x10>;
261               type = <SENSOR_TYPE_LIGHT>;
262               irq-gpio = <&gpio8 GPIO_A3 IRQ_TYPE_EDGE_FALLING>;              
263               irq_enable = <1>;
264               poll_delay_ms = <30>;
265               layout = <1>;
266        };
267         
268 };
269
270 &i2c2 {
271         status = "okay";
272         rt5631: rt5631@1a {
273                 compatible = "rt5631";
274                 reg = <0x1a>;
275         };
276         es8323: es8323@10 {
277                 compatible = "es8323";
278                 reg = <0x10>;
279         };
280         rt3261: rt3261@1c {
281                 compatible = "rt3261";
282                 reg = <0x1c>;
283                 codec-en-gpio = <0>;//sdk default high level
284                 spk-num= <2>;
285                 modem-input-mode = <1>;
286                 lout-to-modem_mode = <1>;
287                 spk-amplify = <2>;
288                 playback-if1-data_control = <0>;
289                 playback-if2-data_control = <0>;
290         };
291         rt5616: rt5616@1b {
292                 compatible = "rt5616";
293                 reg = <0x1b>;
294         };
295 };
296
297 &i2c3 {
298         status = "okay";
299 };
300
301 &i2c4 {
302         status = "okay";
303         ts@55 {
304                 compatible = "goodix,gt8xx";
305                 reg = <0x55>;
306                 touch-gpio = <&gpio7 GPIO_A6 IRQ_TYPE_LEVEL_LOW>;
307                 reset-gpio = <&gpio7 GPIO_A5 GPIO_ACTIVE_LOW>;
308                 //power-gpio = <&gpio0 GPIO_C5 GPIO_ACTIVE_LOW>;
309                 max-x = <1280>;
310                 max-y = <800>;
311         };
312         
313         ts@01 {
314                 compatible = "ct,ct36x";
315                 reg = <0x01>;
316                 ct-model = <365>;
317                 touch-gpio = <&gpio7 GPIO_A6 IRQ_TYPE_LEVEL_LOW>;
318                 reset-gpio = <&gpio7 GPIO_A5 GPIO_ACTIVE_HIGH>;
319                 max-x = <1280>;
320                 max-y = <800>;
321                 orientation=<1 0 0 1>;
322         };
323 };
324
325 &i2c5 {
326         status = "okay";
327 };
328
329 &fb {
330         rockchip,disp-mode = <DUAL>;
331 };
332
333 &rk_screen {
334          display-timings = <&disp_timings>;
335 };
336
337 /*lcdc1 as PRMRY(LCD),lcdc0 as EXTEND(HDMI)*/
338 &lcdc1 {
339         status = "okay";
340         power_ctr: power_ctr {
341                 rockchip,debug = <0>;
342                 rockchip,mirror = <NO_MIRROR>;
343                 lcd_en:lcd_en {
344                         rockchip,power_type = <GPIO>;
345                         gpios = <&gpio7 GPIO_A3 GPIO_ACTIVE_HIGH>;
346                         rockchip,delay = <10>;
347                 };
348                 
349                 /*lcd_cs:lcd_cs {
350                         rockchip,power_type = <REGULATOR>;
351                         rockchip,delay = <10>;
352                 };
353
354                 lcd_rst:lcd_rst {
355                         rockchip,power_type = <GPIO>;
356                         gpios = <&gpio3 GPIO_D6 GPIO_ACTIVE_HIGH>;
357                         rockchip,delay = <5>;
358                 };*/
359
360         };
361 };
362
363 &lcdc0 {
364         status = "okay";
365 };
366
367 &hdmi {
368         status = "okay";
369         rockchips,hdmi_audio_source = <0>;
370 };
371
372 &adc {
373         status = "okay";
374
375         key {
376                 compatible = "rockchip,key";
377                 io-channels = <&adc 1>;
378
379                 vol-up-key {
380                         linux,code = <115>;
381                         label = "volume up";
382                         rockchip,adc_value = <1>;
383                 };
384
385                 vol-down-key {
386                         linux,code = <114>;
387                         label = "volume down";
388                         rockchip,adc_value = <170>;
389                 };
390
391                 power-key {
392                         gpios = <&gpio0 GPIO_A4 GPIO_ACTIVE_LOW>;
393                         linux,code = <116>;
394                         label = "power";
395                         gpio-key,wakeup;
396                 };
397
398                 menu-key {
399                         linux,code = <139>;
400                         label = "menu";
401                         rockchip,adc_value = <355>;
402                 };
403
404                 home-key {
405                         linux,code = <102>;
406                         label = "home";
407                         rockchip,adc_value = <746>;
408                 };
409
410                 back-key {
411                         linux,code = <158>;
412                         label = "back";
413                         rockchip,adc_value = <560>;
414                 };
415
416                 camera-key {
417                         linux,code = <212>;
418                         label = "camera";
419                         rockchip,adc_value = <450>;
420                 };
421         };
422 };
423
424 &pwm1 {
425         status = "okay";
426 };
427
428
429 &clk_core_dvfs_table {
430         operating-points = <
431                 /* KHz    uV */
432                 312000 1100000
433                 504000 1100000
434                 816000 1100000
435                 1008000 1100000
436                 >;
437 };
438
439 &clk_gpu_dvfs_table {
440         operating-points = <
441                 /* KHz    uV */
442                 200000 1200000
443                 300000 1200000
444                 400000 1200000
445                 >;
446 };
447
448 &clk_ddr_dvfs_table {
449         operating-points = <
450                 /* KHz    uV */
451                 200000 1200000
452                 300000 1200000
453                 400000 1200000
454                 >;
455
456         freq_table = <
457                 /*status                freq(KHz)*/
458                 SYS_STATUS_NORMAL       400000
459                 SYS_STATUS_SUSPEND      200000
460                 SYS_STATUS_VIDEO        300000
461                 SYS_STATUS_DUALVIEW     500000
462                 >;
463 };
464
465 /include/ "rk808.dtsi"
466 &rk808 {
467         gpios =<&gpio0 GPIO_A4 GPIO_ACTIVE_HIGH>,<&gpio0 GPIO_B3 GPIO_ACTIVE_LOW>;
468
469         regulators {
470                 
471                 rk808_dcdc1_reg: regulator@0{
472                         regulator-name= "vdd_arm";
473                         regulator-always-on;
474                         regulator-boot-on;
475                 };
476
477                 rk808_dcdc2_reg: regulator@1 {
478                         regulator-name= "vdd_gpu";
479                         regulator-always-on;
480                         regulator-boot-on;
481                 };
482
483                 rk808_dcdc3_reg: regulator@2 {
484                         regulator-name= "rk_dcdc3";
485                         regulator-min-microvolt = <1200000>;
486                         regulator-max-microvolt = <1200000>;
487                         regulator-always-on;
488                         regulator-boot-on;
489                 };
490
491                 rk808_dcdc4_reg: regulator@3 {
492                         regulator-name= "vccio";
493                         regulator-min-microvolt = <1800000>;
494                         regulator-max-microvolt = <3300000>;
495                         regulator-always-on;
496                         regulator-boot-on;
497                 };
498
499                 rk808_ldo1_reg: regulator@4 {
500                         regulator-name= "rk_ldo1";
501                         regulator-min-microvolt = <3300000>;
502                         regulator-max-microvolt = <3300000>;
503                         regulator-always-on;
504                         regulator-boot-on;
505                 };
506
507                 rk808_ldo2_reg: regulator@5 {
508                         regulator-name= "rk_ldo2";
509                         regulator-min-microvolt = <3300000>;
510                         regulator-max-microvolt = <3300000>;
511                         regulator-always-on;
512                         regulator-boot-on;
513                 };
514
515                 rk808_ldo3_reg: regulator@6 {
516                         regulator-name= "rk_ldo3";
517                         regulator-min-microvolt = <1000000>;
518                         regulator-max-microvolt = <1000000>;
519                         regulator-always-on;
520                         regulator-boot-on;
521                 };
522
523                 rk808_ldo4_reg:regulator@7 {
524                         regulator-name= "rk_ldo4";
525                         regulator-min-microvolt = <1800000>;
526                         regulator-max-microvolt = <1800000>;
527                         regulator-always-on;
528                         regulator-boot-on;
529                 };
530
531                 rk808_ldo5_reg: regulator@8 {
532                         regulator-name= "rk_ldo5";
533                         regulator-min-microvolt = <3300000>;
534                         regulator-max-microvolt = <3300000>;
535                         regulator-always-on;
536                         regulator-boot-on;
537                 };
538
539                 rk808_ldo6_reg: regulator@9 {
540                         regulator-name= "rk_ldo6";
541                         regulator-min-microvolt = <1000000>;
542                         regulator-max-microvolt = <1000000>;
543                         regulator-always-on;
544                         regulator-boot-on;
545                 };
546
547                 rk808_ldo7_reg: regulator@10 {
548                         regulator-name= "rk_ldo7";
549                         regulator-min-microvolt = <1800000>;
550                         regulator-max-microvolt = <1800000>;
551                         regulator-always-on;
552                         regulator-boot-on;
553                 };
554
555                 rk808_ldo8_reg: regulator@11 {
556                         regulator-name= "rk_ldo8";
557                         regulator-min-microvolt = <3300000>;
558                         regulator-max-microvolt = <3300000>;
559                         regulator-always-on;
560                         regulator-boot-on;
561                 };
562         };
563 };