| /* Copyright (c) 2013, 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. |
| */ |
| |
| /dts-v1/; |
| |
| /include/ "msm8610.dtsi" |
| /include/ "dsi-v2-panel-truly-wvga-video.dtsi" |
| /include/ "msm8610-camera-sensor-cdp-mtp.dtsi" |
| |
| / { |
| model = "Qualcomm MSM 8610 CDP"; |
| compatible = "qcom,msm8610-cdp", "qcom,msm8610", "qcom,cdp"; |
| qcom,msm-id = <147 1 0>, <165 1 0>, <161 1 0>, <162 1 0>, |
| <163 1 0>, <164 1 0>, <166 1 0>; |
| }; |
| |
| &soc { |
| serial@f991e000 { |
| status = "ok"; |
| }; |
| |
| i2c@f9923000{ |
| atmel_mxt_ts@4a { |
| compatible = "atmel,mxt-ts"; |
| reg = <0x4a>; |
| interrupt-parent = <&msmgpio>; |
| interrupts = <1 0x2>; |
| vdd_ana-supply = <&pm8110_l19>; |
| vcc_i2c-supply = <&pm8110_l14>; |
| atmel,reset-gpio = <&msmgpio 0 0x00>; |
| atmel,irq-gpio = <&msmgpio 1 0x00>; |
| atmel,panel-coords = <0 0 508 880>; |
| atmel,display-coords = <0 0 480 800>; |
| atmel,i2c-pull-up; |
| atmel,no-force-update; |
| atmel,cfg_1 { |
| atmel,family-id = <0x81>; |
| atmel,variant-id = <0x15>; |
| atmel,version = <0x11>; |
| atmel,build = <0xaa>; |
| atmel,config = [ |
| /* Object 6, Instance = 0 */ |
| 00 00 00 00 00 00 |
| /* Object 38, Instance = 0 */ |
| 1D 01 00 0C 04 0D 00 00 |
| /* Object 7, Instance = 0 */ |
| 20 08 32 |
| /* Object 8, Instance = 0 */ |
| 19 00 14 14 FF 00 FF 00 00 00 |
| /* Object 9, Instance = 0 */ |
| 83 00 00 13 0B 00 20 32 01 03 |
| 00 32 05 30 0A 05 0A 00 70 03 |
| FC 01 00 36 2F 2C 00 00 40 00 |
| 00 0A 00 00 02 |
| /* Object 18, Instance = 0 */ |
| 00 00 |
| /* Object 19, Instance = 0 */ |
| 00 00 00 00 00 00 |
| /* Object 25, Instance = 0 */ |
| 03 00 18 79 A8 61 |
| /* Object 58, Instance = 0 */ |
| 00 00 00 00 00 00 00 00 00 00 |
| 00 |
| /* Object 42, Instance = 0 */ |
| 00 00 00 00 00 00 00 00 |
| /* Object 46, Instance = 0 */ |
| 04 03 08 10 00 00 00 00 00 |
| /* Object 47, Instance = 0 */ |
| 00 00 00 00 00 00 00 00 00 00 |
| /* Object 48, Instance = 0 */ |
| 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 55, Instance = 0 */ |
| 00 00 00 00 |
| ]; |
| }; |
| }; |
| }; |
| |
| gen-vkeys { |
| compatible = "qcom,gen-vkeys"; |
| label = "atmel_mxt_ts"; |
| qcom,disp-maxx = <480>; |
| qcom,disp-maxy = <800>; |
| qcom,panel-maxx = <508>; |
| qcom,panel-maxy = <880>; |
| qcom,key-codes = <158 102 139>; |
| qcom,y-offset = <35>; |
| }; |
| |
| gpio_keys { |
| compatible = "gpio-keys"; |
| input-name = "gpio-keys"; |
| |
| camera_snapshot { |
| label = "camera_snapshot"; |
| gpios = <&msmgpio 73 0x1>; |
| linux,input-type = <1>; |
| linux,code = <0x2fe>; |
| gpio-key,wakeup; |
| debounce-interval = <15>; |
| }; |
| |
| camera_focus { |
| label = "camera_focus"; |
| gpios = <&msmgpio 74 0x1>; |
| linux,input-type = <1>; |
| linux,code = <0x210>; |
| gpio-key,wakeup; |
| debounce-interval = <15>; |
| }; |
| |
| vol_up { |
| label = "volume_up"; |
| gpios = <&msmgpio 72 0x1>; |
| linux,input-type = <1>; |
| linux,code = <115>; |
| gpio-key,wakeup; |
| debounce-interval = <15>; |
| }; |
| }; |
| |
| sound { |
| qcom,audio-routing = |
| "RX_BIAS", "MCLK", |
| "INT_LDO_H", "MCLK", |
| "MIC BIAS External", "Handset Mic", |
| "MIC BIAS Internal2", "Headset Mic", |
| "AMIC1", "MIC BIAS External", |
| "AMIC2", "MIC BIAS Internal2"; |
| }; |
| }; |
| |
| &i2c_cdc { |
| msm8x10_wcd_codec@0d{ |
| compatible = "qcom,msm8x10-wcd-i2c"; |
| reg = <0x0d>; |
| cdc-vdda-cp-supply = <&pm8110_s4>; |
| qcom,cdc-vdda-cp-voltage = <2150000 2150000>; |
| qcom,cdc-vdda-cp-current = <650000>; |
| |
| cdc-vdda-h-supply = <&pm8110_l6>; |
| qcom,cdc-vdda-h-voltage = <1800000 1800000>; |
| qcom,cdc-vdda-h-current = <250000>; |
| |
| cdc-vdd-px-supply = <&pm8110_l6>; |
| qcom,cdc-vdd-px-voltage = <1800000 1800000>; |
| qcom,cdc-vdd-px-current = <10000>; |
| |
| cdc-vdd-1p2v-supply = <&pm8110_l4>; |
| qcom,cdc-vdd-1p2v-voltage = <1200000 1200000>; |
| qcom,cdc-vdd-1p2v-current = <5000>; |
| |
| cdc-vdd-mic-bias-supply = <&pm8110_l20>; |
| qcom,cdc-vdd-mic-bias-voltage = <3075000 3075000>; |
| qcom,cdc-vdd-mic-bias-current = <25000>; |
| |
| qcom,cdc-micbias-cfilt-sel = <0x0>; |
| qcom,cdc-micbias-cfilt-mv = <1800000>; |
| qcom,cdc-mclk-clk-rate = <12288000>; |
| }; |
| |
| msm8x10_wcd_codec@77{ |
| compatible = "qcom,msm8x10-wcd-i2c"; |
| reg = <0x77>; |
| }; |
| |
| msm8x10_wcd_codec@66{ |
| compatible = "qcom,msm8x10-wcd-i2c"; |
| reg = <0x66>; |
| }; |
| |
| msm8x10_wcd_codec@55{ |
| compatible = "qcom,msm8x10-wcd-i2c"; |
| reg = <0x55>; |
| }; |
| }; |
| |
| &spmi_bus { |
| qcom,pm8110@0 { |
| qcom,leds@a100 { |
| status = "okay"; |
| qcom,led_mpp_2 { |
| label = "mpp"; |
| linux,name = "button-backlight"; |
| linux-default-trigger = "hr-trigger"; |
| qcom,default-state = "off"; |
| qcom,max-current = <40>; |
| qcom,id = <6>; |
| qcom,source-sel = <1>; |
| qcom,mode-ctrl = <0x60>; |
| qcom,mode = "manual"; |
| }; |
| }; |
| |
| qcom,leds@a200 { |
| status = "okay"; |
| qcom,led_mpp_3 { |
| label = "mpp"; |
| linux,name = "wled-backlight"; |
| linux,default-trigger = "bkl-trigger"; |
| qcom,default-state = "on"; |
| qcom,max-current = <40>; |
| qcom,id = <6>; |
| qcom,source-sel = <1>; |
| qcom,mode-ctrl = <0x10>; |
| qcom,mode = "manual"; |
| }; |
| }; |
| }; |
| }; |
| |
| &spmi_bus { |
| qcom,pm8110@1 { |
| qcom,vibrator@c000 { |
| status = "okay"; |
| qcom,vib-timeout-ms = <15000>; |
| qcom,vib-vtg-level-mV = <3100>; |
| }; |
| }; |
| }; |
| |
| &sdhc_1 { |
| vdd-supply = <&pm8110_l17>; |
| qcom,vdd-always-on; |
| qcom,vdd-lpm-sup; |
| qcom,vdd-voltage-level = <2900000 2900000>; |
| qcom,vdd-current-level = <200 400000>; |
| |
| vdd-io-supply = <&pm8110_l6>; |
| qcom,vdd-io-always-on; |
| qcom,vdd-io-lpm-sup; |
| qcom,vdd-io-voltage-level = <1800000 1800000>; |
| qcom,vdd-io-current-level = <200 60000>; |
| |
| qcom,pad-pull-on = <0x0 0x3 0x3>; /* no-pull, pull-up, pull-up */ |
| qcom,pad-pull-off = <0x0 0x3 0x3>; /* no-pull, pull-up, pull-up */ |
| qcom,pad-drv-on = <0x7 0x4 0x4>; /* 16mA, 10mA, 10mA */ |
| qcom,pad-drv-off = <0x0 0x0 0x0>; /* 2mA, 2mA, 2mA */ |
| |
| qcom,clk-rates = <400000 25000000 50000000 100000000 200000000>; |
| qcom,bus-speed-mode = "HS200_1p8v", "DDR_1p8v"; |
| qcom,nonremovable; |
| |
| status = "ok"; |
| }; |
| |
| &sdhc_2 { |
| vdd-supply = <&pm8110_l18>; |
| qcom,vdd-voltage-level = <2950000 2950000>; |
| qcom,vdd-current-level = <15000 400000>; |
| |
| vdd-io-supply = <&pm8110_l21>; |
| qcom,vdd-io-voltage-level = <1800000 2950000>; |
| qcom,vdd-io-current-level = <200 50000>; |
| |
| qcom,pad-pull-on = <0x0 0x3 0x3>; /* no-pull, pull-up, pull-up */ |
| qcom,pad-pull-off = <0x0 0x3 0x3>; /* no-pull, pull-up, pull-up */ |
| qcom,pad-drv-on = <0x7 0x4 0x4>; /* 16mA, 10mA, 10mA */ |
| qcom,pad-drv-off = <0x0 0x0 0x0>; /* 2mA, 2mA, 2mA */ |
| |
| qcom,clk-rates = <400000 25000000 50000000 100000000 200000000>; |
| |
| #address-cells = <0>; |
| interrupt-parent = <&sdhc_2>; |
| interrupts = <0 1 2>; |
| #interrupt-cells = <1>; |
| interrupt-map-mask = <0xffffffff>; |
| interrupt-map = <0 &intc 0 125 0 |
| 1 &intc 0 221 0 |
| 2 &msmgpio 42 0x3>; |
| interrupt-names = "hc_irq", "pwr_irq", "status_irq"; |
| cd-gpios = <&msmgpio 42 0x1>; |
| |
| status = "ok"; |
| }; |
| |
| &pm8110_chg { |
| status = "ok"; |
| qcom,charging-disabled; |
| qcom,use-default-batt-values; |
| |
| qcom,chgr@1000 { |
| status = "ok"; |
| }; |
| |
| qcom,buck@1100 { |
| status = "ok"; |
| }; |
| |
| qcom,usb-chgpth@1300 { |
| status = "ok"; |
| }; |
| |
| qcom,chg-misc@1600 { |
| status = "ok"; |
| }; |
| }; |
| |
| &pm8110_gpios { |
| gpio@c000 { /* GPIO 1 */ |
| }; |
| |
| gpio@c100 { /* GPIO 2 */ |
| }; |
| |
| gpio@c200 { /* GPIO 3 */ |
| }; |
| |
| gpio@c300 { /* GPIO 4 */ |
| }; |
| }; |
| |
| &pm8110_mpps { |
| mpp@a000 { /* MPP 1 */ |
| }; |
| |
| mpp@a100 { /* MPP 2 */ |
| status = "disabled"; |
| }; |
| |
| mpp@a200 { /* MPP 3 */ |
| status = "disabled"; |
| }; |
| |
| mpp@a300 { /* MPP 4 */ |
| /* PA_THERM config */ |
| qcom,mode = <4>; /* AIN input */ |
| qcom,invert = <1>; /* Enable MPP */ |
| qcom,ain-route = <3>; /* AMUX 8 */ |
| qcom,master-en = <1>; |
| qcom,src-sel = <0>; /* Function constant */ |
| }; |
| }; |
| |
| /* CoreSight */ |
| &tpiu { |
| qcom,seta-gpios = <&msmgpio 4 0>, |
| <&msmgpio 5 0>, |
| <&msmgpio 6 0>, |
| <&msmgpio 7 0>, |
| <&msmgpio 22 0>, |
| <&msmgpio 23 0>, |
| <&msmgpio 24 0>, |
| <&msmgpio 25 0>, |
| <&msmgpio 26 0>, |
| <&msmgpio 27 0>, |
| <&msmgpio 28 0>, |
| <&msmgpio 29 0>, |
| <&msmgpio 30 0>, |
| <&msmgpio 31 0>, |
| <&msmgpio 94 0>, |
| <&msmgpio 95 0>, |
| <&msmgpio 96 0>, |
| <&msmgpio 97 0>; |
| qcom,seta-gpios-func = <9 9 8 11 2 2 2 2 2 2 3 2 3 3 4 4 4 4>; |
| qcom,seta-gpios-drv = <7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7>; |
| qcom,seta-gpios-pull = <0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0>; |
| qcom,seta-gpios-dir = <2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2>; |
| |
| qcom,setb-gpios = <&msmgpio 8 0>, |
| <&msmgpio 10 0>, |
| <&msmgpio 11 0>, |
| <&msmgpio 13 0>, |
| <&msmgpio 14 0>, |
| <&msmgpio 15 0>, |
| <&msmgpio 16 0>, |
| <&msmgpio 17 0>, |
| <&msmgpio 18 0>, |
| <&msmgpio 19 0>, |
| <&msmgpio 20 0>, |
| <&msmgpio 21 0>, |
| <&msmgpio 42 0>, |
| <&msmgpio 80 0>, |
| <&msmgpio 81 0>, |
| <&msmgpio 82 0>, |
| <&msmgpio 83 0>, |
| <&msmgpio 84 0>; |
| qcom,setb-gpios-func = <10 8 8 6 9 9 9 9 9 9 9 9 5 7 7 8 8 8>; |
| qcom,setb-gpios-drv = <7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7>; |
| qcom,setb-gpios-pull = <0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0>; |
| qcom,setb-gpios-dir = <2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2>; |
| }; |