| /* Copyright (c) 2012, The Linux Foundation. All rights reserved. |
| * |
| * This program is free software; you can redistribute it and/or modify |
| * it under the terms of the GNU General Public License version 2 and |
| * only version 2 as published by the Free Software Foundation. |
| * |
| * This program is distributed in the hope that it will be useful, |
| * but WITHOUT ANY WARRANTY; without even the implied warranty of |
| * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
| * GNU General Public License for more details. |
| */ |
| |
| /include/ "msm8974-leds.dtsi" |
| /include/ "msm8974-camera-sensor-liquid.dtsi" |
| |
| / { |
| serial@f991e000 { |
| status = "ok"; |
| }; |
| |
| qcom,mdss_edp@fd923400 { |
| status = "ok"; |
| }; |
| |
| i2c@f9967000 { |
| battery@b { |
| compatible = "ti,bq28400-battery"; |
| reg = <0xb>; |
| }; |
| |
| charger@2b { |
| compatible = "summit,smb350-charger"; |
| reg = <0x2b>; /* 0x56/0x57 */ |
| summit,stat-gpio = <&pm8941_gpios 30 0x00>; |
| summit,chg-en-n-gpio = <&pm8941_gpios 10 0x00>; |
| summit,chg-susp-n-gpio = <&pm8941_gpios 13 0x00>; |
| summit,chg-current-ma = <1600>; |
| summit,term-current-ma = <300>; |
| }; |
| }; |
| |
| gpio_keys { |
| compatible = "gpio-keys"; |
| input-name = "gpio-keys"; |
| |
| home { |
| label = "home"; |
| gpios = <&pm8941_gpios 1 0x1>; |
| linux,input-type = <1>; |
| linux,code = <102>; |
| gpio-key,wakeup; |
| debounce-interval = <15>; |
| }; |
| |
| vol_down { |
| label = "volume_down"; |
| gpios = <&pm8941_gpios 2 0x1>; |
| linux,input-type = <1>; |
| linux,code = <114>; |
| gpio-key,wakeup; |
| debounce-interval = <15>; |
| }; |
| |
| vol_up { |
| label = "volume_up"; |
| gpios = <&pm8941_gpios 5 0x1>; |
| linux,input-type = <1>; |
| linux,code = <115>; |
| gpio-key,wakeup; |
| debounce-interval = <15>; |
| }; |
| }; |
| |
| qcom,mdss_mdp@fd900000 { |
| qcom,memory-reservation-size = <0x1000000>; /* size 16MB */ |
| }; |
| |
| qcom,hdmi_tx@fd922100 { |
| status = "ok"; |
| |
| qcom,hdmi-tx-mux-sel = <&pm8841_mpps 3 0>; |
| qcom,hdmi-tx-mux-en = <&pm8841_mpps 4 0>; |
| }; |
| |
| drv2667_vreg: drv2667_vdd_vreg { |
| compatible = "regulator-fixed"; |
| regulator-name = "vdd_drv2667"; |
| }; |
| |
| i2c@f9967000 { |
| ti-drv2667@59 { |
| compatible = "ti,drv2667"; |
| reg = <0x59>; |
| vdd-supply = <&drv2667_vreg>; |
| vdd-i2c-supply = <&pm8941_s3>; |
| ti,label = "vibrator"; |
| ti,gain = <2>; |
| ti,idle-timeout-ms = <20>; |
| ti,max-runtime-ms = <15000>; |
| ti,mode = <2>; |
| ti,wav-seq = [ |
| /* wave form id */ |
| 01 |
| /* header size, start and stop bytes */ |
| 05 80 06 00 09 |
| /* repeat, amp, freq, duration, envelope */ |
| 01 ff 19 02 00]; |
| }; |
| }; |
| |
| i2c@f9924000 { |
| atmel_mxt_ts@4a { |
| compatible = "atmel,mxt-ts"; |
| reg = <0x4a>; |
| interrupt-parent = <&msmgpio>; |
| interrupts = <61 0x2>; |
| vdd_ana-supply = <&pm8941_l22>; |
| vcc_i2c-supply = <&pm8941_s3>; |
| atmel,reset-gpio = <&msmgpio 60 0x00>; |
| atmel,irq-gpio = <&msmgpio 61 0x00>; |
| atmel,panel-coords = <0 0 1080 1920>; |
| atmel,display-coords = <0 0 1080 1920>; |
| atmel,i2c-pull-up; |
| atmel,no-force-update; |
| atmel,cfg_1 { |
| atmel,family-id = <0xa2>; |
| atmel,variant-id = <0x00>; |
| atmel,version = <0x11>; |
| atmel,build = <0xaa>; |
| atmel,config = [ |
| /* Object 6, Instance = 0 */ |
| 00 00 00 00 00 00 |
| /* Object 38, Instance = 0 */ |
| 16 00 00 14 09 0C 00 00 00 00 |
| 00 00 00 00 00 00 00 00 00 00 |
| 00 00 00 00 00 00 00 00 00 00 |
| 00 00 00 00 00 00 00 00 00 00 |
| 00 00 00 00 00 00 00 00 00 00 |
| 00 00 00 00 00 00 00 00 00 00 |
| 00 00 00 00 |
| /* Object 7, Instance = 0 */ |
| FF FF 0A 03 |
| /* Object 8, Instance = 0 */ |
| 5F 00 14 14 00 00 00 01 00 00 |
| /* Object 9, Instance = 0 */ |
| 8F 00 00 20 34 00 87 3C 08 03 |
| 00 05 03 80 0A 14 14 0A 80 07 |
| 38 04 00 00 00 00 00 00 00 00 |
| 0F 0F 2E 33 02 00 |
| /* Object 15, Instance = 0 */ |
| 00 00 00 00 00 00 00 00 00 00 |
| 00 |
| /* Object 18, Instance = 0 */ |
| 04 00 |
| /* Object 24, Instance = 0 */ |
| 00 00 00 00 00 00 00 00 00 00 |
| 00 00 00 00 00 00 00 00 00 |
| /* Object 25, Instance = 0 */ |
| 00 00 54 6F F0 55 00 00 00 00 |
| 00 00 00 00 00 |
| /* Object 27, Instance = 0 */ |
| 00 00 00 00 00 00 00 |
| /* Object 40, Instance = 0 */ |
| 00 14 14 14 14 |
| /* Object 42, Instance = 0 */ |
| 20 14 00 00 00 14 11 00 03 00 |
| /* Object 43, Instance = 0 */ |
| 09 00 01 01 91 00 80 00 00 00 |
| 00 00 |
| /* Object 46, Instance = 0 */ |
| 00 00 10 10 00 00 01 00 00 0F |
| 0A |
| /* Object 47, Instance = 0 */ |
| 00 14 23 02 05 1E 01 78 03 10 |
| 00 00 0C 00 00 00 00 00 00 00 |
| 00 00 |
| /* Object 55, Instance = 0 */ |
| 00 00 00 00 00 00 00 |
| /* Object 56, Instance = 0 */ |
| 02 00 01 30 13 14 14 14 15 15 |
| 15 15 15 15 15 16 16 16 16 16 |
| 16 16 16 16 16 15 14 14 14 14 |
| 15 14 14 14 14 13 00 00 01 02 |
| 05 05 00 00 00 00 00 00 00 00 |
| 00 |
| /* Object 57, Instance = 0 */ |
| 00 00 00 |
| /* Object 61, Instance = 0 */ |
| 00 00 00 00 00 |
| /* Object 62, Instance = 0 */ |
| 00 01 03 01 00 00 00 00 00 0A |
| 0F 14 19 23 05 00 0A 05 05 69 |
| 23 23 34 11 64 06 06 04 40 00 |
| 00 00 00 00 69 4B 02 00 00 80 |
| 0A 14 14 18 18 10 10 80 00 80 |
| 00 00 0F 02 00 00 00 00 00 00 |
| 00 00 00 00 00 00 00 00 00 00 |
| 00 00 00 00 |
| /* Object 63, Instance = 0 */ |
| 00 00 00 00 00 00 00 00 00 00 |
| 00 00 |
| ]; |
| }; |
| }; |
| }; |
| |
| ext_5v: regulator-smb210 { |
| compatible = "regulator-fixed"; |
| regulator-name = "ext_5v"; |
| gpio = <&pm8941_mpps 2 0>; |
| startup-delay-us = <12000>; |
| enable-active-high; |
| }; |
| |
| sound { |
| qcom,model = "msm8974-taiko-liquid-snd-card"; |
| qcom,ext-spk-amp-supply = <&ext_5v>; |
| qcom,ext-spk-amp-gpio = <&pm8841_mpps 1 0>; |
| }; |
| }; |
| |
| &usb3 { |
| qcom,charging-disabled; |
| }; |
| |
| &pm8941_mvs1 { |
| parent-supply = <&ext_5v>; |
| }; |
| |
| &pm8941_mvs2 { |
| parent-supply = <&ext_5v>; |
| }; |
| |
| &pm8941_gpios { |
| gpio@c000 { /* GPIO 1 */ |
| qcom,mode = <0>; |
| qcom,pull = <0>; |
| qcom,vin-sel = <2>; |
| qcom,src-sel = <0>; |
| }; |
| |
| gpio@c100 { /* GPIO 2 */ |
| qcom,mode = <0>; |
| qcom,pull = <0>; |
| qcom,vin-sel = <2>; |
| qcom,src-sel = <0>; |
| }; |
| |
| gpio@c200 { /* GPIO 3 */ |
| }; |
| |
| gpio@c300 { /* GPIO 4 */ |
| }; |
| |
| gpio@c400 { /* GPIO 5 */ |
| qcom,mode = <0>; |
| qcom,pull = <0>; |
| qcom,vin-sel = <2>; |
| qcom,src-sel = <0>; |
| }; |
| |
| gpio@c500 { /* GPIO 6 */ |
| }; |
| |
| gpio@c600 { /* GPIO 7 */ |
| }; |
| |
| gpio@c700 { /* GPIO 8 */ |
| }; |
| |
| gpio@c800 { /* GPIO 9 */ |
| }; |
| |
| gpio@c900 { /* GPIO 10 */ |
| /* SMB350-CHG-EN-N */ |
| qcom,mode = <1>; /* DIG_OUT */ |
| qcom,output-type = <0>; /* CMOS */ |
| qcom,pull = <5>; /* PULL_NO */ |
| qcom,vin-sel = <0>; /* VPH */ |
| qcom,out-strength = <2>; /* STRENGTH_MED */ |
| qcom,src-sel = <0>; /* CONSTANT */ |
| qcom,master-en = <1>; |
| }; |
| |
| gpio@ca00 { /* GPIO 11 */ |
| }; |
| |
| gpio@cb00 { /* GPIO 12 */ |
| }; |
| |
| gpio@cc00 { /* GPIO 13 */ |
| /* SMB350-CHG-SUSP-N */ |
| qcom,mode = <1>; /* DIG_OUT */ |
| qcom,output-type = <0>; /* CMOS */ |
| qcom,pull = <5>; /* PULL_NO */ |
| qcom,vin-sel = <0>; /* VPH */ |
| qcom,out-strength = <2>; /* STRENGTH_MED */ |
| qcom,src-sel = <0>; /* CONSTANT */ |
| qcom,master-en = <1>; |
| }; |
| |
| gpio@cd00 { /* GPIO 14 */ |
| }; |
| |
| gpio@ce00 { /* GPIO 15 */ |
| qcom,mode = <1>; |
| qcom,output-type = <0>; |
| qcom,pull = <5>; |
| qcom,vin-sel = <2>; |
| qcom,out-strength = <3>; |
| qcom,src-sel = <2>; |
| qcom,master-en = <1>; |
| }; |
| |
| gpio@cf00 { /* GPIO 16 */ |
| }; |
| |
| gpio@d000 { /* GPIO 17 */ |
| }; |
| |
| gpio@d100 { /* GPIO 18 */ |
| }; |
| |
| gpio@d200 { /* GPIO 19 */ |
| qcom,mode = <1>; /* QPNP_PIN_MODE_DIG_OUT */ |
| qcom,output-type = <0>; /* QPNP_PIN_OUT_BUF_CMOS */ |
| qcom,pull = <5>; /* QPNP_PIN_PULL_NO */ |
| qcom,vin-sel = <2>; /* QPNP_PIN_VIN2 */ |
| qcom,out-strength = <2>; /* QPNP_PIN_OUT_STRENGTH_MED */ |
| qcom,src-sel = <0>; /* QPNP_PIN_SEL_FUNC_CONSTANT */ |
| qcom,master-en = <1>; |
| }; |
| |
| gpio@d300 { /* GPIO 20 */ |
| }; |
| |
| gpio@d400 { /* GPIO 21 */ |
| }; |
| |
| gpio@d500 { /* GPIO 22 */ |
| }; |
| |
| gpio@d600 { /* GPIO 23 */ |
| }; |
| |
| gpio@d700 { /* GPIO 24 */ |
| }; |
| |
| gpio@d800 { /* GPIO 25 */ |
| }; |
| |
| gpio@d900 { /* GPIO 26 */ |
| }; |
| |
| gpio@da00 { /* GPIO 27 */ |
| }; |
| |
| gpio@db00 { /* GPIO 28 */ |
| }; |
| |
| gpio@dc00 { /* GPIO 29 */ |
| qcom,pull = <0>; /* set to default pull */ |
| qcom,master-en = <1>; |
| qcom,vin-sel = <2>; /* select 1.8 V source */ |
| }; |
| |
| gpio@dd00 { /* GPIO 30 */ |
| /* SMB350-STAT */ |
| qcom,mode = <0>; /* DIG_IN */ |
| qcom,pull = <5>; /* PULL_NO */ |
| qcom,vin-sel = <2>; /* S3 1.8V */ |
| qcom,src-sel = <0>; /* CONSTANT */ |
| qcom,master-en = <1>; |
| }; |
| |
| gpio@de00 { /* GPIO 31 */ |
| }; |
| |
| gpio@df00 { /* GPIO 32 */ |
| }; |
| |
| gpio@e000 { /* GPIO 33 */ |
| qcom,mode = <1>; /* QPNP_PIN_MODE_DIG_OUT */ |
| qcom,output-type = <0>; /* QPNP_PIN_OUT_BUF_CMOS */ |
| qcom,pull = <5>; /* QPNP_PIN_PULL_NO */ |
| qcom,vin-sel = <2>; /* QPNP_PIN_VIN2 */ |
| qcom,out-strength = <2>; /* QPNP_PIN_OUT_STRENGTH_MED */ |
| qcom,src-sel = <0>; /* QPNP_PIN_SEL_FUNC_CONSTANT */ |
| qcom,invert = <1>; |
| qcom,master-en = <1>; |
| }; |
| |
| gpio@e100 { /* GPIO 34 */ |
| qcom,mode = <1>; /* QPNP_PIN_MODE_DIG_OUT */ |
| qcom,output-type = <0>; /* QPNP_PIN_OUT_BUF_CMOS */ |
| qcom,pull = <5>; /* QPNP_PIN_PULL_NO */ |
| qcom,vin-sel = <2>; /* QPNP_PIN_VIN2 */ |
| qcom,out-strength = <2>; /* QPNP_PIN_OUT_STRENGTH_MED */ |
| qcom,src-sel = <0>; /* QPNP_PIN_SEL_FUNC_CONSTANT */ |
| qcom,invert = <0>; |
| qcom,master-en = <1>; |
| }; |
| |
| gpio@e200 { /* GPIO 35 */ |
| }; |
| |
| gpio@e300 { /* GPIO 36 */ |
| qcom,mode = <1>; /* QPNP_PIN_MODE_DIG_OUT */ |
| qcom,output-type = <0>; /* QPNP_PIN_OUT_BUF_CMOS */ |
| qcom,pull = <5>; /* QPNP_PIN_PULL_NO */ |
| qcom,vin-sel = <2>; /* QPNP_PIN_VIN2 */ |
| qcom,out-strength = <3>; /* QPNP_PIN_OUT_STRENGTH_HIGH */ |
| qcom,src-sel = <3>; /* QPNP_PIN_SEL_FUNC_2 */ |
| qcom,master-en = <1>; |
| }; |
| }; |
| |
| &pm8941_mpps { |
| |
| mpp@a000 { /* MPP 1 */ |
| }; |
| |
| mpp@a100 { /* MPP 2 */ |
| /* ext_5v regulator enable */ |
| qcom,mode = <1>; /* Digital output */ |
| qcom,invert = <0>; /* Output low initially */ |
| qcom,vin-sel = <2>; /* PM8941 S3 = 1.8 V */ |
| qcom,src-sel = <0>; /* Constant */ |
| qcom,master-en = <1>; /* Enable MPP */ |
| }; |
| |
| mpp@a200 { /* MPP 3 */ |
| }; |
| |
| mpp@a300 { /* MPP 4 */ |
| }; |
| |
| mpp@a400 { /* MPP 5 */ |
| /* SPI_ETH config */ |
| qcom,mode = <1>; /* DIG_OUT */ |
| qcom,output-type = <0>; /* CMOS */ |
| qcom,vin-sel = <2>; /* PM8941_S3 1.8V > 1.6V */ |
| qcom,src-sel = <0>; /* CONSTANT */ |
| qcom,master-en = <1>; /* ENABLE MPP */ |
| }; |
| |
| mpp@a500 { /* MPP 6 */ |
| /* SPI_ETH_RST config */ |
| qcom,mode = <1>; /* DIG_OUT */ |
| qcom,output-type = <0>; /* CMOS */ |
| qcom,vin-sel = <2>; /* PM8941_S3 1.8V > 1.6V */ |
| qcom,src-sel = <0>; /* CONSTANT */ |
| qcom,master-en = <1>; /* ENABLE MPP */ |
| }; |
| |
| mpp@a600 { /* MPP 7 */ |
| }; |
| |
| mpp@a700 { /* MPP 8 */ |
| }; |
| }; |
| |
| &pm8841_mpps { |
| |
| mpp@a000 { /* MPP 1 */ |
| /* CLASS_D_EN speakers PA */ |
| qcom,mode = <1>; /* DIG_OUT */ |
| qcom,output-type = <0>; /* PNP_PIN_OUT_BUF_CMOS */ |
| qcom,vin-sel = <2>; /* S3A 1.8v */ |
| qcom,src-select = <0>; /* CONSTANT */ |
| qcom,master-en = <1>; /* ENABLE MPP */ |
| }; |
| |
| mpp@a100 { /* MPP 2 */ |
| }; |
| |
| mpp@a200 { /* HDMI_MUX_SEL MPP 3*/ |
| status = "ok"; |
| qcom,mode = <1>; /* DIG_OUT */ |
| qcom,output-type = <0>; /* CMOS */ |
| qcom,vin-sel = <2>; /* PM8841_S3A 1.8V */ |
| qcom,src-sel = <0>; /* CONSTANT */ |
| qcom,master-en = <1>; /* ENABLE MPP */ |
| }; |
| |
| mpp@a300 { /* HDMI_MUX_EN MPP 4*/ |
| status = "ok"; |
| qcom,mode = <1>; /* DIG_OUT */ |
| qcom,output-type = <0>; /* CMOS */ |
| qcom,vin-sel = <0>; /* PM8841_VPH 3.4V */ |
| qcom,src-sel = <0>; /* CONSTANT */ |
| qcom,master-en = <1>; /* ENABLE MPP */ |
| }; |
| }; |