Commit | Line | Data |
---|---|---|
ee37a457 AW |
1 | // SPDX-License-Identifier: GPL-2.0 |
2 | /* | |
3 | * Samsung's Exynos4212 based Galaxy Tab 3 board common source | |
4 | * | |
5 | * Copyright (c) 2013 Samsung Electronics Co., Ltd. | |
6 | * http://www.samsung.com | |
7 | */ | |
8 | ||
9 | /dts-v1/; | |
10 | #include "exynos4212.dtsi" | |
11 | #include "exynos4412-ppmu-common.dtsi" | |
12 | #include "exynos-mfc-reserved-memory.dtsi" | |
13 | #include <dt-bindings/clock/samsung,s2mps11.h> | |
14 | #include <dt-bindings/gpio/gpio.h> | |
15 | #include <dt-bindings/leds/common.h> | |
16 | #include <dt-bindings/input/gpio-keys.h> | |
17 | #include <dt-bindings/input/input.h> | |
18 | #include <dt-bindings/interrupt-controller/irq.h> | |
19 | #include "exynos-pinctrl.h" | |
20 | ||
21 | / { | |
22 | compatible = "samsung,tab3", "samsung,exynos4212", "samsung,exynos4"; | |
23 | ||
24 | memory@40000000 { | |
25 | device_type = "memory"; | |
26 | ||
27 | /* | |
28 | * Technically 1.5GB is available, but the latter 512MB is handled | |
29 | * in a special way by downstream (every second page is skipped), | |
30 | * and thus doesn't initialize correctly on mainline. Only 1020M is | |
31 | * used for now. | |
32 | */ | |
33 | reg = <0x40000000 0x3fc00000>; | |
34 | }; | |
35 | ||
36 | aliases { | |
37 | mmc0 = &mshc_0; /* Internal storage */ | |
38 | mmc1 = &sdhci_2; /* SD card */ | |
39 | mmc2 = &sdhci_3; /* WiFi */ | |
40 | }; | |
41 | ||
42 | chosen { | |
43 | stdout-path = &serial_2; | |
44 | ||
45 | /* Default S-BOOT bootloader loads initramfs here */ | |
46 | linux,initrd-start = <0x42000000>; | |
47 | linux,initrd-end = <0x42800000>; | |
48 | }; | |
49 | ||
50 | firmware@204f000 { | |
51 | compatible = "samsung,secure-firmware"; | |
52 | reg = <0x0204F000 0x1000>; | |
53 | }; | |
54 | ||
55 | fixed-rate-clocks { | |
56 | xxti { | |
57 | compatible = "samsung,clock-xxti"; | |
58 | clock-frequency = <0>; | |
59 | }; | |
60 | ||
61 | xusbxti { | |
62 | compatible = "samsung,clock-xusbxti"; | |
63 | clock-frequency = <24000000>; | |
64 | }; | |
65 | }; | |
66 | ||
67 | gpio-keys { | |
68 | compatible = "gpio-keys"; | |
69 | pinctrl-names = "default"; | |
70 | pinctrl-0 = <&gpio_keys>; | |
71 | ||
72 | key-power { | |
73 | gpios = <&gpx2 7 GPIO_ACTIVE_LOW>; | |
74 | linux,code = <KEY_POWER>; | |
75 | label = "power"; | |
76 | debounce-interval = <10>; | |
77 | wakeup-source; | |
78 | }; | |
79 | ||
80 | key-up { | |
81 | gpios = <&gpx2 2 GPIO_ACTIVE_LOW>; | |
82 | linux,code = <KEY_VOLUMEUP>; | |
83 | label = "volume down"; | |
84 | debounce-interval = <10>; | |
85 | }; | |
86 | ||
87 | key-down { | |
88 | gpios = <&gpx3 3 GPIO_ACTIVE_LOW>; | |
89 | linux,code = <KEY_VOLUMEDOWN>; | |
90 | label = "volume up"; | |
91 | debounce-interval = <10>; | |
92 | }; | |
93 | ||
94 | key-home { | |
95 | gpios = <&gpx1 2 GPIO_ACTIVE_LOW>; | |
96 | linux,code = <KEY_HOME>; | |
97 | label = "home"; | |
98 | debounce-interval = <10>; | |
99 | }; | |
100 | ||
101 | switch-hall-sensor { | |
102 | gpios = <&gpx2 4 GPIO_ACTIVE_LOW>; | |
103 | linux,input-type = <EV_SW>; | |
104 | linux,code = <SW_LID>; | |
105 | linux,can-disable; | |
106 | label = "hall effect sensor"; | |
107 | debounce-interval = <10>; | |
108 | wakeup-source; | |
109 | }; | |
110 | }; | |
111 | ||
112 | led-touchkeys { | |
113 | compatible = "regulator-led"; | |
114 | vled-supply = <&ldo20_reg>; | |
115 | default-state = "off"; | |
116 | function = LED_FUNCTION_KBD_BACKLIGHT; | |
117 | color = <LED_COLOR_ID_WHITE>; | |
118 | }; | |
119 | ||
120 | i2c_max77693: i2c-gpio-1 { | |
121 | compatible = "i2c-gpio"; | |
122 | sda-gpios = <&gpm2 0 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; | |
123 | scl-gpios = <&gpm2 1 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; | |
124 | i2c-gpio,delay-us = <2>; | |
125 | #address-cells = <1>; | |
126 | #size-cells = <0>; | |
127 | ||
128 | pmic@66 { | |
129 | compatible = "maxim,max77693"; | |
130 | reg = <0x66>; | |
131 | interrupt-parent = <&gpx1>; | |
132 | interrupts = <5 IRQ_TYPE_EDGE_FALLING>; | |
133 | pinctrl-names = "default"; | |
134 | pinctrl-0 = <&max77693_irq>; | |
135 | ||
136 | regulators { | |
137 | esafeout1_reg: ESAFEOUT1 { | |
138 | regulator-name = "ESAFEOUT1"; | |
139 | regulator-boot-on; | |
140 | }; | |
141 | ||
142 | esafeout2_reg: ESAFEOUT2 { | |
143 | regulator-name = "ESAFEOUT2"; | |
144 | }; | |
145 | ||
146 | charger_reg: CHARGER { | |
147 | regulator-name = "CHARGER"; | |
148 | regulator-min-microamp = <60000>; | |
149 | regulator-max-microamp = <2580000>; | |
150 | regulator-boot-on; | |
151 | }; | |
152 | }; | |
153 | ||
154 | charger { | |
155 | compatible = "maxim,max77693-charger"; | |
156 | ||
157 | maxim,constant-microvolt = <4350000>; | |
158 | maxim,min-system-microvolt = <3600000>; | |
159 | maxim,thermal-regulation-celsius = <100>; | |
160 | maxim,battery-overcurrent-microamp = <3500000>; | |
161 | maxim,charge-input-threshold-microvolt = <4300000>; | |
162 | }; | |
163 | }; | |
164 | }; | |
165 | ||
166 | i2c_max77693_fuel: i2c-gpio-2 { | |
167 | compatible = "i2c-gpio"; | |
168 | sda-gpios = <&gpy0 2 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; | |
169 | scl-gpios = <&gpy0 3 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; | |
170 | i2c-gpio,delay-us = <2>; | |
171 | #address-cells = <1>; | |
172 | #size-cells = <0>; | |
173 | ||
174 | fuel-gauge@36 { | |
175 | compatible = "maxim,max17050"; | |
176 | reg = <0x36>; | |
177 | interrupt-parent = <&gpx2>; | |
178 | interrupts = <3 IRQ_TYPE_EDGE_FALLING>; | |
179 | pinctrl-names = "default"; | |
180 | pinctrl-0 = <&max77693_fuel_irq>; | |
181 | ||
182 | maxim,over-heat-temp = <500>; | |
183 | maxim,over-volt = <4500>; | |
184 | }; | |
185 | }; | |
186 | ||
187 | i2c_magnetometer: i2c-gpio-3 { | |
188 | compatible = "i2c-gpio"; | |
189 | sda-gpios = <&gpy2 4 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; | |
190 | scl-gpios = <&gpy2 5 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; | |
191 | i2c-gpio,delay-us = <2>; | |
192 | #address-cells = <1>; | |
193 | #size-cells = <0>; | |
194 | ||
195 | magnetometer@2e { | |
196 | compatible = "yamaha,yas532"; | |
197 | reg = <0x2e>; | |
198 | iovdd-supply = <&ldo3_reg>; | |
199 | mount-matrix = "-1", "0", "0", | |
200 | "0", "1", "0", | |
201 | "0", "0", "-1"; | |
202 | }; | |
203 | }; | |
204 | ||
205 | i2c_lightsensor: i2c-gpio-4 { | |
206 | compatible = "i2c-gpio"; | |
207 | sda-gpios = <&gpl0 2 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; | |
208 | scl-gpios = <&gpl0 1 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; | |
209 | i2c-gpio,delay-us = <2>; | |
210 | #address-cells = <1>; | |
211 | #size-cells = <0>; | |
212 | status = "disabled"; | |
213 | ||
214 | /* WiFi model uses CM3323, 3G/LTE use CM36653 */ | |
215 | }; | |
216 | ||
217 | i2c_bl: i2c-gpio-5 { | |
218 | compatible = "i2c-gpio"; | |
219 | sda-gpios = <&gpm4 3 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; | |
220 | scl-gpios = <&gpm4 2 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; | |
221 | #address-cells = <1>; | |
222 | #size-cells = <0>; | |
223 | ||
224 | backlight: backlight@2c { | |
225 | compatible = "ti,lp8556"; | |
226 | reg = <0x2c>; | |
227 | ||
228 | bl-name = "lcd-bl"; | |
229 | dev-ctrl = /bits/ 8 <0x80>; | |
230 | init-brt = /bits/ 8 <0x78>; /* 120 */ | |
231 | ||
232 | power-supply = <&vbatt_reg>; | |
233 | enable-supply = <&backlight_reset_supply>; | |
234 | ||
235 | pwms = <&pwm 1 78770 0>; | |
236 | pwm-names = "lp8556"; | |
237 | ||
238 | rom-a3h { | |
239 | rom-addr = /bits/ 8 <0xa3>; | |
240 | rom-val = /bits/ 8 <0x5e>; | |
241 | }; | |
242 | ||
243 | rom-a5h { | |
244 | rom-addr = /bits/ 8 <0xa5>; | |
245 | rom-val = /bits/ 8 <0x34>; | |
246 | }; | |
247 | ||
248 | rom-a7h { | |
249 | rom-addr = /bits/ 8 <0xa7>; | |
250 | rom-val = /bits/ 8 <0xfa>; | |
251 | }; | |
252 | }; | |
253 | }; | |
254 | ||
255 | vbatt_reg: voltage-regulator-1 { | |
256 | compatible = "regulator-fixed"; | |
257 | regulator-name = "VBATT"; | |
258 | regulator-min-microvolt = <5000000>; | |
259 | regulator-max-microvolt = <5000000>; | |
260 | regulator-always-on; | |
261 | }; | |
262 | ||
263 | backlight_reset_supply: voltage-regulator-2 { | |
264 | compatible = "regulator-fixed"; | |
265 | regulator-name = "BACKLIGHT_ENVDDIO"; | |
266 | pinctrl-names = "default"; | |
267 | pinctrl-0 = <&backlight_reset>; | |
268 | gpio = <&gpm0 1 GPIO_ACTIVE_HIGH>; | |
269 | enable-active-high; | |
270 | }; | |
271 | ||
272 | display_3v3_supply: voltage-regulator-3 { | |
273 | compatible = "regulator-fixed"; | |
274 | regulator-name = "DISPLAY_3.3V"; | |
275 | regulator-min-microvolt = <3300000>; | |
276 | regulator-max-microvolt = <3300000>; | |
277 | pinctrl-names = "default"; | |
278 | pinctrl-0 = <&lcd_en>; | |
279 | gpio = <&gpc0 1 GPIO_ACTIVE_HIGH>; /* LCD_EN */ | |
280 | enable-active-high; | |
281 | }; | |
282 | ||
283 | mic_bias_reg: voltage-regulator-4 { | |
284 | compatible = "regulator-fixed"; | |
285 | regulator-name = "MICBIAS_LDO_2.8V"; | |
286 | regulator-min-microvolt = <2800000>; | |
287 | regulator-max-microvolt = <2800000>; | |
288 | }; | |
289 | ||
290 | submic_bias_reg: voltage-regulator-5 { | |
291 | compatible = "regulator-fixed"; | |
292 | regulator-name = "SUB_MICBIAS_LDO_2.8V"; | |
293 | regulator-min-microvolt = <2800000>; | |
294 | regulator-max-microvolt = <2800000>; | |
295 | }; | |
296 | ||
297 | sound: sound { | |
298 | compatible = "samsung,midas-audio"; | |
299 | model = "TAB3"; | |
300 | mic-bias-supply = <&mic_bias_reg>; | |
301 | submic-bias-supply = <&submic_bias_reg>; | |
302 | ||
fc730f17 KK |
303 | audio-routing = "HP", "HPOUT1L", |
304 | "HP", "HPOUT1R", | |
ee37a457 | 305 | |
fc730f17 KK |
306 | "SPK", "SPKOUTLN", |
307 | "SPK", "SPKOUTLP", | |
308 | "SPK", "SPKOUTRN", | |
309 | "SPK", "SPKOUTRP", | |
ee37a457 | 310 | |
fc730f17 KK |
311 | "RCV", "HPOUT2N", |
312 | "RCV", "HPOUT2P", | |
ee37a457 | 313 | |
fc730f17 KK |
314 | "LINE", "LINEOUT2N", |
315 | "LINE", "LINEOUT2P", | |
ee37a457 | 316 | |
fc730f17 KK |
317 | "HDMI", "LINEOUT1N", |
318 | "HDMI", "LINEOUT1P", | |
ee37a457 | 319 | |
fc730f17 KK |
320 | "IN2LP:VXRN", "MICBIAS1", |
321 | "IN2LN", "MICBIAS1", | |
322 | "Main Mic", "MICBIAS1", | |
ee37a457 | 323 | |
fc730f17 KK |
324 | "IN1RP", "MICBIAS2", |
325 | "IN1RN", "MICBIAS2", | |
326 | "Sub Mic", "MICBIAS2", | |
ee37a457 | 327 | |
fc730f17 KK |
328 | "IN1LP", "Headset Mic", |
329 | "IN1LN", "Headset Mic"; | |
ee37a457 AW |
330 | |
331 | cpu { | |
332 | sound-dai = <&i2s0 0>; | |
333 | }; | |
334 | ||
335 | codec { | |
336 | sound-dai = <&wm1811>; | |
337 | }; | |
338 | }; | |
339 | ||
340 | wlan_pwrseq: sdhci3-pwrseq { | |
341 | compatible = "mmc-pwrseq-simple"; | |
342 | reset-gpios = <&gpm3 5 GPIO_ACTIVE_LOW>; | |
343 | clocks = <&s5m8767_osc S2MPS11_CLK_BT>; | |
344 | clock-names = "ext_clock"; | |
345 | }; | |
346 | }; | |
347 | ||
348 | &bus_acp { | |
349 | devfreq = <&bus_dmc>; | |
350 | status = "okay"; | |
351 | }; | |
352 | ||
353 | &bus_c2c { | |
354 | devfreq = <&bus_dmc>; | |
355 | status = "okay"; | |
356 | }; | |
357 | ||
358 | &bus_display { | |
359 | devfreq = <&bus_leftbus>; | |
360 | status = "okay"; | |
361 | }; | |
362 | ||
363 | &bus_dmc { | |
364 | devfreq-events = <&ppmu_dmc0_3>, <&ppmu_dmc1_3>; | |
365 | vdd-supply = <&buck1_reg>; | |
366 | status = "okay"; | |
367 | }; | |
368 | ||
369 | &bus_fsys { | |
370 | devfreq = <&bus_leftbus>; | |
371 | status = "okay"; | |
372 | }; | |
373 | ||
374 | &bus_leftbus { | |
375 | devfreq-events = <&ppmu_leftbus_3>, <&ppmu_rightbus_3>; | |
376 | vdd-supply = <&buck3_reg>; | |
377 | status = "okay"; | |
378 | }; | |
379 | ||
380 | &bus_mfc { | |
381 | devfreq = <&bus_leftbus>; | |
382 | status = "okay"; | |
383 | }; | |
384 | ||
385 | &bus_peri { | |
386 | devfreq = <&bus_leftbus>; | |
387 | status = "okay"; | |
388 | }; | |
389 | ||
390 | &bus_rightbus { | |
391 | devfreq = <&bus_leftbus>; | |
392 | status = "okay"; | |
393 | }; | |
394 | ||
395 | &cpu0 { | |
396 | cpu0-supply = <&buck2_reg>; | |
397 | }; | |
398 | ||
399 | &cpu_thermal { | |
400 | cooling-maps { | |
401 | map0 { | |
402 | /* Corresponds to 800MHz at freq_table */ | |
403 | cooling-device = <&cpu0 7 7>, <&cpu1 7 7>; | |
404 | }; | |
405 | map1 { | |
406 | /* Corresponds to 200MHz at freq_table */ | |
407 | cooling-device = <&cpu0 13 13>, <&cpu1 13 13>; | |
408 | }; | |
409 | }; | |
410 | }; | |
411 | ||
412 | &dsi_0 { | |
413 | vddcore-supply = <&ldo8_reg>; | |
414 | vddio-supply = <&ldo10_reg>; | |
415 | samsung,burst-clock-frequency = <500000000>; | |
416 | samsung,esc-clock-frequency = <20000000>; | |
417 | samsung,pll-clock-frequency = <24000000>; | |
418 | status = "okay"; | |
419 | ||
420 | panel@0 { | |
421 | compatible = "samsung,lsl080al02", "samsung,s6d7aa0"; | |
422 | reg = <0>; | |
423 | power-supply = <&display_3v3_supply>; | |
424 | pinctrl-names = "default"; | |
425 | pinctrl-0 = <&lcd_nrst>; | |
426 | reset-gpios = <&gpf0 4 GPIO_ACTIVE_LOW>; | |
427 | backlight = <&backlight>; | |
428 | }; | |
429 | }; | |
430 | ||
431 | &exynos_usbphy { | |
432 | vbus-supply = <&esafeout1_reg>; | |
433 | status = "okay"; | |
434 | }; | |
435 | ||
436 | &fimd { | |
eab4f56d | 437 | samsung,invert-vclk; |
ee37a457 AW |
438 | status = "okay"; |
439 | }; | |
440 | ||
441 | &gpu { | |
442 | mali-supply = <&buck4_reg>; | |
443 | status = "okay"; | |
444 | }; | |
445 | ||
446 | &hsotg { | |
447 | vusb_d-supply = <&ldo15_reg>; | |
448 | vusb_a-supply = <&ldo12_reg>; | |
449 | dr_mode = "otg"; | |
450 | status = "okay"; | |
451 | }; | |
452 | ||
453 | &i2c_1 { | |
454 | pinctrl-0 = <&i2c1_bus>; | |
455 | pinctrl-names = "default"; | |
456 | status = "okay"; | |
457 | ||
458 | lis3dh: accelerometer@19 { | |
459 | /* K2DH seems to be the same as lis2dh12 in terms of registers */ | |
460 | compatible = "st,lis2dh12-accel"; | |
461 | reg = <0x19>; | |
462 | ||
463 | interrupt-parent = <&gpx0>; | |
464 | interrupts = <0 IRQ_TYPE_EDGE_FALLING>; | |
465 | ||
466 | vdd-supply = <&ldo17_reg>; | |
467 | vddio-supply = <&ldo3_reg>; | |
468 | ||
469 | mount-matrix = "-1", "0", "0", | |
470 | "0", "1", "0", | |
471 | "0", "0", "-1"; | |
472 | }; | |
473 | }; | |
474 | ||
475 | &i2c_3 { | |
476 | samsung,i2c-sda-delay = <100>; | |
477 | samsung,i2c-slave-addr = <0x10>; | |
478 | samsung,i2c-max-bus-freq = <400000>; | |
479 | pinctrl-0 = <&i2c3_bus>; | |
480 | pinctrl-names = "default"; | |
481 | status = "okay"; | |
482 | ||
483 | touchscreen@48 { | |
484 | /* MELFAS MMS252, using MMS114 compatible for now */ | |
485 | compatible = "melfas,mms114"; | |
486 | reg = <0x48>; | |
487 | interrupt-parent = <&gpb>; | |
488 | interrupts = <4 IRQ_TYPE_EDGE_FALLING>; | |
489 | touchscreen-size-x = <800>; | |
490 | touchscreen-size-y = <1280>; | |
491 | avdd-supply = <&ldo21_reg>; | |
492 | vdd-supply = <&ldo25_reg>; | |
493 | linux,keycodes = <KEY_MENU KEY_BACK>; | |
494 | }; | |
495 | }; | |
496 | ||
497 | &i2c_4 { | |
498 | samsung,i2c-sda-delay = <100>; | |
499 | samsung,i2c-slave-addr = <0x10>; | |
500 | samsung,i2c-max-bus-freq = <100000>; | |
501 | pinctrl-0 = <&i2c4_bus>; | |
502 | pinctrl-names = "default"; | |
503 | status = "okay"; | |
504 | ||
505 | wm1811: audio-codec@1a { | |
506 | compatible = "wlf,wm1811"; | |
507 | reg = <0x1a>; | |
508 | clocks = <&pmu_system_controller 0>; | |
509 | clock-names = "MCLK1"; | |
510 | interrupt-controller; | |
511 | #interrupt-cells = <2>; | |
512 | interrupt-parent = <&gpx3>; | |
513 | interrupts = <6 IRQ_TYPE_LEVEL_HIGH>; | |
514 | ||
515 | gpio-controller; | |
516 | #gpio-cells = <2>; | |
517 | #sound-dai-cells = <0>; | |
518 | ||
519 | wlf,gpio-cfg = <0x3 0x0 0x0 0x0 0x0 0x0 | |
520 | 0x0 0x8000 0x0 0x0 0x0>; | |
521 | wlf,micbias-cfg = <0x25 0x2f>; | |
522 | ||
523 | wlf,lineout1-feedback; | |
524 | wlf,lineout1-se; | |
525 | wlf,lineout2-se; | |
526 | wlf,ldoena-always-driven; | |
527 | ||
528 | AVDD2-supply = <&ldo3_reg>; | |
529 | CPVDD-supply = <&ldo3_reg>; | |
530 | DBVDD1-supply = <&ldo3_reg>; | |
531 | DBVDD2-supply = <&ldo3_reg>; | |
532 | DBVDD3-supply = <&ldo3_reg>; | |
533 | SPKVDD1-supply = <&vbatt_reg>; | |
534 | SPKVDD2-supply = <&vbatt_reg>; | |
535 | wlf,ldo1ena-gpios = <&gpm4 4 GPIO_ACTIVE_HIGH>; | |
536 | wlf,ldo2ena-gpios = <&gpm4 4 GPIO_ACTIVE_HIGH>; | |
537 | }; | |
538 | }; | |
539 | ||
540 | &i2c_7 { | |
541 | samsung,i2c-sda-delay = <100>; | |
542 | samsung,i2c-slave-addr = <0x10>; | |
543 | samsung,i2c-max-bus-freq = <100000>; | |
544 | pinctrl-0 = <&i2c7_bus>; | |
545 | pinctrl-names = "default"; | |
546 | status = "okay"; | |
547 | ||
548 | s5m8767: pmic@66 { | |
549 | compatible = "samsung,s5m8767-pmic"; | |
550 | reg = <0x66>; | |
551 | interrupt-parent = <&gpx0>; | |
552 | interrupts = <7 IRQ_TYPE_LEVEL_LOW>; | |
553 | pinctrl-names = "default"; | |
554 | pinctrl-0 = <&s5m8767_irq &s5m8767_dvs &s5m8767_ds>; | |
555 | wakeup-source; | |
556 | ||
557 | s5m8767,pmic-buck-default-dvs-idx = <1>; | |
558 | ||
559 | s5m8767,pmic-buck-dvs-gpios = <&gpm3 0 GPIO_ACTIVE_HIGH>, | |
560 | <&gpm3 1 GPIO_ACTIVE_HIGH>, | |
561 | <&gpm3 2 GPIO_ACTIVE_HIGH>; | |
562 | ||
563 | s5m8767,pmic-buck-ds-gpios = <&gpf3 1 GPIO_ACTIVE_HIGH>, | |
564 | <&gpf3 2 GPIO_ACTIVE_HIGH>, | |
565 | <&gpf3 3 GPIO_ACTIVE_HIGH>; | |
566 | ||
567 | s5m8767,pmic-buck2-dvs-voltage = <1100000>, <1100000>, | |
568 | <1100000>, <1100000>, | |
569 | <1100000>, <1100000>, | |
570 | <1100000>, <1100000>; | |
571 | ||
572 | s5m8767,pmic-buck3-dvs-voltage = <1100000>, <1100000>, | |
573 | <1100000>, <1100000>, | |
574 | <1100000>, <1100000>, | |
575 | <1100000>, <1100000>; | |
576 | ||
577 | s5m8767,pmic-buck4-dvs-voltage = <1100000>, <1100000>, | |
578 | <1100000>, <1100000>, | |
579 | <1100000>, <1100000>, | |
580 | <1100000>, <1100000>; | |
581 | ||
582 | regulators { | |
583 | ldo1_reg: LDO1 { | |
584 | regulator-name = "VALIVE_1.0V_AP"; | |
585 | regulator-min-microvolt = <1000000>; | |
586 | regulator-max-microvolt = <1000000>; | |
587 | regulator-always-on; | |
588 | regulator-boot-on; | |
589 | op_mode = <1>; | |
590 | }; | |
591 | ||
592 | ldo2_reg: LDO2 { | |
593 | regulator-name = "VM1M2_1.2V_AP"; | |
594 | regulator-min-microvolt = <1200000>; | |
595 | regulator-max-microvolt = <1200000>; | |
596 | regulator-always-on; | |
597 | regulator-boot-on; | |
598 | op_mode = <1>; | |
599 | }; | |
600 | ||
601 | ldo3_reg: LDO3 { | |
602 | regulator-name = "VCC_1.8V_AP"; | |
603 | regulator-min-microvolt = <1800000>; | |
604 | regulator-max-microvolt = <1800000>; | |
605 | regulator-always-on; | |
606 | op_mode = <1>; | |
607 | }; | |
608 | ||
609 | ldo5_reg: LDO5 { | |
610 | regulator-name = "VCC_3.3V_MHL"; | |
611 | regulator-min-microvolt = <3300000>; | |
612 | regulator-max-microvolt = <3300000>; | |
613 | op_mode = <1>; | |
614 | }; | |
615 | ||
616 | ldo8_reg: LDO8 { | |
617 | regulator-name = "VMIPI_1.0V"; | |
618 | regulator-min-microvolt = <1000000>; | |
619 | regulator-max-microvolt = <1000000>; | |
620 | op_mode = <3>; | |
621 | }; | |
622 | ||
623 | ldo9_reg: LDO9 { | |
624 | regulator-name = "VSIL_1.2V"; | |
625 | regulator-min-microvolt = <1200000>; | |
626 | regulator-max-microvolt = <1200000>; | |
627 | op_mode = <1>; | |
628 | }; | |
629 | ||
630 | ldo10_reg: LDO10 { | |
631 | regulator-name = "VMIPI_1.8V"; | |
632 | regulator-min-microvolt = <1800000>; | |
633 | regulator-max-microvolt = <1800000>; | |
634 | op_mode = <3>; | |
635 | }; | |
636 | ||
637 | ldo12_reg: LDO12 { | |
638 | regulator-name = "VUOTG_3.0V"; | |
639 | regulator-min-microvolt = <3000000>; | |
640 | regulator-max-microvolt = <3000000>; | |
641 | op_mode = <1>; | |
642 | regulator-state-mem { | |
643 | regulator-off-in-suspend; | |
644 | }; | |
645 | }; | |
646 | ||
647 | ldo13_reg: LDO13 { | |
648 | regulator-name = "VCC_1.8V_MHL"; | |
649 | regulator-min-microvolt = <1800000>; | |
650 | regulator-max-microvolt = <1800000>; | |
651 | op_mode = <1>; | |
652 | }; | |
653 | ||
654 | ldo15_reg: LDO15 { | |
655 | regulator-name = "VHSIC_1.0V"; | |
656 | regulator-min-microvolt = <1000000>; | |
657 | regulator-max-microvolt = <1000000>; | |
658 | op_mode = <1>; | |
659 | regulator-state-mem { | |
660 | regulator-on-in-suspend; | |
661 | }; | |
662 | }; | |
663 | ||
664 | ldo17_reg: LDO17 { | |
665 | regulator-name = "VCC_2.8V_AP"; | |
666 | regulator-min-microvolt = <2800000>; | |
667 | regulator-max-microvolt = <2800000>; | |
668 | op_mode = <1>; | |
669 | regulator-always-on; | |
670 | }; | |
671 | ||
672 | ldo19_reg: LDO19 { | |
673 | regulator-name = "VLED_IC_1.9V"; | |
674 | regulator-min-microvolt = <1900000>; | |
675 | regulator-max-microvolt = <1900000>; | |
676 | op_mode = <1>; | |
677 | regulator-always-on; | |
678 | }; | |
679 | ||
680 | ldo20_reg: LDO20 { | |
681 | regulator-name = "VTOUCH_3.3V"; | |
682 | regulator-min-microvolt = <3300000>; | |
683 | regulator-max-microvolt = <3300000>; | |
684 | op_mode = <1>; | |
685 | }; | |
686 | ||
687 | ldo21_reg: LDO21 { | |
688 | regulator-name = "TSP_VDD_3.3V"; | |
689 | regulator-min-microvolt = <3300000>; | |
690 | regulator-max-microvolt = <3300000>; | |
691 | op_mode = <1>; | |
692 | }; | |
693 | ||
694 | ldo22_reg: LDO22 { | |
695 | regulator-name = "5M_AF_2.8V"; | |
696 | regulator-min-microvolt = <2800000>; | |
697 | regulator-max-microvolt = <2800000>; | |
698 | op_mode = <1>; | |
699 | }; | |
700 | ||
701 | ldo23_reg: LDO23 { | |
702 | regulator-name = "VTF_2.8V"; | |
703 | regulator-min-microvolt = <2800000>; | |
704 | regulator-max-microvolt = <2800000>; | |
705 | op_mode = <3>; | |
706 | }; | |
707 | ||
708 | ldo24_reg: LDO24 { | |
709 | regulator-name = "LEDA_2.8V"; | |
710 | regulator-min-microvolt = <2800000>; | |
711 | regulator-max-microvolt = <2800000>; | |
712 | op_mode = <1>; | |
713 | }; | |
714 | ||
715 | ldo25_reg: LDO25 { | |
716 | regulator-name = "TSP_VDD_1.8V"; | |
717 | regulator-min-microvolt = <1800000>; | |
718 | regulator-max-microvolt = <1800000>; | |
719 | op_mode = <1>; | |
720 | }; | |
721 | ||
722 | ldo26_reg: LDO26 { | |
723 | regulator-name = "CAM_IO_1.8V"; | |
724 | regulator-min-microvolt = <1800000>; | |
725 | regulator-max-microvolt = <1800000>; | |
726 | op_mode = <1>; | |
727 | }; | |
728 | ||
729 | ldo27_reg: LDO27 { | |
730 | regulator-name = "VTCAM_1.8V"; | |
731 | regulator-min-microvolt = <1800000>; | |
732 | regulator-max-microvolt = <1800000>; | |
733 | op_mode = <1>; | |
734 | }; | |
735 | ||
736 | buck1_reg: BUCK1 { | |
737 | regulator-name = "VDD_MIF"; | |
738 | regulator-min-microvolt = <850000>; | |
739 | regulator-max-microvolt = <1100000>; | |
740 | regulator-always-on; | |
741 | regulator-boot-on; | |
742 | op_mode = <3>; | |
743 | }; | |
744 | ||
745 | buck2_reg: BUCK2 { | |
746 | regulator-name = "VDD_ARM"; | |
747 | regulator-min-microvolt = <850000>; | |
748 | regulator-max-microvolt = <1500000>; | |
749 | regulator-always-on; | |
750 | regulator-boot-on; | |
751 | op_mode = <3>; | |
752 | }; | |
753 | ||
754 | buck3_reg: BUCK3 { | |
755 | regulator-name = "VDD_INT"; | |
756 | regulator-min-microvolt = <850000>; | |
757 | regulator-max-microvolt = <1300000>; | |
758 | regulator-always-on; | |
759 | regulator-boot-on; | |
760 | op_mode = <3>; | |
761 | }; | |
762 | ||
763 | buck4_reg: BUCK4 { | |
764 | regulator-name = "VDD_G3D"; | |
765 | regulator-min-microvolt = <850000>; | |
766 | regulator-max-microvolt = <1150000>; | |
767 | regulator-boot-on; | |
768 | op_mode = <3>; | |
769 | }; | |
770 | ||
771 | buck5_reg: BUCK5 { | |
772 | regulator-name = "VMEM_1.2V_AP"; | |
773 | regulator-min-microvolt = <1200000>; | |
774 | regulator-max-microvolt = <1200000>; | |
775 | regulator-always-on; | |
776 | regulator-boot-on; | |
777 | op_mode = <1>; | |
778 | }; | |
779 | ||
780 | buck6_reg: BUCK6 { | |
781 | regulator-name = "CAM_ISP_CORE_1.2V"; | |
782 | regulator-min-microvolt = <1200000>; | |
783 | regulator-max-microvolt = <1200000>; | |
784 | op_mode = <1>; | |
785 | ||
786 | regulator-state-mem { | |
787 | regulator-off-in-suspend; | |
788 | }; | |
789 | }; | |
790 | }; | |
791 | ||
792 | s5m8767_osc: clocks { | |
793 | compatible = "samsung,s5m8767-clk"; | |
794 | #clock-cells = <1>; | |
795 | clock-output-names = "en32khz_ap", | |
796 | "en32khz_cp", | |
797 | "en32khz_bt"; | |
798 | }; | |
799 | }; | |
800 | }; | |
801 | ||
802 | &i2s0 { | |
803 | pinctrl-0 = <&i2s0_bus>; | |
804 | pinctrl-names = "default"; | |
805 | status = "okay"; | |
806 | }; | |
807 | ||
808 | &mshc_0 { | |
809 | broken-cd; | |
810 | non-removable; | |
811 | card-detect-delay = <200>; | |
812 | vmmc-supply = <&ldo22_reg>; | |
813 | clock-frequency = <400000000>; | |
814 | samsung,dw-mshc-ciu-div = <0>; | |
815 | samsung,dw-mshc-sdr-timing = <2 3>; | |
816 | samsung,dw-mshc-ddr-timing = <1 2>; | |
817 | pinctrl-0 = <&sd4_clk &sd4_cmd &sd4_bus4 &sd4_bus8>; | |
818 | pinctrl-names = "default"; | |
819 | bus-width = <8>; | |
820 | cap-mmc-highspeed; | |
821 | mmc-ddr-1_8v; | |
822 | status = "okay"; | |
823 | }; | |
824 | ||
825 | &pinctrl_0 { | |
826 | pinctrl-names = "default"; | |
827 | pinctrl-0 = <&sleep0>; | |
828 | ||
829 | lcd_en: lcd-en-pins { | |
830 | samsung,pins = "gpc0-1"; | |
831 | samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>; | |
832 | samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; | |
833 | }; | |
834 | ||
835 | lcd_nrst: lcd-nrst-pins { | |
836 | samsung,pins = "gpf0-4"; | |
837 | samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>; | |
838 | samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; | |
839 | }; | |
840 | ||
841 | s5m8767_ds: s5m8767-ds-pins { | |
842 | samsung,pins = "gpf3-1", "gpf3-2", "gpf3-3"; | |
843 | samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>; | |
844 | samsung,pin-pud = <EXYNOS_PIN_PULL_DOWN>; | |
845 | samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; | |
846 | }; | |
847 | ||
848 | sleep0: sleep-state { | |
849 | PIN_SLP(gpa0-0, INPUT, NONE); | |
850 | PIN_SLP(gpa0-1, OUT0, NONE); | |
851 | PIN_SLP(gpa0-2, INPUT, NONE); | |
852 | PIN_SLP(gpa0-3, INPUT, UP); | |
853 | PIN_SLP(gpa0-4, INPUT, DOWN); | |
854 | PIN_SLP(gpa0-5, INPUT, DOWN); | |
855 | PIN_SLP(gpa0-6, INPUT, DOWN); | |
856 | PIN_SLP(gpa0-7, INPUT, DOWN); | |
857 | ||
858 | PIN_SLP(gpa1-0, INPUT, DOWN); | |
859 | PIN_SLP(gpa1-1, INPUT, DOWN); | |
860 | PIN_SLP(gpa1-2, INPUT, DOWN); | |
861 | PIN_SLP(gpa1-3, INPUT, DOWN); | |
862 | PIN_SLP(gpa1-4, INPUT, DOWN); | |
863 | PIN_SLP(gpa1-5, INPUT, DOWN); | |
864 | ||
865 | PIN_SLP(gpb-0, INPUT, NONE); | |
866 | PIN_SLP(gpb-1, INPUT, NONE); | |
867 | PIN_SLP(gpb-2, INPUT, NONE); | |
868 | PIN_SLP(gpb-3, INPUT, NONE); | |
869 | PIN_SLP(gpb-4, INPUT, DOWN); | |
870 | PIN_SLP(gpb-5, INPUT, DOWN); | |
871 | PIN_SLP(gpb-6, INPUT, DOWN); | |
872 | PIN_SLP(gpb-7, INPUT, DOWN); | |
873 | ||
874 | PIN_SLP(gpc0-0, INPUT, DOWN); | |
875 | PIN_SLP(gpc0-1, INPUT, DOWN); | |
876 | PIN_SLP(gpc0-2, INPUT, NONE); | |
877 | PIN_SLP(gpc0-3, INPUT, NONE); | |
878 | PIN_SLP(gpc0-4, INPUT, NONE); | |
879 | ||
880 | PIN_SLP(gpc1-0, INPUT, DOWN); | |
881 | PIN_SLP(gpc1-1, INPUT, DOWN); | |
882 | PIN_SLP(gpc1-2, INPUT, DOWN); | |
883 | PIN_SLP(gpc1-3, INPUT, DOWN); | |
884 | PIN_SLP(gpc1-4, INPUT, DOWN); | |
885 | ||
886 | PIN_SLP(gpd0-0, INPUT, DOWN); | |
887 | PIN_SLP(gpd0-1, OUT0, NONE); | |
888 | PIN_SLP(gpd0-2, INPUT, NONE); | |
889 | PIN_SLP(gpd0-3, INPUT, NONE); | |
890 | ||
891 | PIN_SLP(gpd1-0, INPUT, DOWN); | |
892 | PIN_SLP(gpd1-1, INPUT, DOWN); | |
893 | PIN_SLP(gpd1-2, INPUT, NONE); | |
894 | PIN_SLP(gpd1-3, INPUT, NONE); | |
895 | ||
896 | PIN_SLP(gpf0-0, INPUT, DOWN); | |
897 | PIN_SLP(gpf0-1, INPUT, DOWN); | |
898 | PIN_SLP(gpf0-2, INPUT, DOWN); | |
899 | PIN_SLP(gpf0-3, INPUT, DOWN); | |
900 | PIN_SLP(gpf0-4, OUT0, NONE); | |
901 | PIN_SLP(gpf0-5, OUT0, NONE); | |
902 | PIN_SLP(gpf0-6, INPUT, DOWN); | |
903 | PIN_SLP(gpf0-7, INPUT, DOWN); | |
904 | ||
905 | PIN_SLP(gpf1-0, INPUT, DOWN); | |
906 | PIN_SLP(gpf1-1, INPUT, DOWN); | |
907 | PIN_SLP(gpf1-2, INPUT, DOWN); | |
908 | PIN_SLP(gpf1-3, INPUT, DOWN); | |
909 | PIN_SLP(gpf1-4, INPUT, DOWN); | |
910 | PIN_SLP(gpf1-5, INPUT, DOWN); | |
911 | PIN_SLP(gpf1-6, INPUT, DOWN); | |
912 | PIN_SLP(gpf1-7, INPUT, DOWN); | |
913 | ||
914 | PIN_SLP(gpf2-0, INPUT, DOWN); | |
915 | PIN_SLP(gpf2-1, INPUT, DOWN); | |
916 | PIN_SLP(gpf2-2, INPUT, DOWN); | |
917 | PIN_SLP(gpf2-3, INPUT, DOWN); | |
918 | PIN_SLP(gpf2-4, INPUT, DOWN); | |
919 | PIN_SLP(gpf2-5, INPUT, DOWN); | |
920 | PIN_SLP(gpf2-6, INPUT, DOWN); | |
921 | PIN_SLP(gpf2-7, INPUT, DOWN); | |
922 | ||
923 | PIN_SLP(gpf3-0, INPUT, DOWN); | |
924 | PIN_SLP(gpf3-1, INPUT, DOWN); | |
925 | PIN_SLP(gpf3-2, INPUT, DOWN); | |
926 | PIN_SLP(gpf3-3, INPUT, DOWN); | |
927 | PIN_SLP(gpf3-4, PREV, NONE); | |
928 | PIN_SLP(gpf3-5, OUT0, DOWN); | |
929 | ||
930 | PIN_SLP(gpj0-0, INPUT, DOWN); | |
931 | PIN_SLP(gpj0-1, INPUT, DOWN); | |
932 | PIN_SLP(gpj0-2, INPUT, DOWN); | |
933 | PIN_SLP(gpj0-3, OUT0, NONE); | |
934 | PIN_SLP(gpj0-4, INPUT, DOWN); | |
935 | PIN_SLP(gpj0-5, INPUT, DOWN); | |
936 | PIN_SLP(gpj0-6, OUT0, NONE); | |
937 | PIN_SLP(gpj0-7, OUT0, NONE); | |
938 | ||
939 | PIN_SLP(gpj1-0, OUT0, NONE); | |
940 | PIN_SLP(gpj1-1, INPUT, DOWN); | |
941 | PIN_SLP(gpj1-2, PREV, NONE); | |
942 | PIN_SLP(gpj1-3, INPUT, DOWN); | |
943 | PIN_SLP(gpj1-4, INPUT, DOWN); | |
944 | }; | |
945 | }; | |
946 | ||
947 | &pinctrl_1 { | |
948 | pinctrl-names = "default"; | |
949 | pinctrl-0 = <&sleep1>; | |
950 | ||
951 | bt_shutdown: bt-shutdown-pins { | |
952 | samsung,pins = "gpl0-6"; | |
953 | samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; | |
954 | }; | |
955 | ||
956 | bt_host_wakeup: bt-host-wakeup-pins { | |
957 | samsung,pins = "gpx2-6"; | |
958 | samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; | |
959 | }; | |
960 | ||
961 | bt_device_wakeup: bt-device-wakeup-pins { | |
962 | samsung,pins = "gpx3-1"; | |
963 | samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; | |
964 | }; | |
965 | ||
966 | backlight_reset: backlight-reset-pins { | |
967 | samsung,pins = "gpm0-1"; | |
968 | samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>; | |
969 | samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; | |
970 | }; | |
971 | ||
972 | gpio_keys: gpio-keys-pins { | |
973 | samsung,pins = "gpx1-2", "gpx2-2", "gpx2-4", "gpx2-7", "gpx3-3"; | |
974 | samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; | |
975 | }; | |
976 | ||
977 | max77693_irq: max77693-irq-pins { | |
978 | samsung,pins = "gpx1-5"; | |
979 | samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>; | |
980 | samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; | |
981 | samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; | |
982 | }; | |
983 | ||
984 | max77693_fuel_irq: max77693-fuel-irq-pins { | |
985 | samsung,pins = "gpx2-3"; | |
986 | samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>; | |
987 | samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; | |
988 | samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; | |
989 | }; | |
990 | ||
991 | sdhci2_cd: sdhci2-cd-irq-pins { | |
992 | samsung,pins = "gpx3-4"; | |
993 | samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>; | |
994 | samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; | |
995 | samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; | |
996 | }; | |
997 | ||
998 | s5m8767_dvs: s5m8767-dvs-pins { | |
999 | samsung,pins = "gpm3-0", "gpm3-1", "gpm3-2"; | |
1000 | samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>; | |
1001 | samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; | |
1002 | samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; | |
1003 | }; | |
1004 | ||
1005 | s5m8767_irq: s5m8767-irq-pins { | |
1006 | samsung,pins = "gpx0-7"; | |
1007 | samsung,pin-function = <EXYNOS_PIN_FUNC_EINT>; | |
1008 | samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; | |
1009 | samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; | |
1010 | }; | |
1011 | ||
1012 | sleep1: sleep-state { | |
1013 | PIN_SLP(gpk0-0, PREV, NONE); | |
1014 | PIN_SLP(gpk0-1, PREV, NONE); | |
1015 | PIN_SLP(gpk0-2, PREV, NONE); | |
1016 | PIN_SLP(gpk0-3, PREV, NONE); | |
1017 | PIN_SLP(gpk0-4, PREV, NONE); | |
1018 | PIN_SLP(gpk0-5, PREV, NONE); | |
1019 | PIN_SLP(gpk0-6, PREV, NONE); | |
1020 | ||
1021 | PIN_SLP(gpk1-0, INPUT, DOWN); | |
1022 | PIN_SLP(gpk1-1, INPUT, DOWN); | |
1023 | PIN_SLP(gpk1-2, INPUT, DOWN); | |
1024 | PIN_SLP(gpk1-3, PREV, NONE); | |
1025 | PIN_SLP(gpk1-4, PREV, NONE); | |
1026 | PIN_SLP(gpk1-5, PREV, NONE); | |
1027 | PIN_SLP(gpk1-6, PREV, NONE); | |
1028 | ||
1029 | PIN_SLP(gpk2-0, INPUT, DOWN); | |
1030 | PIN_SLP(gpk2-1, INPUT, DOWN); | |
1031 | PIN_SLP(gpk2-2, INPUT, DOWN); | |
1032 | PIN_SLP(gpk2-3, INPUT, DOWN); | |
1033 | PIN_SLP(gpk2-4, INPUT, DOWN); | |
1034 | PIN_SLP(gpk2-5, INPUT, DOWN); | |
1035 | PIN_SLP(gpk2-6, INPUT, DOWN); | |
1036 | ||
1037 | PIN_SLP(gpk3-0, OUT0, NONE); | |
1038 | PIN_SLP(gpk3-1, INPUT, NONE); | |
1039 | PIN_SLP(gpk3-2, INPUT, DOWN); | |
1040 | PIN_SLP(gpk3-3, INPUT, NONE); | |
1041 | PIN_SLP(gpk3-4, INPUT, NONE); | |
1042 | PIN_SLP(gpk3-5, INPUT, NONE); | |
1043 | PIN_SLP(gpk3-6, INPUT, NONE); | |
1044 | ||
1045 | PIN_SLP(gpl0-0, INPUT, DOWN); | |
1046 | PIN_SLP(gpl0-1, INPUT, NONE); | |
1047 | PIN_SLP(gpl0-2, INPUT, NONE); | |
1048 | PIN_SLP(gpl0-3, INPUT, DOWN); | |
1049 | PIN_SLP(gpl0-4, INPUT, DOWN); | |
1050 | PIN_SLP(gpl0-6, PREV, NONE); | |
1051 | ||
1052 | PIN_SLP(gpl1-0, INPUT, DOWN); | |
1053 | PIN_SLP(gpl1-1, OUT0, NONE); | |
1054 | PIN_SLP(gpl2-0, INPUT, DOWN); | |
1055 | PIN_SLP(gpl2-1, PREV, NONE); | |
1056 | PIN_SLP(gpl2-2, PREV, NONE); | |
1057 | PIN_SLP(gpl2-3, INPUT, DOWN); | |
1058 | PIN_SLP(gpl2-4, INPUT, DOWN); | |
1059 | PIN_SLP(gpl2-5, INPUT, DOWN); | |
1060 | PIN_SLP(gpl2-6, INPUT, DOWN); | |
1061 | PIN_SLP(gpl2-7, INPUT, DOWN); | |
1062 | ||
1063 | PIN_SLP(gpm0-0, PREV, NONE); | |
1064 | PIN_SLP(gpm0-1, OUT0, NONE); | |
1065 | PIN_SLP(gpm0-2, INPUT, DOWN); | |
1066 | PIN_SLP(gpm0-3, INPUT, DOWN); | |
1067 | PIN_SLP(gpm0-4, INPUT, DOWN); | |
1068 | PIN_SLP(gpm0-5, INPUT, DOWN); | |
1069 | PIN_SLP(gpm0-6, INPUT, DOWN); | |
1070 | PIN_SLP(gpm0-7, INPUT, DOWN); | |
1071 | ||
1072 | PIN_SLP(gpm1-0, INPUT, DOWN); | |
1073 | PIN_SLP(gpm1-1, INPUT, DOWN); | |
1074 | PIN_SLP(gpm1-2, INPUT, NONE); | |
1075 | PIN_SLP(gpm1-3, INPUT, NONE); | |
1076 | PIN_SLP(gpm1-4, INPUT, NONE); | |
1077 | PIN_SLP(gpm1-5, INPUT, NONE); | |
1078 | PIN_SLP(gpm1-6, OUT0, NONE); | |
1079 | ||
1080 | PIN_SLP(gpm2-0, INPUT, NONE); | |
1081 | PIN_SLP(gpm2-1, INPUT, NONE); | |
1082 | PIN_SLP(gpm2-2, OUT0, NONE); | |
1083 | PIN_SLP(gpm2-3, INPUT, DOWN); | |
1084 | PIN_SLP(gpm2-4, INPUT, DOWN); | |
1085 | ||
1086 | PIN_SLP(gpm3-0, PREV, NONE); | |
1087 | PIN_SLP(gpm3-1, PREV, NONE); | |
1088 | PIN_SLP(gpm3-2, PREV, NONE); | |
1089 | PIN_SLP(gpm3-3, INPUT, DOWN); | |
1090 | PIN_SLP(gpm3-4, INPUT, DOWN); | |
1091 | PIN_SLP(gpm3-5, PREV, NONE); | |
1092 | PIN_SLP(gpm3-6, INPUT, DOWN); | |
1093 | PIN_SLP(gpm3-7, OUT0, NONE); | |
1094 | ||
1095 | PIN_SLP(gpm4-0, INPUT, DOWN); | |
1096 | PIN_SLP(gpm4-1, INPUT, DOWN); | |
1097 | PIN_SLP(gpm4-2, INPUT, DOWN); | |
1098 | PIN_SLP(gpm4-3, INPUT, DOWN); | |
1099 | PIN_SLP(gpm4-4, PREV, NONE); | |
1100 | PIN_SLP(gpm4-5, INPUT, NONE); | |
1101 | PIN_SLP(gpm4-6, INPUT, DOWN); | |
1102 | PIN_SLP(gpm4-7, INPUT, DOWN); | |
1103 | ||
1104 | PIN_SLP(gpy0-0, INPUT, DOWN); | |
1105 | PIN_SLP(gpy0-1, INPUT, DOWN); | |
1106 | PIN_SLP(gpy0-2, INPUT, NONE); | |
1107 | PIN_SLP(gpy0-3, INPUT, NONE); | |
1108 | PIN_SLP(gpy0-4, INPUT, DOWN); | |
1109 | PIN_SLP(gpy0-5, INPUT, DOWN); | |
1110 | ||
1111 | PIN_SLP(gpy1-0, INPUT, DOWN); | |
1112 | PIN_SLP(gpy1-1, INPUT, DOWN); | |
1113 | PIN_SLP(gpy1-2, INPUT, DOWN); | |
1114 | PIN_SLP(gpy1-3, INPUT, DOWN); | |
1115 | ||
1116 | PIN_SLP(gpy2-0, PREV, NONE); | |
1117 | PIN_SLP(gpy2-1, INPUT, DOWN); | |
1118 | PIN_SLP(gpy2-2, INPUT, NONE); | |
1119 | PIN_SLP(gpy2-3, INPUT, NONE); | |
1120 | PIN_SLP(gpy2-4, INPUT, NONE); | |
1121 | PIN_SLP(gpy2-5, INPUT, NONE); | |
1122 | ||
1123 | PIN_SLP(gpy3-0, INPUT, DOWN); | |
1124 | PIN_SLP(gpy3-1, INPUT, DOWN); | |
1125 | PIN_SLP(gpy3-2, INPUT, DOWN); | |
1126 | PIN_SLP(gpy3-3, INPUT, DOWN); | |
1127 | PIN_SLP(gpy3-4, INPUT, DOWN); | |
1128 | PIN_SLP(gpy3-5, INPUT, DOWN); | |
1129 | PIN_SLP(gpy3-6, INPUT, DOWN); | |
1130 | PIN_SLP(gpy3-7, INPUT, DOWN); | |
1131 | ||
1132 | PIN_SLP(gpy4-0, INPUT, DOWN); | |
1133 | PIN_SLP(gpy4-1, INPUT, DOWN); | |
1134 | PIN_SLP(gpy4-2, INPUT, DOWN); | |
1135 | PIN_SLP(gpy4-3, INPUT, DOWN); | |
1136 | PIN_SLP(gpy4-4, INPUT, DOWN); | |
1137 | PIN_SLP(gpy4-5, INPUT, DOWN); | |
1138 | PIN_SLP(gpy4-6, INPUT, DOWN); | |
1139 | PIN_SLP(gpy4-7, INPUT, DOWN); | |
1140 | ||
1141 | PIN_SLP(gpy5-0, INPUT, DOWN); | |
1142 | PIN_SLP(gpy5-1, INPUT, DOWN); | |
1143 | PIN_SLP(gpy5-2, INPUT, DOWN); | |
1144 | PIN_SLP(gpy5-3, INPUT, DOWN); | |
1145 | PIN_SLP(gpy5-4, INPUT, DOWN); | |
1146 | PIN_SLP(gpy5-5, INPUT, DOWN); | |
1147 | PIN_SLP(gpy5-6, INPUT, DOWN); | |
1148 | PIN_SLP(gpy5-7, INPUT, DOWN); | |
1149 | ||
1150 | PIN_SLP(gpy6-0, INPUT, DOWN); | |
1151 | PIN_SLP(gpy6-1, INPUT, DOWN); | |
1152 | PIN_SLP(gpy6-2, INPUT, DOWN); | |
1153 | PIN_SLP(gpy6-3, INPUT, DOWN); | |
1154 | PIN_SLP(gpy6-4, INPUT, DOWN); | |
1155 | PIN_SLP(gpy6-5, INPUT, DOWN); | |
1156 | PIN_SLP(gpy6-6, INPUT, DOWN); | |
1157 | PIN_SLP(gpy6-7, INPUT, DOWN); | |
1158 | }; | |
1159 | }; | |
1160 | ||
1161 | &pinctrl_2 { | |
1162 | pinctrl-names = "default"; | |
1163 | pinctrl-0 = <&sleep2>; | |
1164 | ||
1165 | sleep2: sleep-state { | |
1166 | PIN_SLP(gpz-0, INPUT, DOWN); | |
1167 | PIN_SLP(gpz-1, INPUT, DOWN); | |
1168 | PIN_SLP(gpz-2, INPUT, DOWN); | |
1169 | PIN_SLP(gpz-3, INPUT, DOWN); | |
1170 | PIN_SLP(gpz-4, INPUT, DOWN); | |
1171 | PIN_SLP(gpz-5, INPUT, DOWN); | |
1172 | PIN_SLP(gpz-6, INPUT, DOWN); | |
1173 | }; | |
1174 | }; | |
1175 | ||
1176 | &pinctrl_3 { | |
1177 | pinctrl-names = "default"; | |
1178 | pinctrl-0 = <&sleep3>; | |
1179 | ||
1180 | sleep3: sleep-state { | |
1181 | PIN_SLP(gpv0-0, INPUT, DOWN); | |
1182 | PIN_SLP(gpv0-1, INPUT, DOWN); | |
1183 | PIN_SLP(gpv0-2, INPUT, DOWN); | |
1184 | PIN_SLP(gpv0-3, INPUT, DOWN); | |
1185 | PIN_SLP(gpv0-4, INPUT, DOWN); | |
1186 | PIN_SLP(gpv0-5, INPUT, DOWN); | |
1187 | PIN_SLP(gpv0-6, INPUT, DOWN); | |
1188 | PIN_SLP(gpv0-7, INPUT, DOWN); | |
1189 | ||
1190 | PIN_SLP(gpv1-0, INPUT, DOWN); | |
1191 | PIN_SLP(gpv1-1, INPUT, DOWN); | |
1192 | PIN_SLP(gpv1-2, INPUT, DOWN); | |
1193 | PIN_SLP(gpv1-3, INPUT, DOWN); | |
1194 | PIN_SLP(gpv1-4, INPUT, DOWN); | |
1195 | PIN_SLP(gpv1-5, INPUT, DOWN); | |
1196 | PIN_SLP(gpv1-6, INPUT, DOWN); | |
1197 | PIN_SLP(gpv1-7, INPUT, DOWN); | |
1198 | ||
1199 | PIN_SLP(gpv2-0, INPUT, DOWN); | |
1200 | PIN_SLP(gpv2-1, INPUT, DOWN); | |
1201 | PIN_SLP(gpv2-2, INPUT, DOWN); | |
1202 | PIN_SLP(gpv2-3, INPUT, DOWN); | |
1203 | PIN_SLP(gpv2-4, INPUT, DOWN); | |
1204 | PIN_SLP(gpv2-5, INPUT, DOWN); | |
1205 | PIN_SLP(gpv2-6, INPUT, DOWN); | |
1206 | PIN_SLP(gpv2-7, INPUT, DOWN); | |
1207 | ||
1208 | PIN_SLP(gpv3-0, INPUT, DOWN); | |
1209 | PIN_SLP(gpv3-1, INPUT, DOWN); | |
1210 | PIN_SLP(gpv3-2, INPUT, DOWN); | |
1211 | PIN_SLP(gpv3-3, INPUT, DOWN); | |
1212 | PIN_SLP(gpv3-4, INPUT, DOWN); | |
1213 | PIN_SLP(gpv3-5, INPUT, DOWN); | |
1214 | PIN_SLP(gpv3-6, INPUT, DOWN); | |
1215 | PIN_SLP(gpv3-7, INPUT, DOWN); | |
1216 | ||
1217 | PIN_SLP(gpv4-0, INPUT, DOWN); | |
1218 | PIN_SLP(gpv4-1, INPUT, DOWN); | |
1219 | }; | |
1220 | }; | |
1221 | ||
1222 | &pmu_system_controller { | |
1223 | assigned-clocks = <&pmu_system_controller 0>; | |
1224 | assigned-clock-parents = <&clock CLK_XUSBXTI>; | |
1225 | }; | |
1226 | ||
1227 | &pwm { | |
1228 | pinctrl-0 = <&pwm1_out>; | |
1229 | pinctrl-names = "default"; | |
1230 | samsung,pwm-outputs = <1>; | |
1231 | status = "okay"; | |
1232 | }; | |
1233 | ||
1234 | /* | |
1235 | * The internal RTC does not work; instead, the RTC provided by the | |
1236 | * S5M8766 PMIC is used. Disable the RTC to make sure the working | |
1237 | * one gets used. | |
1238 | * | |
1239 | * We add this node to avoid DTB check warnings, as the Exynos4 RTC | |
1240 | * requires two clocks, and only one is set up by default. | |
1241 | */ | |
1242 | &rtc { | |
1243 | clocks = <&clock CLK_RTC>, <&s5m8767_osc S2MPS11_CLK_AP>; | |
1244 | clock-names = "rtc", "rtc_src"; | |
1245 | status = "disabled"; | |
1246 | }; | |
1247 | ||
1248 | &sdhci_2 { | |
1249 | bus-width = <4>; | |
1250 | cd-gpios = <&gpx3 4 GPIO_ACTIVE_LOW>; | |
1251 | pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_bus4 &sdhci2_cd>; | |
1252 | pinctrl-names = "default"; | |
1253 | vmmc-supply = <&ldo23_reg>; | |
1254 | status = "okay"; | |
1255 | }; | |
1256 | ||
1257 | &sdhci_3 { | |
1258 | #address-cells = <1>; | |
1259 | #size-cells = <0>; | |
1260 | non-removable; | |
1261 | bus-width = <4>; | |
1262 | ||
1263 | mmc-pwrseq = <&wlan_pwrseq>; | |
1264 | pinctrl-names = "default"; | |
1265 | pinctrl-0 = <&sd3_clk &sd3_cmd &sd3_bus4>; | |
1266 | status = "okay"; | |
1267 | ||
1268 | brcmf: wifi@1 { | |
1269 | compatible = "brcm,bcm4334-fmac", "brcm,bcm4329-fmac"; | |
1270 | reg = <1>; | |
1271 | ||
1272 | interrupt-parent = <&gpx2>; | |
1273 | interrupts = <5 IRQ_TYPE_LEVEL_HIGH>; | |
1274 | interrupt-names = "host-wake"; | |
1275 | }; | |
1276 | }; | |
1277 | ||
1278 | &serial_0 { | |
1279 | pinctrl-0 = <&uart0_data &uart0_fctl>; | |
1280 | pinctrl-names = "default"; | |
1281 | status = "okay"; | |
1282 | ||
1283 | bluetooth { | |
1284 | compatible = "brcm,bcm4330-bt"; /* BCM4334B0 */ | |
1285 | pinctrl-0 = <&bt_shutdown &bt_device_wakeup &bt_host_wakeup>; | |
1286 | pinctrl-names = "default"; | |
1287 | max-speed = <3000000>; | |
1288 | shutdown-gpios = <&gpl0 6 GPIO_ACTIVE_HIGH>; | |
1289 | device-wakeup-gpios = <&gpx3 1 GPIO_ACTIVE_HIGH>; | |
1290 | host-wakeup-gpios = <&gpx2 6 GPIO_ACTIVE_HIGH>; | |
1291 | clocks = <&s5m8767_osc S2MPS11_CLK_BT>; | |
1292 | }; | |
1293 | }; | |
1294 | ||
1295 | &serial_1 { | |
1296 | status = "okay"; | |
1297 | }; | |
1298 | ||
1299 | &serial_2 { | |
1300 | status = "okay"; | |
1301 | }; | |
1302 | ||
1303 | &serial_3 { | |
1304 | status = "okay"; | |
1305 | }; | |
1306 | ||
1307 | &tmu { | |
1308 | vtmu-supply = <&ldo10_reg>; | |
1309 | status = "okay"; | |
1310 | }; |