/* 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-hx8379a-wvga-video.dtsi" / { model = "Qualcomm MSM 8610 QRD"; compatible = "qcom,msm8610-qrd", "qcom,msm8610", "qcom,qrd"; qcom,msm-id = <147 11 0>, <165 11 0>, <161 11 0>, <162 11 0>, <163 11 0>, <164 11 0>, <166 11 0>; }; &soc { i2c@f9923000{ focaltech@38{ compatible = "focaltech,5x06"; reg = <0x38>; interrupt-parent = <&msmgpio>; interrupts = <1 0x2>; vdd-supply = <&pm8110_l19>; vcc_i2c-supply = <&pm8110_l14>; focaltech,family-id = <0x06>; focaltech,reset-gpio = <&msmgpio 0 0x00>; focaltech,irq-gpio = <&msmgpio 1 0x00>; focaltech,display-coords = <0 0 480 800>; focaltech,panel-coords = <0 0 480 800>; focaltech,button-map= <139 102 158>; focaltech,no-force-update; focaltech,i2c-pull-up; }; }; gen-vkeys { compatible = "qcom,gen-vkeys"; label = "ft5x06_ts"; qcom,disp-maxx = <480>; qcom,disp-maxy = <800>; qcom,panel-maxx = <481>; qcom,panel-maxy = <940>; qcom,key-codes = <139 0 102 158 0 0 0>; qcom,y-offset = <0>; }; serial@f991e000 { status = "ok"; }; 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>; }; }; i2c@f9927000 { 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>; }; }; sound { qcom,audio-routing = "RX_BIAS", "MCLK", "INT_LDO_H", "MCLK", "MIC BIAS Internal1", "Handset Mic", "MIC BIAS Internal2", "Headset Mic", "AMIC1", "MIC BIAS Internal1", "AMIC2", "MIC BIAS Internal2"; }; }; &spmi_bus { qcom,pm8110@0 { qcom,leds@a100 { status = "okay"; qcom,led_mpp_2 { label = "mpp"; linux,name = "wled-homerow"; linux-default-trigger = "hr-trigger"; qcom,default-state = "off"; qcom,max-current = <40>; qcom,id = <6>; qcom,source-sel = <1>; qcom,mode-ctrl = <0x61>; }; }; 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>; }; }; }; }; &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-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 = <0x4 0x4 0x4>; /* 10mA, 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-always-on; qcom,vdd-io-lpm-sup; 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 = <0x4 0x4 0x4>; /* 10mA, 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,chgr@1000 { status = "ok"; }; qcom,buck@1100 { status = "ok"; }; qcom,bat-if@1200 { status = "ok"; }; qcom,usb-chgpth@1300 { status = "ok"; }; qcom,chg-misc@1600 { status = "ok"; }; };