blob: 4bab7e44b294b08416246c05139d25570e94e783 [file] [log] [blame]
/* 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"
/ {
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 {
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>;
};
};
};
&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,charging-disabled;
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";
};
};