355 lines
7.9 KiB
Plaintext
355 lines
7.9 KiB
Plaintext
/* 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 MTP";
|
|
compatible = "qcom,msm8610-mtp", "qcom,msm8610", "qcom,mtp";
|
|
qcom,msm-id = <147 8 0>, <165 8 0>, <161 8 0>, <162 8 0>,
|
|
<163 8 0>, <164 8 0>, <166 8 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 = <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-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";
|
|
};
|
|
};
|
|
|
|
&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 */
|
|
};
|
|
};
|
|
|
|
&pm8110_bms {
|
|
status = "ok";
|
|
};
|