Back to home page

OSCL-LXR

 
 

    


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 };