0001 // SPDX-License-Identifier: GPL-2.0
0002 /*
0003 * Samsung's S5PV210 based Galaxy Aries board device tree source
0004 */
0005
0006 /dts-v1/;
0007 #include <dt-bindings/gpio/gpio.h>
0008 #include <dt-bindings/interrupt-controller/irq.h>
0009 #include "s5pv210.dtsi"
0010
0011 / {
0012 compatible = "samsung,aries", "samsung,s5pv210";
0013
0014 aliases: aliases {
0015 i2c4 = &i2c_sound;
0016 i2c5 = &i2c_accel;
0017 i2c6 = &i2c_pmic;
0018 i2c7 = &i2c_musb;
0019 i2c9 = &i2c_fuel;
0020 i2c10 = &i2c_touchkey;
0021 i2c11 = &i2c_prox;
0022 i2c12 = &i2c_magnetometer;
0023 };
0024
0025 memory@30000000 {
0026 device_type = "memory";
0027 reg = <0x30000000 0x05000000>,
0028 <0x40000000 0x10000000>,
0029 <0x50000000 0x08000000>;
0030 };
0031
0032 reserved-memory {
0033 #address-cells = <1>;
0034 #size-cells = <1>;
0035 ranges;
0036
0037 mfc_left: region@43000000 {
0038 compatible = "shared-dma-pool";
0039 no-map;
0040 reg = <0x43000000 0x2000000>;
0041 };
0042
0043 mfc_right: region@51000000 {
0044 compatible = "shared-dma-pool";
0045 no-map;
0046 reg = <0x51000000 0x2000000>;
0047 };
0048 };
0049
0050 pmic_ap_clk: clock-0 {
0051 /* Workaround for missing clock on PMIC */
0052 compatible = "fixed-clock";
0053 #clock-cells = <0>;
0054 clock-frequency = <32768>;
0055 };
0056
0057 bt_codec: bt-sco {
0058 compatible = "linux,bt-sco";
0059 #sound-dai-cells = <0>;
0060 };
0061
0062 vibrator_pwr: regulator-fixed-0 {
0063 compatible = "regulator-fixed";
0064 regulator-name = "vibrator-en";
0065 enable-active-high;
0066 gpio = <&gpj1 1 GPIO_ACTIVE_HIGH>;
0067
0068 pinctrl-names = "default";
0069 pinctrl-0 = <&vibrator_ena>;
0070 };
0071
0072 touchkey_vdd: regulator-fixed-1 {
0073 compatible = "regulator-fixed";
0074 regulator-name = "VTOUCH_3.3V";
0075 regulator-min-microvolt = <3300000>;
0076 regulator-max-microvolt = <3300000>;
0077 enable-active-high;
0078 gpio = <&gpj3 2 GPIO_ACTIVE_HIGH>;
0079
0080 pinctrl-names = "default";
0081 pinctrl-0 = <&touchkey_vdd_ena>;
0082 };
0083
0084 gp2a_vled: regulator-fixed-2 {
0085 compatible = "regulator-fixed";
0086 regulator-name = "VLED";
0087 enable-active-high;
0088 gpio = <&gpj1 4 GPIO_ACTIVE_HIGH>;
0089 regulator-min-microvolt = <2800000>;
0090 regulator-max-microvolt = <2800000>;
0091
0092 pinctrl-names = "default";
0093 pinctrl-0 = <&gp2a_power>;
0094 };
0095
0096 wifi_pwrseq: wifi-pwrseq {
0097 compatible = "mmc-pwrseq-simple";
0098 reset-gpios = <&gpg1 2 GPIO_ACTIVE_LOW>;
0099 pinctrl-names = "default";
0100 pinctrl-0 = <&wlan_gpio_rst>;
0101 post-power-on-delay-ms = <500>;
0102 power-off-delay-us = <500>;
0103 };
0104
0105 i2c_sound: i2c-gpio-0 {
0106 compatible = "i2c-gpio";
0107 sda-gpios = <&mp05 3 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
0108 scl-gpios = <&mp05 2 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
0109 i2c-gpio,delay-us = <2>;
0110 #address-cells = <1>;
0111 #size-cells = <0>;
0112
0113 pinctrl-names = "default";
0114 pinctrl-0 = <&sound_i2c_pins>;
0115
0116 wm8994: audio-codec@1a {
0117 compatible = "wlf,wm8994";
0118 reg = <0x1a>;
0119
0120 #sound-dai-cells = <0>;
0121
0122 gpio-controller;
0123 #gpio-cells = <2>;
0124
0125 clocks = <&clocks MOUT_CLKOUT>;
0126 clock-names = "MCLK1";
0127
0128 AVDD2-supply = <&buck3_reg>;
0129 DBVDD-supply = <&buck3_reg>;
0130 CPVDD-supply = <&buck3_reg>;
0131 SPKVDD1-supply = <&buck3_reg>;
0132 SPKVDD2-supply = <&buck3_reg>;
0133
0134 wlf,gpio-cfg = <0xa101 0x8100 0x0100 0x0100 0x8100
0135 0xa101 0x0100 0x8100 0x0100 0x0100
0136 0x0100>;
0137
0138 wlf,ldo1ena = <&gpf3 4 GPIO_ACTIVE_HIGH>;
0139 wlf,ldo2ena = <&gpf3 4 GPIO_ACTIVE_HIGH>;
0140
0141 wlf,lineout1-se;
0142 wlf,lineout2-se;
0143
0144 assigned-clocks = <&clocks MOUT_CLKOUT>;
0145 assigned-clock-rates = <0>;
0146 assigned-clock-parents = <&xusbxti>;
0147
0148 pinctrl-names = "default";
0149 pinctrl-0 = <&codec_ldo>;
0150 };
0151 };
0152
0153 i2c_accel: i2c-gpio-1 {
0154 compatible = "i2c-gpio";
0155 sda-gpios = <&gpj3 6 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
0156 scl-gpios = <&gpj3 7 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
0157 i2c-gpio,delay-us = <2>;
0158 #address-cells = <1>;
0159 #size-cells = <0>;
0160
0161 pinctrl-names = "default";
0162 pinctrl-0 = <&accel_i2c_pins>;
0163
0164 accelerometer@38 {
0165 compatible = "bosch,bma023";
0166 reg = <0x38>;
0167
0168 vdd-supply = <&ldo9_reg>;
0169 vddio-supply = <&ldo9_reg>;
0170 };
0171 };
0172
0173 i2c_pmic: i2c-gpio-2 {
0174 compatible = "i2c-gpio";
0175 sda-gpios = <&gpj4 0 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
0176 scl-gpios = <&gpj4 3 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
0177 i2c-gpio,delay-us = <2>;
0178 #address-cells = <1>;
0179 #size-cells = <0>;
0180
0181 pinctrl-names = "default";
0182 pinctrl-0 = <&pmic_i2c_pins>;
0183
0184 pmic@66 {
0185 compatible = "maxim,max8998";
0186 reg = <0x66>;
0187 interrupt-parent = <&gph0>;
0188 interrupts = <7 IRQ_TYPE_EDGE_FALLING>;
0189
0190 max8998,pmic-buck1-default-dvs-idx = <1>;
0191 max8998,pmic-buck1-dvs-gpios = <&gph0 3 GPIO_ACTIVE_HIGH>,
0192 <&gph0 4 GPIO_ACTIVE_HIGH>;
0193 max8998,pmic-buck1-dvs-voltage = <1275000>, <1200000>,
0194 <1050000>, <950000>;
0195
0196 max8998,pmic-buck2-default-dvs-idx = <0>;
0197 max8998,pmic-buck2-dvs-gpio = <&gph0 5 GPIO_ACTIVE_HIGH>;
0198 max8998,pmic-buck2-dvs-voltage = <1100000>, <1000000>;
0199
0200 pinctrl-names = "default";
0201 pinctrl-0 = <&pmic_dvs_pins &pmic_irq>;
0202
0203 regulators {
0204 ldo2_reg: LDO2 {
0205 regulator-name = "VALIVE_1.2V";
0206 regulator-min-microvolt = <1200000>;
0207 regulator-max-microvolt = <1200000>;
0208 regulator-always-on;
0209
0210 regulator-state-mem {
0211 regulator-on-in-suspend;
0212 };
0213 };
0214
0215 ldo3_reg: LDO3 {
0216 regulator-name = "VUSB_1.1V";
0217 regulator-min-microvolt = <1100000>;
0218 regulator-max-microvolt = <1100000>;
0219
0220 regulator-state-mem {
0221 regulator-off-in-suspend;
0222 };
0223 };
0224
0225 ldo4_reg: LDO4 {
0226 regulator-name = "VADC_3.3V";
0227 regulator-min-microvolt = <3300000>;
0228 regulator-max-microvolt = <3300000>;
0229
0230 regulator-state-mem {
0231 regulator-off-in-suspend;
0232 };
0233 };
0234
0235 ldo5_reg: LDO5 {
0236 regulator-name = "VTF_2.8V";
0237 regulator-min-microvolt = <2800000>;
0238 regulator-max-microvolt = <2800000>;
0239
0240 regulator-state-mem {
0241 regulator-off-in-suspend;
0242 };
0243 };
0244
0245 ldo6_reg: LDO6 {
0246 regulator-name = "LDO6";
0247 regulator-min-microvolt = <1600000>;
0248 regulator-max-microvolt = <3600000>;
0249 };
0250
0251 ldo7_reg: LDO7 {
0252 regulator-name = "VLCD_1.8V";
0253 regulator-min-microvolt = <1800000>;
0254 regulator-max-microvolt = <1800000>;
0255
0256 regulator-state-mem {
0257 regulator-off-in-suspend;
0258 };
0259 };
0260
0261 ldo8_reg: LDO8 {
0262 regulator-name = "VUSB_3.3V";
0263 regulator-min-microvolt = <3300000>;
0264 regulator-max-microvolt = <3300000>;
0265
0266 regulator-state-mem {
0267 regulator-off-in-suspend;
0268 };
0269 };
0270
0271 ldo9_reg: LDO9 {
0272 regulator-name = "VCC_2.8V_PDA";
0273 regulator-min-microvolt = <2800000>;
0274 regulator-max-microvolt = <2800000>;
0275 regulator-always-on;
0276 };
0277
0278 ldo10_reg: LDO10 {
0279 regulator-name = "VPLL_1.2V";
0280 regulator-min-microvolt = <1200000>;
0281 regulator-max-microvolt = <1200000>;
0282 regulator-always-on;
0283
0284 regulator-state-mem {
0285 regulator-on-in-suspend;
0286 };
0287 };
0288
0289 ldo11_reg: LDO11 {
0290 regulator-name = "CAM_AF_3.0V";
0291 regulator-min-microvolt = <3000000>;
0292 regulator-max-microvolt = <3000000>;
0293
0294 regulator-state-mem {
0295 regulator-off-in-suspend;
0296 };
0297 };
0298
0299 ldo12_reg: LDO12 {
0300 regulator-name = "CAM_SENSOR_CORE_1.2V";
0301 regulator-min-microvolt = <1200000>;
0302 regulator-max-microvolt = <1200000>;
0303
0304 regulator-state-mem {
0305 regulator-off-in-suspend;
0306 };
0307 };
0308
0309 ldo13_reg: LDO13 {
0310 regulator-name = "VGA_VDDIO_2.8V";
0311 regulator-min-microvolt = <2800000>;
0312 regulator-max-microvolt = <2800000>;
0313
0314 regulator-state-mem {
0315 regulator-off-in-suspend;
0316 };
0317 };
0318
0319 ldo14_reg: LDO14 {
0320 regulator-name = "VGA_DVDD_1.8V";
0321 regulator-min-microvolt = <1800000>;
0322 regulator-max-microvolt = <1800000>;
0323
0324 regulator-state-mem {
0325 regulator-off-in-suspend;
0326 };
0327 };
0328
0329 ldo15_reg: LDO15 {
0330 regulator-name = "CAM_ISP_HOST_2.8V";
0331 regulator-min-microvolt = <2800000>;
0332 regulator-max-microvolt = <2800000>;
0333
0334 regulator-state-mem {
0335 regulator-off-in-suspend;
0336 };
0337 };
0338
0339 ldo16_reg: LDO16 {
0340 regulator-name = "VGA_AVDD_2.8V";
0341 regulator-min-microvolt = <2800000>;
0342 regulator-max-microvolt = <2800000>;
0343
0344 regulator-state-mem {
0345 regulator-off-in-suspend;
0346 };
0347 };
0348
0349 ldo17_reg: LDO17 {
0350 regulator-name = "VCC_3.0V_LCD";
0351 regulator-min-microvolt = <3000000>;
0352 regulator-max-microvolt = <3000000>;
0353
0354 regulator-state-mem {
0355 regulator-off-in-suspend;
0356 };
0357 };
0358
0359 buck1_reg: BUCK1 {
0360 regulator-name = "vddarm";
0361 regulator-min-microvolt = <750000>;
0362 regulator-max-microvolt = <1500000>;
0363
0364 regulator-state-mem {
0365 regulator-off-in-suspend;
0366 regulator-suspend-microvolt = <1250000>;
0367 };
0368 };
0369
0370 buck2_reg: BUCK2 {
0371 regulator-name = "vddint";
0372 regulator-min-microvolt = <750000>;
0373 regulator-max-microvolt = <1500000>;
0374
0375 regulator-state-mem {
0376 regulator-off-in-suspend;
0377 regulator-suspend-microvolt = <1100000>;
0378 };
0379 };
0380
0381 buck3_reg: BUCK3 {
0382 regulator-name = "VCC_1.8V";
0383 regulator-min-microvolt = <1800000>;
0384 regulator-max-microvolt = <1800000>;
0385 regulator-always-on;
0386 };
0387
0388 buck4_reg: BUCK4 {
0389 regulator-name = "CAM_ISP_CORE_1.2V";
0390 regulator-min-microvolt = <1200000>;
0391 regulator-max-microvolt = <1200000>;
0392
0393 regulator-state-mem {
0394 regulator-off-in-suspend;
0395 };
0396 };
0397
0398 ap32khz_reg: EN32KHz-AP {
0399 regulator-name = "32KHz AP";
0400 regulator-always-on;
0401 };
0402
0403 cp32khz_reg: EN32KHz-CP {
0404 regulator-name = "32KHz CP";
0405 };
0406
0407 vichg_reg: ENVICHG {
0408 regulator-name = "VICHG";
0409 regulator-always-on;
0410 };
0411
0412 safe1_sreg: ESAFEOUT1 {
0413 regulator-name = "SAFEOUT1";
0414 };
0415
0416 safe2_sreg: ESAFEOUT2 {
0417 regulator-name = "SAFEOUT2";
0418 };
0419 };
0420 };
0421 };
0422
0423 i2c_musb: i2c-gpio-3 {
0424 compatible = "i2c-gpio";
0425 sda-gpios = <&gpj3 4 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
0426 scl-gpios = <&gpj3 5 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
0427 i2c-gpio,delay-us = <2>;
0428 #address-cells = <1>;
0429 #size-cells = <0>;
0430
0431 pinctrl-names = "default";
0432 pinctrl-0 = <&musb_i2c_pins>;
0433
0434 fsa9480: musb@25 {
0435 compatible = "fcs,fsa9480";
0436 reg = <0x25>;
0437 interrupt-parent = <&gph2>;
0438 interrupts = <7 IRQ_TYPE_EDGE_FALLING>;
0439
0440 pinctrl-names = "default";
0441 pinctrl-0 = <&musb_irq>;
0442 };
0443 };
0444
0445 i2c_fuel: i2c-gpio-4 {
0446 compatible = "i2c-gpio";
0447 sda-gpios = <&mp05 1 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
0448 scl-gpios = <&mp05 0 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
0449 i2c-gpio,delay-us = <2>;
0450 #address-cells = <1>;
0451 #size-cells = <0>;
0452
0453 pinctrl-names = "default";
0454 pinctrl-0 = <&fg_i2c_pins>;
0455
0456 fg: fuelgauge@36 {
0457 compatible = "maxim,max17040";
0458 reg = <0x36>;
0459 };
0460 };
0461
0462 i2c_touchkey: i2c-gpio-5 {
0463 compatible = "i2c-gpio";
0464 sda-gpios = <&gpj3 0 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
0465 scl-gpios = <&gpj3 1 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
0466 i2c-gpio,delay-us = <2>;
0467 #address-cells = <1>;
0468 #size-cells = <0>;
0469
0470 pinctrl-names = "default";
0471 pinctrl-0 = <&touchkey_i2c_pins>;
0472
0473 touchkey@20 {
0474 compatible = "cypress,aries-touchkey";
0475 reg = <0x20>;
0476 vdd-supply = <&touchkey_vdd>;
0477 vcc-supply = <&buck3_reg>;
0478 linux,keycodes = <KEY_MENU KEY_BACK
0479 KEY_HOMEPAGE KEY_SEARCH>;
0480 interrupt-parent = <&gpj4>;
0481 interrupts = <1 IRQ_TYPE_LEVEL_LOW>;
0482
0483 pinctrl-names = "default";
0484 pinctrl-0 = <&touchkey_irq>;
0485 };
0486 };
0487
0488 i2c_prox: i2c-gpio-6 {
0489 compatible = "i2c-gpio";
0490 sda-gpios = <&gpg2 2 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
0491 scl-gpios = <&gpg0 2 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
0492 i2c-gpio,delay-us = <2>;
0493 #address-cells = <1>;
0494 #size-cells = <0>;
0495
0496 pinctrl-names = "default";
0497 pinctrl-0 = <&prox_i2c_pins>;
0498
0499 light-sensor@44 {
0500 compatible = "sharp,gp2ap002a00f";
0501 reg = <0x44>;
0502 interrupt-parent = <&gph0>;
0503 interrupts = <2 IRQ_TYPE_EDGE_FALLING>;
0504 vdd-supply = <&gp2a_vled>;
0505 vio-supply = <&gp2a_vled>;
0506 io-channels = <&gp2a_shunt>;
0507 io-channel-names = "alsout";
0508 sharp,proximity-far-hysteresis = /bits/ 8 <0x40>;
0509 sharp,proximity-close-hysteresis = /bits/ 8 <0x20>;
0510
0511 pinctrl-names = "default";
0512 pinctrl-0 = <&gp2a_irq>;
0513 };
0514 };
0515
0516 i2c_magnetometer: i2c-gpio-7 {
0517 compatible = "i2c-gpio";
0518 sda-gpios = <&gpj0 1 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
0519 scl-gpios = <&gpj0 0 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
0520 i2c-gpio,delay-us = <2>;
0521 #address-cells = <1>;
0522 #size-cells = <0>;
0523
0524 pinctrl-names = "default";
0525 pinctrl-0 = <&magnetometer_i2c_pins>;
0526
0527 status = "disabled";
0528
0529 /* Yamaha yas529 magnetometer, no mainline binding */
0530 };
0531
0532 vibrator: pwm-vibrator {
0533 compatible = "pwm-vibrator";
0534 pwms = <&pwm 1 44642 0>;
0535 pwm-names = "enable";
0536 vcc-supply = <&vibrator_pwr>;
0537 pinctrl-names = "default";
0538 pinctrl-0 = <&pwm1_out>;
0539 };
0540
0541 poweroff: syscon-poweroff {
0542 compatible = "syscon-poweroff";
0543 regmap = <&pmu_syscon>;
0544 offset = <0x681c>; /* PS_HOLD_CONTROL */
0545 value = <0x5200>;
0546 };
0547
0548 spi_lcd: spi-2 {
0549 compatible = "spi-gpio";
0550 #address-cells = <1>;
0551 #size-cells = <0>;
0552
0553 sck-gpios = <&mp04 1 GPIO_ACTIVE_HIGH>;
0554 mosi-gpios = <&mp04 3 GPIO_ACTIVE_HIGH>;
0555 cs-gpios = <&mp01 1 GPIO_ACTIVE_HIGH>;
0556 num-chipselects = <1>;
0557
0558 pinctrl-names = "default";
0559 pinctrl-0 = <&lcd_spi_pins>;
0560
0561 panel@0 {
0562 compatible = "samsung,s6e63m0";
0563 reg = <0>;
0564 reset-gpios = <&mp05 5 GPIO_ACTIVE_LOW>;
0565 vdd3-supply = <&ldo7_reg>;
0566 vci-supply = <&ldo17_reg>;
0567 spi-max-frequency = <1200000>;
0568
0569 pinctrl-names = "default";
0570 pinctrl-0 = <&panel_rst>;
0571
0572 port {
0573 lcd_ep: endpoint {
0574 remote-endpoint = <&fimd_ep>;
0575 };
0576 };
0577 };
0578 };
0579 };
0580
0581 &adc {
0582 vdd-supply = <&ldo4_reg>;
0583
0584 status = "okay";
0585
0586 gp2a_shunt: current-sense-shunt {
0587 compatible = "current-sense-shunt";
0588 io-channels = <&adc 9>;
0589 shunt-resistor-micro-ohms = <47000000>; /* 47 ohms */
0590 #io-channel-cells = <0>;
0591 };
0592 };
0593
0594 &fimd {
0595 pinctrl-names = "default";
0596 pinctrl-0 = <&lcd_clk &lcd_data24>;
0597 status = "okay";
0598
0599 samsung,invert-vden;
0600 samsung,invert-vclk;
0601
0602 #address-cells = <1>;
0603 #size-cells = <0>;
0604
0605 port@3 {
0606 reg = <3>;
0607 fimd_ep: endpoint {
0608 remote-endpoint = <&lcd_ep>;
0609 };
0610 };
0611 };
0612
0613 &hsotg {
0614 vusb_a-supply = <&ldo8_reg>;
0615 vusb_d-supply = <&ldo3_reg>;
0616 dr_mode = "peripheral";
0617 status = "okay";
0618 };
0619
0620 &i2c2 {
0621 samsung,i2c-sda-delay = <100>;
0622 samsung,i2c-max-bus-freq = <400000>;
0623 samsung,i2c-slave-addr = <0x10>;
0624 status = "okay";
0625
0626 touchscreen@4a {
0627 compatible = "atmel,maxtouch";
0628 reg = <0x4a>;
0629 interrupt-parent = <&gpj0>;
0630 interrupts = <5 IRQ_TYPE_EDGE_FALLING>;
0631 pinctrl-names = "default";
0632 pinctrl-0 = <&ts_irq>;
0633 reset-gpios = <&gpj1 3 GPIO_ACTIVE_LOW>;
0634 };
0635 };
0636
0637 &i2s0 {
0638 dmas = <&pdma0 10>, <&pdma0 9>, <&pdma0 11>;
0639 status = "okay";
0640 };
0641
0642 &mfc {
0643 memory-region = <&mfc_left>, <&mfc_right>;
0644 };
0645
0646 &pinctrl0 {
0647 bt_reset: bt-reset-pins {
0648 samsung,pins = "gpb-3";
0649 samsung,pin-function = <S5PV210_PIN_FUNC_OUTPUT>;
0650 samsung,pin-pud = <S5PV210_PIN_PULL_NONE>;
0651 samsung,pin-drv = <S5PV210_PIN_DRV_LV1>;
0652 };
0653
0654 wlan_bt_en: wlan-bt-en-pins {
0655 samsung,pins = "gpb-5";
0656 samsung,pin-function = <S5PV210_PIN_FUNC_OUTPUT>;
0657 samsung,pin-pud = <S5PV210_PIN_PULL_NONE>;
0658 samsung,pin-val = <1>;
0659 };
0660
0661 codec_ldo: codec-ldo-pins {
0662 samsung,pins = "gpf3-4";
0663 samsung,pin-function = <S5PV210_PIN_FUNC_OUTPUT>;
0664 samsung,pin-pud = <S5PV210_PIN_PULL_NONE>;
0665 };
0666
0667 prox_i2c_pins: gp2a-i2c-pins {
0668 samsung,pins = "gpg0-2", "gpg2-2";
0669 samsung,pin-pud = <S5PV210_PIN_PULL_NONE>;
0670 samsung,pin-drv = <S5PV210_PIN_DRV_LV1>;
0671 };
0672
0673 wlan_gpio_rst: wlan-gpio-rst-pins {
0674 samsung,pins = "gpg1-2";
0675 samsung,pin-function = <S5PV210_PIN_FUNC_OUTPUT>;
0676 samsung,pin-pud = <S5PV210_PIN_PULL_NONE>;
0677 };
0678
0679 bt_wake: bt-wake-pins {
0680 samsung,pins = "gpg3-4";
0681 samsung,pin-function = <S5PV210_PIN_FUNC_OUTPUT>;
0682 samsung,pin-pud = <S5PV210_PIN_PULL_NONE>;
0683 };
0684
0685 gp2a_irq: gp2a-irq-pins {
0686 samsung,pins = "gph0-2";
0687 samsung,pin-function = <S5PV210_PIN_FUNC_F>;
0688 samsung,pin-pud = <S5PV210_PIN_PULL_DOWN>;
0689 samsung,pin-drv = <S5PV210_PIN_DRV_LV1>;
0690 };
0691
0692 pmic_dvs_pins: pmic-dvs-pins {
0693 samsung,pins = "gph0-3", "gph0-4", "gph0-5";
0694 samsung,pin-function = <S5PV210_PIN_FUNC_OUTPUT>;
0695 samsung,pin-pud = <S5PV210_PIN_PULL_NONE>;
0696 samsung,pin-drv = <S5PV210_PIN_DRV_LV1>;
0697 samsung,pin-val = <0>;
0698 };
0699
0700 pmic_irq: pmic-irq-pins {
0701 samsung,pins = "gph0-7";
0702 samsung,pin-function = <S5PV210_PIN_FUNC_F>;
0703 samsung,pin-pud = <S5PV210_PIN_PULL_NONE>;
0704 samsung,pin-drv = <S5PV210_PIN_DRV_LV1>;
0705 };
0706
0707 wifi_host_wake: wifi-host-wake-pins {
0708 samsung,pins = "gph2-4";
0709 samsung,pin-function = <S5PV210_PIN_FUNC_INPUT>;
0710 samsung,pin-pud = <S5PV210_PIN_PULL_DOWN>;
0711 samsung,pin-drv = <S5PV210_PIN_DRV_LV1>;
0712 };
0713
0714 bt_host_wake: bt-host-wake-pins {
0715 samsung,pins = "gph2-5";
0716 samsung,pin-function = <S5PV210_PIN_FUNC_INPUT>;
0717 samsung,pin-pud = <S5PV210_PIN_PULL_DOWN>;
0718 samsung,pin-drv = <S5PV210_PIN_DRV_LV1>;
0719 };
0720
0721 musb_irq: musq-irq-pins {
0722 samsung,pins = "gph2-7";
0723 samsung,pin-function = <S5PV210_PIN_FUNC_INPUT>;
0724 samsung,pin-pud = <S5PV210_PIN_PULL_NONE>;
0725 samsung,pin-drv = <S5PV210_PIN_DRV_LV1>;
0726 };
0727
0728 tf_detect: tf-detect-pins {
0729 samsung,pins = "gph3-4";
0730 samsung,pin-function = <S5PV210_PIN_FUNC_INPUT>;
0731 samsung,pin-pud = <S5PV210_PIN_PULL_DOWN>;
0732 samsung,pin-drv = <S5PV210_PIN_DRV_LV1>;
0733 };
0734
0735 wifi_wake: wifi-wake-pins {
0736 samsung,pins = "gph3-5";
0737 samsung,pin-function = <S5PV210_PIN_FUNC_OUTPUT>;
0738 samsung,pin-pud = <S5PV210_PIN_PULL_NONE>;
0739 };
0740
0741 magnetometer_i2c_pins: yas529-i2c-pins-pins {
0742 samsung,pins = "gpj0-0", "gpj0-1";
0743 samsung,pin-pud = <S5PV210_PIN_PULL_NONE>;
0744 samsung,pin-drv = <S5PV210_PIN_DRV_LV1>;
0745 };
0746
0747 ts_irq: ts-irq-pins {
0748 samsung,pins = "gpj0-5";
0749 samsung,pin-function = <S5PV210_PIN_FUNC_INPUT>;
0750 samsung,pin-pud = <S5PV210_PIN_PULL_NONE>;
0751 samsung,pin-drv = <S5PV210_PIN_DRV_LV1>;
0752 };
0753
0754 vibrator_ena: vibrator-ena-pins {
0755 samsung,pins = "gpj1-1";
0756 samsung,pin-pud = <S5PV210_PIN_PULL_NONE>;
0757 samsung,pin-drv = <S5PV210_PIN_DRV_LV1>;
0758 };
0759
0760 gp2a_power: gp2a-power-pins {
0761 samsung,pins = "gpj1-4";
0762 samsung,pin-function = <S5PV210_PIN_FUNC_OUTPUT>;
0763 samsung,pin-pud = <S5PV210_PIN_PULL_NONE>;
0764 samsung,pin-drv = <S5PV210_PIN_DRV_LV1>;
0765 };
0766
0767 touchkey_i2c_pins: touchkey-i2c-pins {
0768 samsung,pins = "gpj3-0", "gpj3-1";
0769 samsung,pin-pud = <S5PV210_PIN_PULL_NONE>;
0770 samsung,pin-drv = <S5PV210_PIN_DRV_LV1>;
0771 };
0772
0773 touchkey_vdd_ena: touchkey-vdd-ena-pins {
0774 samsung,pins = "gpj3-2";
0775 samsung,pin-pud = <S5PV210_PIN_PULL_NONE>;
0776 samsung,pin-drv = <S5PV210_PIN_DRV_LV1>;
0777 };
0778
0779 musb_i2c_pins: musb-i2c-pins {
0780 samsung,pins = "gpj3-4", "gpj3-5";
0781 samsung,pin-pud = <S5PV210_PIN_PULL_NONE>;
0782 samsung,pin-drv = <S5PV210_PIN_DRV_LV1>;
0783 };
0784
0785 accel_i2c_pins: accel-i2c-pins {
0786 samsung,pins = "gpj3-6", "gpj3-7";
0787 samsung,pin-pud = <S5PV210_PIN_PULL_NONE>;
0788 samsung,pin-drv = <S5PV210_PIN_DRV_LV1>;
0789 };
0790
0791 pmic_i2c_pins: pmic-i2c-pins-pins {
0792 samsung,pins = "gpj4-0", "gpj4-3";
0793 samsung,pin-pud = <S5PV210_PIN_PULL_NONE>;
0794 samsung,pin-drv = <S5PV210_PIN_DRV_LV1>;
0795 };
0796
0797 touchkey_irq: touchkey-irq-pins {
0798 samsung,pins = "gpj4-1";
0799 samsung,pin-function = <S5PV210_PIN_FUNC_INPUT>;
0800 samsung,pin-pud = <S5PV210_PIN_PULL_UP>;
0801 samsung,pin-drv = <S5PV210_PIN_DRV_LV1>;
0802 };
0803
0804 lcd_spi_pins: spi-lcd-pins {
0805 samsung,pins = "mp01-1", "mp04-1", "mp04-3";
0806 samsung,pin-pud = <S5PV210_PIN_PULL_NONE>;
0807 samsung,pin-drv = <S5PV210_PIN_DRV_LV1>;
0808 };
0809
0810 fg_i2c_pins: fg-i2c-pins {
0811 samsung,pins = "mp05-0", "mp05-1";
0812 samsung,pin-pud = <S5PV210_PIN_PULL_NONE>;
0813 samsung,pin-drv = <S5PV210_PIN_DRV_LV1>;
0814 };
0815
0816 sound_i2c_pins: sound-i2c-pins {
0817 samsung,pins = "mp05-2", "mp05-3";
0818 samsung,pin-pud = <S5PV210_PIN_PULL_NONE>;
0819 samsung,pin-drv = <S5PV210_PIN_DRV_LV1>;
0820 };
0821
0822 panel_rst: panel-rst-pins {
0823 samsung,pins = "mp05-5";
0824 samsung,pin-pud = <S5PV210_PIN_PULL_NONE>;
0825 samsung,pin-drv = <S5PV210_PIN_DRV_LV1>;
0826 };
0827 };
0828
0829 &pwm {
0830 samsung,pwm-outputs = <1>;
0831 };
0832
0833 &rtc {
0834 clocks = <&clocks CLK_RTC>, <&pmic_ap_clk>;
0835 clock-names = "rtc", "rtc_src";
0836 };
0837
0838 &sdhci1 {
0839 #address-cells = <1>;
0840 #size-cells = <0>;
0841
0842 bus-width = <4>;
0843 max-frequency = <38400000>;
0844 pinctrl-0 = <&sd1_clk &sd1_cmd &sd1_bus4 &wifi_wake &wifi_host_wake &wlan_bt_en>;
0845 pinctrl-names = "default";
0846 cap-sd-highspeed;
0847 cap-mmc-highspeed;
0848 keep-power-in-suspend;
0849
0850 mmc-pwrseq = <&wifi_pwrseq>;
0851 non-removable;
0852 status = "okay";
0853
0854 assigned-clocks = <&clocks MOUT_MMC1>, <&clocks SCLK_MMC1>;
0855 assigned-clock-rates = <0>, <50000000>;
0856 assigned-clock-parents = <&clocks MOUT_MPLL>;
0857
0858 wlan@1 {
0859 reg = <1>;
0860 compatible = "brcm,bcm4329-fmac";
0861 interrupt-parent = <&gph2>;
0862 interrupts = <4 IRQ_TYPE_LEVEL_HIGH>;
0863 interrupt-names = "host-wake";
0864 };
0865 };
0866
0867 &sdhci2 {
0868 bus-width = <4>;
0869 cd-gpios = <&gph3 4 GPIO_ACTIVE_LOW>;
0870 vmmc-supply = <&ldo5_reg>;
0871 pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_bus4 &tf_detect>;
0872 pinctrl-names = "default";
0873 status = "okay";
0874
0875 assigned-clocks = <&clocks MOUT_MMC2>, <&clocks SCLK_MMC2>;
0876 assigned-clock-rates = <0>, <50000000>;
0877 assigned-clock-parents = <&clocks MOUT_MPLL>;
0878 };
0879
0880 &uart0 {
0881 assigned-clocks = <&clocks MOUT_UART0>, <&clocks SCLK_UART0>;
0882 assigned-clock-rates = <0>, <111166667>;
0883 assigned-clock-parents = <&clocks MOUT_MPLL>;
0884
0885 status = "okay";
0886
0887 bluetooth {
0888 compatible = "brcm,bcm4329-bt";
0889 max-speed = <3000000>;
0890 pinctrl-names = "default";
0891 pinctrl-0 = <&uart0_data &uart0_fctl &bt_host_wake
0892 &bt_reset &bt_wake>;
0893 shutdown-gpios = <&gpb 3 GPIO_ACTIVE_HIGH>;
0894 device-wakeup-gpios = <&gpg3 4 GPIO_ACTIVE_HIGH>;
0895 interrupt-parent = <&gph2>;
0896 interrupts = <5 IRQ_TYPE_LEVEL_HIGH>;
0897 interrupt-names = "host-wakeup";
0898 };
0899 };
0900
0901 &uart1 {
0902 status = "okay";
0903 };
0904
0905 &uart2 {
0906 status = "okay";
0907 };
0908
0909 &usbphy {
0910 status = "okay";
0911 vbus-supply = <&safe1_sreg>;
0912 };
0913
0914 &xusbxti {
0915 clock-frequency = <24000000>;
0916 };