From 4d298831abf3c8264458dcae89296c25a7aaa820 Mon Sep 17 00:00:00 2001 From: Georgi Djakov Date: Fri, 6 Feb 2015 12:55:47 +0200 Subject: ARM: dts: Add snapshot of MSM DT files Signed-off-by: Georgi Djakov --- arch/arm64/boot/dts/qcom/msm8916-cdp.dtsi | 582 ++++++++++++++++++++++++++++++ 1 file changed, 582 insertions(+) create mode 100644 arch/arm64/boot/dts/qcom/msm8916-cdp.dtsi (limited to 'arch/arm64/boot/dts/qcom/msm8916-cdp.dtsi') diff --git a/arch/arm64/boot/dts/qcom/msm8916-cdp.dtsi b/arch/arm64/boot/dts/qcom/msm8916-cdp.dtsi new file mode 100644 index 00000000000..afa3684e9da --- /dev/null +++ b/arch/arm64/boot/dts/qcom/msm8916-cdp.dtsi @@ -0,0 +1,582 @@ +/* Copyright (c) 2014, 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 "msm8916.dtsi" +#include "msm8916-pinctrl.dtsi" +#include "msm8916-camera-sensor-cdp.dtsi" + +/ { + aliases { + serial0 = &blsp1_uart2; + }; +}; + +&soc { + i2c@78b9000 { /* BLSP1 QUP5 */ + synaptics@20 { + compatible = "synaptics,rmi4"; + reg = <0x20>; + interrupt-parent = <&msm_gpio>; + interrupts = <13 0x2008>; + vdd-supply = <&pm8916_l17>; + vcc_i2c-supply = <&pm8916_l6>; + /* pins used by touchscreen */ + pinctrl-names = "pmx_ts_active","pmx_ts_suspend","pmx_ts_release"; + pinctrl-0 = <&ts_int_active &ts_reset_active>; + pinctrl-1 = <&ts_int_suspend &ts_reset_suspend>; + pinctrl-2 = <&ts_release>; + synaptics,irq-gpio = <&msm_gpio 13 0x2008>; + synaptics,reset-gpio = <&msm_gpio 12 0x0>; + synaptics,i2c-pull-up; + synaptics,power-down; + synaptics,disable-gpios; + synaptics,detect-device; + synaptics,device1 { + synaptics,package-id = <3202>; + synaptics,button-map = <139 172 158>; + }; + synaptics,device2 { + synaptics,package-id = <3408>; + synaptics,display-coords = <0 0 1079 1919>; + synaptics,panel-coords = <0 0 1079 2063>; + }; + }; + }; + + gen-vkeys { + compatible = "qcom,gen-vkeys"; + label = "synaptics_rmi4_i2c"; + qcom,disp-maxx = <1079>; + qcom,disp-maxy = <1919>; + qcom,panel-maxx = <1079>; + qcom,panel-maxy = <2084>; + qcom,key-codes = <158 139 172 217>; + }; + + i2c@78ba000 { /* BLSP1 QUP6 */ + nfc-nci@e { + compatible = "qcom,nfc-nci"; + reg = <0x0e>; + qcom,irq-gpio = <&msm_gpio 21 0x00>; + qcom,dis-gpio = <&msm_gpio 20 0x00>; + qcom,clk-src = "BBCLK2"; + qcom,clk-en-gpio = <&msm_gpio 0 0x00>; + interrupt-parent = <&msm_gpio>; + interrupts = <21 0>; + pinctrl-names = "nfc_active","nfc_suspend"; + pinctrl-0 = <&nfc_int_active &nfc_disable_active>; + pinctrl-1 = <&nfc_int_suspend &nfc_disable_suspend>; + qcom,clk-gpio = <&pm8916_gpios 2 0>; + clocks = <&clock_rpm clk_bb_clk2_pin>; + clock-names = "ref_clk"; + }; + }; + + i2c@78b6000 { /* BLSP1 QUP2 */ + mpu6050@68 { /* Gyroscope and accelerometer sensor combo */ + compatible = "invn,mpu6050"; + reg = <0x68>; + pinctrl-names = "mpu_default","mpu_sleep"; + pinctrl-0 = <&mpu6050_default>; + pinctrl-1 = <&mpu6050_sleep>; + interrupt-parent = <&msm_gpio>; + interrupts = <115 0x2>; + vdd-supply = <&pm8916_l17>; + vlogic-supply = <&pm8916_l16>; + invn,gpio-int = <&msm_gpio 115 0x2>; + invn,place = "Portrait Down Back Side"; + }; + + avago@39 { /* Ambient light and proximity sensor */ + compatible = "avago,apds9900"; + reg = <0x39>; + pinctrl-names = "default","sleep"; + pinctrl-0 = <&apds99xx_default>; + pinctrl-1 = <&apds99xx_sleep>; + interrupt-parent = <&msm_gpio>; + interrupts = <113 0x2002>; + vdd-supply = <&pm8916_l17>; + vio-supply = <&pm8916_l6>; + avago,irq-gpio = <&msm_gpio 113 0x2002>; + avago,ps-threshold = <600>; + avago,ps-hysteresis-threshold = <500>; + avago,ps-pulse = <8>; + avago,ps-pgain = <0>; + avago,als-B = <223>; + avago,als-C = <70>; + avago,als-D = <142>; + avago,ga-value = <48>; + }; + + akm@c { + compatible = "ak,ak8963"; + reg = <0x0c>; + pinctrl-names = "ak8963_default", "ak8963_sleep"; + pinctrl-0 = <&ak8963_default>; + pinctrl-1 = <&ak8963_sleep>; + interrupt-parent = <&msm_gpio>; + interrupts = <69 0x2>; + vdd-supply = <&pm8916_l17>; + vio-supply = <&pm8916_l6>; + ak,layout = <0x6>; + ak,auto-report; + }; + }; + + i2c@78b6000 { /* BLSP1 QUP2 */ + wcd9xxx_codec@14 { + compatible = "qcom,wcd9xxx-i2c"; + reg = <0x0d>; + qcom,cdc-reset-gpio = <&msm_gpio 67 0>; + interrupt-parent = <&wcd9xxx_intc>; + interrupts = <0 1 2 3 4 5 6>, <7 8 9 10 11 12 13>, + <14 15 16 17 18 19 20>, <21 22 23 24 25 26 27 28>; + + cdc-vdd-buck-supply = <&pm8916_s4>; + qcom,cdc-vdd-buck-voltage = <1800000 2150000>; + qcom,cdc-vdd-buck-current = <650000>; + + cdc-vdd-h-supply = <&pm8916_l15>; + qcom,cdc-vdd-h-voltage = <1800000 1800000>; + qcom,cdc-vdd-h-current = <25000>; + + cdc-vdd-px-supply = <&pm8916_l6>; + qcom,cdc-vdd-px-voltage = <1800000 1800000>; + qcom,cdc-vdd-px-current = <25000>; + + cdc-vdd-cx-supply = <&pm8916_l2>; + qcom,cdc-vdd-cx-voltage = <1200000 1200000>; + qcom,cdc-vdd-cx-current = <2000>; + + cdc-vdd-buckhelper-supply = <&pm8916_l15>; + qcom,cdc-vdd-buckhelper-voltage = <1775000 2125000>; + qcom,cdc-vdd-buckhelper-current = <10000>; + + qcom,cdc-static-supplies = "cdc-vdd-h", + "cdc-vdd-px", + "cdc-vdd-cx"; + + qcom,cdc-cp-supplies = "cdc-vdd-buck", + "cdc-vdd-buckhelper"; + + qcom,cdc-micbias-ldoh-v = <0x3>; + qcom,cdc-micbias-cfilt1-mv = <1800>; + qcom,cdc-micbias-cfilt2-mv = <2700>; + qcom,cdc-micbias-cfilt3-mv = <1800>; + + qcom,cdc-micbias1-cfilt-sel = <0x0>; + qcom,cdc-micbias2-cfilt-sel = <0x1>; + qcom,cdc-micbias3-cfilt-sel = <0x2>; + + qcom,cdc-mclk-clk-rate = <9600000>; + }; + + wcd9xxx_codec@77 { + compatible = "qcom,wcd9xxx-i2c"; + reg = <0x77>; + }; + + wcd9xxx_codec@66 { + compatible = "qcom,wcd9xxx-i2c"; + reg = <0x66>; + }; + + wcd9xxx_codec@55 { + compatible = "qcom,wcd9xxx-i2c"; + reg = <0x55>; + }; + }; + + sound { + compatible = "qcom,msm8x16-audio-codec"; + qcom,model = "msm8x16-snd-card"; + qcom,msm-snd-card-id = <0>; + qcom,msm-codec-type = "internal"; + qcom,msm-ext-pa = "primary"; + qcom,msm-mbhc-hphl-swh = <0>; + qcom,msm-mbhc-gnd-swh = <0>; + qcom,msm-micbias1-ext-cap; + qcom,msm-mclk-freq = <9600000>; + qcom,msm-hs-micbias-type = "internal"; + qcom,audio-routing = + "RX_BIAS", "MCLK", + "SPK_RX_BIAS", "MCLK", + "INT_LDO_H", "MCLK", + "MIC BIAS Internal1", "Handset Mic", + "MIC BIAS Internal2", "Headset Mic", + "MIC BIAS Internal3", "Secondary Mic", + "AMIC1", "MIC BIAS Internal1", + "AMIC2", "MIC BIAS Internal2", + "AMIC3", "MIC BIAS Internal3", + "DMIC1", "MIC BIAS Internal1", + "MIC BIAS Internal1", "Digital Mic1", + "DMIC2", "MIC BIAS Internal1", + "MIC BIAS Internal1", "Digital Mic2"; + pinctrl-names = "cdc_lines_act", + "cdc_lines_sus", + "cdc_lines_sec_ext_act", + "cdc_lines_sec_ext_sus"; + pinctrl-0 = <&cdc_pdm_lines_act>; + pinctrl-1 = <&cdc_pdm_lines_sus>; + pinctrl-2 = <&cdc_pdm_lines_act &cdc_ext_pa_act + &cdc_ext_pa_ws_act>; + pinctrl-3 = <&cdc_pdm_lines_sus &cdc_ext_pa_sus + &cdc_ext_pa_ws_sus>; + }; + + sound-9306 { + compatible = "qcom,msm8x16-audio-codec"; + qcom,model = "msm8x16-tapan-snd-card"; + qcom,msm-snd-card-id = <1>; + qcom,msm-codec-type = "external"; + qcom,tapan-mclk-clk-freq = <9600000>; + qcom,prim-auxpcm-gpio-clk = <&msm_gpio 63 0>; + qcom,prim-auxpcm-gpio-sync = <&msm_gpio 64 0>; + qcom,prim-auxpcm-gpio-din = <&msm_gpio 65 0>; + qcom,prim-auxpcm-gpio-dout = <&msm_gpio 66 0>; + qcom,prim-auxpcm-gpio-set = "prim-gpio-prim"; + qcom,tapan-codec-9302; + pinctrl-names = "ext_cdc_tlmm_lines_act", + "ext_cdc_tlmm_lines_sus"; + pinctrl-0 = <&ext_cdc_tlmm_lines_act>; + pinctrl-1 = <&ext_cdc_tlmm_lines_sus>; + qcom,audio-routing = + "RX_BIAS", "MCLK", + "LDO_H", "MCLK", + "SPK_OUT", "MCLK", + "SPK_OUT", "EXT_VDD_SPKR", + "AMIC1", "MIC BIAS1 Internal1", + "MIC BIAS1 Internal1", "Handset Mic", + "AMIC2", "MIC BIAS2 External", + "MIC BIAS2 External", "Headset Mic", + "AMIC4", "MIC BIAS2 External", + "MIC BIAS2 External", "ANCRight Headset Mic", + "AMIC5", "MIC BIAS2 External", + "MIC BIAS2 External", "ANCLeft Headset Mic", + "DMIC1", "MIC BIAS1 External", + "MIC BIAS1 External", "Digital Mic1", + "DMIC2", "MIC BIAS1 External", + "MIC BIAS1 External", "Digital Mic2", + "DMIC3", "MIC BIAS3 External", + "MIC BIAS3 External", "Digital Mic3", + "DMIC4", "MIC BIAS3 External", + "MIC BIAS3 External", "Digital Mic4"; + }; +}; + +&blsp1_uart2 { + status = "ok"; + pinctrl-names = "default"; + pinctrl-0 = <&uart_console_sleep>; +}; + +&soc { + gpio_keys { + compatible = "gpio-keys"; + input-name = "gpio-keys"; + pinctrl-names = "tlmm_gpio_key_active","tlmm_gpio_key_suspend"; + pinctrl-0 = <&gpio_key_active>; + pinctrl-1 = <&gpio_key_suspend>; + + camera_focus { + label = "camera_focus"; + gpios = <&msm_gpio 108 0x1>; + linux,input-type = <1>; + linux,code = <0x210>; + gpio-key,wakeup; + debounce-interval = <15>; + }; + + camera_snapshot { + label = "camera_snapshot"; + gpios = <&msm_gpio 109 0x1>; + linux,input-type = <1>; + linux,code = <0x2fe>; + gpio-key,wakeup; + debounce-interval = <15>; + }; + + vol_up { + label = "volume_up"; + gpios = <&msm_gpio 107 0x1>; + linux,input-type = <1>; + linux,code = <115>; + gpio-key,wakeup; + debounce-interval = <15>; + }; + }; +}; + +&blsp1_uart1 { + status = "ok"; +}; + +&sdhc_1 { + vdd-supply = <&pm8916_l8>; + qcom,vdd-voltage-level = <2900000 2900000>; + qcom,vdd-current-level = <200 400000>; + + vdd-io-supply = <&pm8916_l5>; + qcom,vdd-io-always-on; + qcom,vdd-io-lpm-sup; + qcom,vdd-io-voltage-level = <1800000 1800000>; + qcom,vdd-io-current-level = <200 60000>; + + pinctrl-names = "active", "sleep"; + pinctrl-0 = <&sdc1_clk_on &sdc1_cmd_on &sdc1_data_on>; + pinctrl-1 = <&sdc1_clk_off &sdc1_cmd_off &sdc1_data_off>; + + qcom,nonremovable; + + status = "ok"; +}; + +&sdhc_2 { + vdd-supply = <&pm8916_l11>; + qcom,vdd-voltage-level = <2800000 2950000>; + qcom,vdd-current-level = <15000 400000>; + + vdd-io-supply = <&pm8916_l12>; + qcom,vdd-io-voltage-level = <1800000 2950000>; + qcom,vdd-io-current-level = <200 50000>; + + pinctrl-names = "active", "sleep"; + pinctrl-0 = <&sdc2_clk_on &sdc2_cmd_on &sdc2_data_on &sdc2_cd_on>; + pinctrl-1 = <&sdc2_clk_off &sdc2_cmd_off &sdc2_data_off &sdc2_cd_off>; + + #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 &msm_gpio 38 0>; + interrupt-names = "hc_irq", "pwr_irq", "status_irq"; + cd-gpios = <&msm_gpio 38 0x1>; + + status = "ok"; +}; + +&pm8916_mpps { + mpp@a000 { /* MPP 1 */ + /* VDD_PX */ + status = "disabled"; + }; + + mpp@a100 { /* MPP 2 */ + /* HR LED */ + status = "disabled"; + }; + + mpp@a200 { /* MPP 3 */ + /* VREF DAC */ + status = "disabled"; + }; + + mpp@a300 { /* MPP 4 */ + /* Backlight PWM */ + qcom,mode = <1>; /* Digital output */ + qcom,invert = <0>; /* Disable invert */ + qcom,src-sel = <4>; /* DTEST1 */ + qcom,vin-sel = <0>; /* VPH_PWR */ + qcom,master-en = <1>; /* Enable MPP */ + }; +}; + +&pm8916_gpios { + gpio@c000 { /* GPIO 1 */ + /* Battery UICC Alarm */ + status = "disabled"; + }; + + gpio@c100 { /* GPIO 2 */ + /* NFC_CLK_REQ */ + qcom,mode = <0>; /* QPNP_PIN_MODE_DIG_IN */ + qcom,pull = <5>; /* QPNP_PIN_PULL_NO */ + qcom,vin-sel = <2>; /* QPNP_PIN_VIN2 */ + qcom,src-sel = <2>; /* QPNP_PIN_SEL_FUNC_1 */ + qcom,master-en = <1>; + }; + + gpio@c200 { /* GPIO 3 */ + /* External regulator control for WTR */ + status = "disabled"; + }; + + gpio@c300 { /* GPIO 4 */ + /* External regulator control for APC */ + status = "disabled"; + }; +}; + +#include "dsi-panel-jdi-1080p-video.dtsi" +#include "dsi-panel-nt35590-720p-video.dtsi" +#include "dsi-panel-nt35590-720p-cmd.dtsi" +#include "dsi-panel-hx8394d-720p-video.dtsi" + +&mdss_mdp { + qcom,mdss-pref-prim-intf = "dsi"; +}; + +&dsi_jdi_1080_vid { + qcom,mdss-dsi-bl-pmic-control-type = "bl_ctrl_pwm"; + qcom,mdss-dsi-bl-pmic-pwm-frequency = <100>; + qcom,mdss-dsi-bl-pmic-bank-select = <0>; + qcom,mdss-dsi-pwm-gpio = <&pm8916_mpps 4 0>; + qcom,cont-splash-enabled; +}; + +&dsi_nt35590_720_vid { + qcom,mdss-dsi-bl-pmic-control-type = "bl_ctrl_pwm"; + qcom,mdss-dsi-bl-pmic-pwm-frequency = <100>; + qcom,mdss-dsi-bl-pmic-bank-select = <0>; + qcom,mdss-dsi-pwm-gpio = <&pm8916_mpps 4 0>; + qcom,cont-splash-enabled; + qcom,esd-check-enabled; +}; + +&dsi_nt35590_720_cmd { + qcom,mdss-dsi-bl-pmic-control-type = "bl_ctrl_pwm"; + qcom,mdss-dsi-bl-pmic-pwm-frequency = <100>; + qcom,mdss-dsi-bl-pmic-bank-select = <0>; + qcom,mdss-dsi-pwm-gpio = <&pm8916_mpps 4 0>; + qcom,cont-splash-enabled; + qcom,esd-check-enabled; +}; + +&dsi_hx8394d_720_vid { + qcom,mdss-dsi-bl-pmic-control-type = "bl_ctrl_pwm"; + qcom,mdss-dsi-bl-pmic-pwm-frequency = <100>; + qcom,mdss-dsi-bl-pmic-bank-select = <0>; + qcom,mdss-dsi-pwm-gpio = <&pm8916_mpps 4 0>; + qcom,cont-splash-enabled; +}; + +&mdss_dsi_active { + pinmux { + function = "gpio"; + pins = "gpio97", "gpio25", "gpio98"; + }; + pinconf { + pins = "gpio97", "gpio25", "gpio98"; + }; +}; + +&mdss_dsi_suspend { + pinmux { + function = "gpio"; + pins = "gpio97", "gpio25", "gpio98"; + }; + pinconf { + pins = "gpio97", "gpio25", "gpio98"; + }; +}; + +&mdss_dsi0 { + qcom,dsi-pref-prim-pan = <&dsi_jdi_1080_vid>; + pinctrl-names = "mdss_default", "mdss_sleep"; + pinctrl-0 = <&mdss_dsi_active &mdss_te_active>; + pinctrl-1 = <&mdss_dsi_suspend &mdss_te_suspend>; + + qcom,platform-enable-gpio = <&msm_gpio 97 0>; + qcom,platform-reset-gpio = <&msm_gpio 25 0>; + qcom,platform-bklight-en-gpio = <&msm_gpio 98 0>; +}; + +/* CoreSight */ +&tpiu { + pinctrl-names = "seta-pctrl", "setb-pctrl", "sdcard", "trace", + "swduart", "swdtrc", "jtag", "spmi"; + /* Mictor */ + pinctrl-0 = <&tpiu_seta>; + pinctrl-1 = <&tpiu_setb>; + /* NIDnT */ + pinctrl-2 = <&qdsd_clk_sdcard &qdsd_cmd_sdcard + &qdsd_data0_sdcard &qdsd_data1_sdcard + &qdsd_data2_sdcard &qdsd_data3_sdcard>; + pinctrl-3 = <&qdsd_clk_trace &qdsd_cmd_trace + &qdsd_data0_trace &qdsd_data1_trace + &qdsd_data2_trace &qdsd_data3_trace>; + pinctrl-4 = <&qdsd_cmd_swduart &qdsd_data0_swduart + &qdsd_data1_swduart &qdsd_data2_swduart + &qdsd_data3_swduart>; + pinctrl-5 = <&qdsd_clk_swdtrc &qdsd_cmd_swdtrc + &qdsd_data0_swdtrc &qdsd_data1_swdtrc + &qdsd_data2_swdtrc &qdsd_data3_swdtrc>; + pinctrl-6 = <&qdsd_cmd_jtag &qdsd_data0_jtag + &qdsd_data1_jtag &qdsd_data2_jtag + &qdsd_data3_jtag>; + pinctrl-7 = <&qdsd_clk_spmi &qdsd_cmd_spmi + &qdsd_data0_spmi &qdsd_data3_spmi>; +}; + +&pm8916_chg { + status = "ok"; + qcom,charging-disabled; + qcom,disable-follow-on-reset; +}; + +&pm8916_bms { + status = "ok"; + qcom,disable-bms; +}; + +&spmi_bus { + qcom,pm8916@0 { + qcom,leds@a100 { + status = "okay"; + qcom,led_mpp_2 { + label = "mpp"; + linux,name = "button-backlight"; + linux,default-trigger = "none"; + qcom,default-state = "off"; + qcom,max-current = <40>; + qcom,current-setting = <5>; + qcom,id = <6>; + qcom,mode = "manual"; + qcom,source-sel = <1>; + qcom,mode-ctrl = <0x60>; + }; + }; + }; +}; + +&qcom_tzlog { + status = "okay"; +}; + +&qcom_rng { + status = "okay"; +}; + +&qcom_crypto { + status = "okay"; +}; + +&qcom_cedev { + status = "okay"; +}; + +&qcom_seecom { + status = "okay"; +}; + +&spmi_bus { + qcom,pm8916@1 { + qcom,vibrator@c000 { + status = "okay"; + qcom,vib-timeout-ms = <15000>; + qcom,vib-vtg-level-mV = <3100>; + }; + }; +}; -- cgit v1.2.3