| /* Copyright (c) 2012-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. |
| */ |
| |
| /include/ "skeleton.dtsi" |
| /include/ "msm8226-ion.dtsi" |
| /include/ "msm-gdsc.dtsi" |
| /include/ "msm8226-iommu.dtsi" |
| /include/ "msm8226-pm.dtsi" |
| /include/ "msm8226-smp2p.dtsi" |
| |
| / { |
| model = "Qualcomm MSM 8226"; |
| compatible = "qcom,msm8226"; |
| interrupt-parent = <&intc>; |
| |
| intc: interrupt-controller@f9000000 { |
| compatible = "qcom,msm-qgic2"; |
| interrupt-controller; |
| #interrupt-cells = <3>; |
| reg = <0xF9000000 0x1000>, |
| <0xF9002000 0x1000>; |
| }; |
| |
| msmgpio: gpio@fd510000 { |
| compatible = "qcom,msm-gpio"; |
| interrupt-controller; |
| #interrupt-cells = <2>; |
| reg = <0xfd510000 0x4000>; |
| gpio-controller; |
| #gpio-cells = <2>; |
| ngpio = <117>; |
| interrupts = <0 208 0>; |
| qcom,direct-connect-irqs = <8>; |
| }; |
| |
| timer { |
| compatible = "arm,armv7-timer"; |
| interrupts = <1 2 0 1 3 0>; |
| clock-frequency = <19200000>; |
| }; |
| |
| serial@f991f000 { |
| compatible = "qcom,msm-lsuart-v14"; |
| reg = <0xf991f000 0x1000>; |
| interrupts = <0 109 0>; |
| status = "disabled"; |
| }; |
| |
| serial@f995e000 { |
| compatible = "qcom,msm-lsuart-v14"; |
| reg = <0xf995e000 0x1000>; |
| interrupts = <0 114 0>; |
| status = "disabled"; |
| }; |
| |
| qcom,msm-imem@fe805000 { |
| compatible = "qcom,msm-imem"; |
| reg = <0xfe805000 0x1000>; /* Address and size of IMEM */ |
| }; |
| |
| qcom,sps@f9984000 { |
| compatible = "qcom,msm_sps"; |
| reg = <0xf9984000 0x15000>, |
| <0xf9999000 0xb000>; |
| interrupts = <0 94 0>; |
| }; |
| |
| usb@f9a55000 { |
| compatible = "qcom,hsusb-otg"; |
| reg = <0xf9a55000 0x400>; |
| interrupts = <0 134 0>, <0 140 0>; |
| interrupt-names = "core_irq", "async_irq"; |
| HSUSB_VDDCX-supply = <&pm8026_s1>; |
| HSUSB_1p8-supply = <&pm8026_l10>; |
| HSUSB_3p3-supply = <&pm8026_l20>; |
| |
| qcom,hsusb-otg-phy-type = <2>; |
| qcom,hsusb-otg-mode = <1>; |
| qcom,hsusb-otg-otg-control = <1>; |
| qcom,hsusb-otg-disable-reset; |
| }; |
| |
| android_usb@fe8050c8 { |
| compatible = "qcom,android-usb"; |
| reg = <0xfe8050c8 0xc8>; |
| }; |
| |
| wcd9xxx_intc: wcd9xxx-irq { |
| compatible = "qcom,wcd9xxx-irq"; |
| interrupt-controller; |
| #interrupt-cells = <1>; |
| interrupt-parent = <&msmgpio>; |
| interrupts = <68 0>; |
| interrupt-names = "cdc-int"; |
| }; |
| |
| slim@fe12f000 { |
| cell-index = <1>; |
| compatible = "qcom,slim-ngd"; |
| reg = <0xfe12f000 0x35000>, |
| <0xfe104000 0x20000>; |
| reg-names = "slimbus_physical", "slimbus_bam_physical"; |
| interrupts = <0 163 0>, <0 164 0>; |
| interrupt-names = "slimbus_irq", "slimbus_bam_irq"; |
| |
| tapan_codec { |
| compatible = "qcom,tapan-slim-pgd"; |
| elemental-addr = [00 01 E0 00 17 02]; |
| |
| 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>; |
| qcom,cdc-reset-gpio = <&msmgpio 72 0>; |
| |
| cdc-vdd-buck-supply = <&pm8026_s4>; |
| qcom,cdc-vdd-buck-voltage = <2100000 2100000>; |
| qcom,cdc-vdd-buck-current = <650000>; |
| |
| cdc-vdd-h-supply = <&pm8026_l6>; |
| qcom,cdc-vdd-h-voltage = <1800000 1800000>; |
| qcom,cdc-vdd-h-current = <25000>; |
| |
| cdc-vdd-px-supply = <&pm8026_l6>; |
| qcom,cdc-vdd-px-voltage = <1800000 1800000>; |
| qcom,cdc-vdd-px-current = <25000>; |
| |
| cdc-vdd-a-1p2v-supply = <&pm8026_l4>; |
| qcom,cdc-vdd-a-1p2v-voltage = <1200000 1200000>; |
| qcom,cdc-vdd-a-1p2v-current = <10000>; |
| |
| cdc-vdd-cx-supply = <&pm8026_l4>; |
| qcom,cdc-vdd-cx-voltage = <1200000 1200000>; |
| qcom,cdc-vdd-cx-current = <10000>; |
| |
| qcom,cdc-micbias-ldoh-v = <0x3>; |
| qcom,cdc-micbias-cfilt1-mv = <1800>; |
| qcom,cdc-micbias-cfilt2-mv = <1800>; |
| 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>; |
| qcom,cdc-slim-ifd = "tapan-slim-ifd"; |
| qcom,cdc-slim-ifd-elemental-addr = [00 00 E0 00 17 02]; |
| }; |
| }; |
| |
| qcom,msm-adsp-loader { |
| compatible = "qcom,adsp-loader"; |
| qcom,adsp-state = <0>; |
| }; |
| |
| sound { |
| compatible = "qcom,msm8226-audio-tapan"; |
| qcom,model = "msm8226-tapan-snd-card"; |
| |
| qcom,audio-routing = |
| "RX_BIAS", "MCLK", |
| "LDO_H", "MCLK", |
| "AMIC1", "MIC BIAS1 Internal1", |
| "MIC BIAS1 Internal1", "Handset Mic", |
| "AMIC2", "MIC BIAS2 External", |
| "MIC BIAS2 External", "Headset Mic", |
| "AMIC3", "MIC BIAS2 External", |
| "MIC BIAS2 External", "ANCRight Headset Mic", |
| "AMIC4", "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", |
| "DMIC5", "MIC BIAS4 External", |
| "MIC BIAS4 External", "Digital Mic5", |
| "DMIC6", "MIC BIAS4 External", |
| "MIC BIAS4 External", "Digital Mic6"; |
| qcom,tapan-mclk-clk-freq = <9600000>; |
| }; |
| |
| qcom,msm-pcm { |
| compatible = "qcom,msm-pcm-dsp"; |
| }; |
| |
| qcom,msm-pcm-routing { |
| compatible = "qcom,msm-pcm-routing"; |
| }; |
| |
| qcom,msm-pcm-lpa { |
| compatible = "qcom,msm-pcm-lpa"; |
| }; |
| |
| qcom,msm-compr-dsp { |
| compatible = "qcom,msm-compr-dsp"; |
| }; |
| |
| qcom,msm-voip-dsp { |
| compatible = "qcom,msm-voip-dsp"; |
| }; |
| |
| qcom,msm-pcm-voice { |
| compatible = "qcom,msm-pcm-voice"; |
| }; |
| |
| qcom,msm-stub-codec { |
| compatible = "qcom,msm-stub-codec"; |
| }; |
| |
| qcom,msm-dai-fe { |
| compatible = "qcom,msm-dai-fe"; |
| }; |
| |
| qcom,msm-pcm-afe { |
| compatible = "qcom,msm-pcm-afe"; |
| }; |
| |
| qcom,msm-dai-q6-hdmi { |
| compatible = "qcom,msm-dai-q6-hdmi"; |
| qcom,msm-dai-q6-dev-id = <8>; |
| }; |
| |
| qcom,msm-dai-q6 { |
| compatible = "qcom,msm-dai-q6"; |
| qcom,msm-dai-q6-sb-0-rx { |
| compatible = "qcom,msm-dai-q6-dev"; |
| qcom,msm-dai-q6-dev-id = <16384>; |
| }; |
| |
| qcom,msm-dai-q6-sb-0-tx { |
| compatible = "qcom,msm-dai-q6-dev"; |
| qcom,msm-dai-q6-dev-id = <16385>; |
| }; |
| |
| qcom,msm-dai-q6-sb-1-rx { |
| compatible = "qcom,msm-dai-q6-dev"; |
| qcom,msm-dai-q6-dev-id = <16386>; |
| }; |
| |
| qcom,msm-dai-q6-sb-1-tx { |
| compatible = "qcom,msm-dai-q6-dev"; |
| qcom,msm-dai-q6-dev-id = <16387>; |
| }; |
| |
| qcom,msm-dai-q6-sb-3-rx { |
| compatible = "qcom,msm-dai-q6-dev"; |
| qcom,msm-dai-q6-dev-id = <16390>; |
| }; |
| |
| qcom,msm-dai-q6-sb-3-tx { |
| compatible = "qcom,msm-dai-q6-dev"; |
| qcom,msm-dai-q6-dev-id = <16391>; |
| }; |
| |
| qcom,msm-dai-q6-sb-4-rx { |
| compatible = "qcom,msm-dai-q6-dev"; |
| qcom,msm-dai-q6-dev-id = <16392>; |
| }; |
| |
| qcom,msm-dai-q6-sb-4-tx { |
| compatible = "qcom,msm-dai-q6-dev"; |
| qcom,msm-dai-q6-dev-id = <16393>; |
| }; |
| |
| qcom,msm-dai-q6-bt-sco-rx { |
| compatible = "qcom,msm-dai-q6-dev"; |
| qcom,msm-dai-q6-dev-id = <12288>; |
| }; |
| |
| qcom,msm-dai-q6-bt-sco-tx { |
| compatible = "qcom,msm-dai-q6-dev"; |
| qcom,msm-dai-q6-dev-id = <12289>; |
| }; |
| |
| qcom,msm-dai-q6-int-fm-rx { |
| compatible = "qcom,msm-dai-q6-dev"; |
| qcom,msm-dai-q6-dev-id = <12292>; |
| }; |
| |
| qcom,msm-dai-q6-int-fm-tx { |
| compatible = "qcom,msm-dai-q6-dev"; |
| qcom,msm-dai-q6-dev-id = <12293>; |
| }; |
| |
| qcom,msm-dai-q6-be-afe-pcm-rx { |
| compatible = "qcom,msm-dai-q6-dev"; |
| qcom,msm-dai-q6-dev-id = <224>; |
| }; |
| |
| qcom,msm-dai-q6-be-afe-pcm-tx { |
| compatible = "qcom,msm-dai-q6-dev"; |
| qcom,msm-dai-q6-dev-id = <225>; |
| }; |
| |
| qcom,msm-dai-q6-afe-proxy-rx { |
| compatible = "qcom,msm-dai-q6-dev"; |
| qcom,msm-dai-q6-dev-id = <241>; |
| }; |
| |
| qcom,msm-dai-q6-afe-proxy-tx { |
| compatible = "qcom,msm-dai-q6-dev"; |
| qcom,msm-dai-q6-dev-id = <240>; |
| }; |
| }; |
| |
| qcom,msm-pcm-hostless { |
| compatible = "qcom,msm-pcm-hostless"; |
| }; |
| |
| qcom,wdt@f9017000 { |
| compatible = "qcom,msm-watchdog"; |
| reg = <0xf9017000 0x1000>; |
| interrupts = <0 3 0>, <0 4 0>; |
| qcom,bark-time = <11000>; |
| qcom,pet-time = <10000>; |
| qcom,ipi-ping; |
| }; |
| |
| qcom,smem@fa00000 { |
| compatible = "qcom,smem"; |
| reg = <0xfa00000 0x200000>, |
| <0xfa006000 0x1000>, |
| <0xfc428000 0x4000>; |
| reg-names = "smem", "irq-reg-base", "aux-mem1"; |
| |
| qcom,smd-modem { |
| compatible = "qcom,smd"; |
| qcom,smd-edge = <0>; |
| qcom,smd-irq-offset = <0x8>; |
| qcom,smd-irq-bitmask = <0x1000>; |
| qcom,pil-string = "modem"; |
| interrupts = <0 25 1>; |
| }; |
| |
| qcom,smsm-modem { |
| compatible = "qcom,smsm"; |
| qcom,smsm-edge = <0>; |
| qcom,smsm-irq-offset = <0x8>; |
| qcom,smsm-irq-bitmask = <0x2000>; |
| interrupts = <0 26 1>; |
| }; |
| |
| qcom,smd-adsp { |
| compatible = "qcom,smd"; |
| qcom,smd-edge = <1>; |
| qcom,smd-irq-offset = <0x8>; |
| qcom,smd-irq-bitmask = <0x100>; |
| qcom,pil-string = "adsp"; |
| interrupts = <0 156 1>; |
| }; |
| |
| qcom,smsm-adsp { |
| compatible = "qcom,smsm"; |
| qcom,smsm-edge = <1>; |
| qcom,smsm-irq-offset = <0x8>; |
| qcom,smsm-irq-bitmask = <0x200>; |
| interrupts = <0 157 1>; |
| }; |
| |
| qcom,smd-wcnss { |
| compatible = "qcom,smd"; |
| qcom,smd-edge = <6>; |
| qcom,smd-irq-offset = <0x8>; |
| qcom,smd-irq-bitmask = <0x20000>; |
| qcom,pil-string = "wcnss"; |
| interrupts = <0 142 1>; |
| }; |
| |
| qcom,smsm-wcnss { |
| compatible = "qcom,smsm"; |
| qcom,smsm-edge = <6>; |
| qcom,smsm-irq-offset = <0x8>; |
| qcom,smsm-irq-bitmask = <0x80000>; |
| interrupts = <0 144 1>; |
| }; |
| |
| qcom,smd-rpm { |
| compatible = "qcom,smd"; |
| qcom,smd-edge = <15>; |
| qcom,smd-irq-offset = <0x8>; |
| qcom,smd-irq-bitmask = <0x1>; |
| interrupts = <0 168 1>; |
| qcom,irq-no-suspend; |
| }; |
| }; |
| |
| rpm_bus: qcom,rpm-smd { |
| compatible = "qcom,rpm-smd"; |
| rpm-channel-name = "rpm_requests"; |
| rpm-channel-type = <15>; /* SMD_APPS_RPM */ |
| rpm-standalone; |
| }; |
| |
| sdcc1: qcom,sdcc@f9824000 { |
| cell-index = <1>; /* SDC1 eMMC slot */ |
| compatible = "qcom,msm-sdcc"; |
| |
| reg = <0xf9824000 0x800>, |
| <0xf9824800 0x100>, |
| <0xf9804000 0x7000>; |
| reg-names = "core_mem", "dml_mem", "bam_mem"; |
| interrupts = <0 123 0>, <0 137 0>; |
| interrupt-names = "core_irq", "bam_irq"; |
| |
| qcom,bus-width = <8>; |
| status = "disabled"; |
| }; |
| |
| sdcc2: qcom,sdcc@f98a4000 { |
| cell-index = <2>; /* SDC2 SD card slot */ |
| compatible = "qcom,msm-sdcc"; |
| |
| reg = <0xf98a4000 0x800>, |
| <0xf98a4800 0x100>, |
| <0xf9884000 0x7000>; |
| reg-names = "core_mem", "dml_mem", "bam_mem"; |
| interrupts = <0 125 0>, <0 220 0>; |
| interrupt-names = "core_irq", "bam_irq"; |
| |
| qcom,bus-width = <4>; |
| status = "disabled"; |
| }; |
| |
| spmi_bus: qcom,spmi@fc4c0000 { |
| cell-index = <0>; |
| compatible = "qcom,spmi-pmic-arb"; |
| reg-names = "core", "intr", "cnfg"; |
| reg = <0xfc4cf000 0x1000>, |
| <0Xfc4cb000 0x1000>, |
| <0Xfc4ca000 0x1000>; |
| /* 190,ee0_krait_hlos_spmi_periph_irq */ |
| /* 187,channel_0_krait_hlos_trans_done_irq */ |
| interrupts = <0 190 0>, <0 187 0>; |
| qcom,not-wakeup; |
| qcom,pmic-arb-ee = <0>; |
| qcom,pmic-arb-channel = <0>; |
| }; |
| |
| i2c@f9926000 { /* BLSP-1 QUP-4 */ |
| cell-index = <0>; |
| compatible = "qcom,i2c-qup"; |
| reg = <0xf9926000 0x1000>; |
| #address-cells = <1>; |
| #size-cells = <0>; |
| reg-names = "qup_phys_addr"; |
| interrupts = <0 98 0>; |
| interrupt-names = "qup_err_intr"; |
| qcom,i2c-bus-freq = <100000>; |
| }; |
| |
| qcom,acpuclk@f9011050 { |
| compatible = "qcom,acpuclk-a7"; |
| reg = <0xf9011050 0x8>; |
| reg-names = "rcg_base"; |
| a7_cpu-supply = <&pm8026_s2>; |
| a7_mem-supply = <&pm8026_l3>; |
| }; |
| |
| qcom,ocmem@fdd00000 { |
| compatible = "qcom,msm-ocmem"; |
| reg = <0xfdd00000 0x2000>, |
| <0xfdd02000 0x2000>, |
| <0xfe039000 0x400>, |
| <0xfec00000 0x180000>; |
| reg-names = "ocmem_ctrl_physical", "dm_ctrl_physical", "br_ctrl_physical", "ocmem_physical"; |
| interrupts = <0 76 0 0 77 0>; |
| interrupt-names = "ocmem_irq", "dm_irq"; |
| qcom,ocmem-num-regions = <0x1>; |
| qcom,ocmem-num-macros = <0x2>; |
| qcom,resource-type = <0x706d636f>; |
| #address-cells = <1>; |
| #size-cells = <1>; |
| ranges = <0x0 0xfec00000 0x180000>; |
| |
| partition@0 { |
| reg = <0x0 0x100000>; |
| qcom,ocmem-part-name = "graphics"; |
| qcom,ocmem-part-min = <0x80000>; |
| }; |
| }; |
| |
| qcom,venus@fdce0000 { |
| compatible = "qcom,pil-venus"; |
| reg = <0xfdce0000 0x4000>, |
| <0xfdc80000 0x400>; |
| reg-names = "wrapper_base", "vbif_base"; |
| vdd-supply = <&gdsc_venus>; |
| |
| qcom,firmware-name = "venus"; |
| }; |
| |
| qcom,pronto@fb21b000 { |
| compatible = "qcom,pil-pronto"; |
| reg = <0xfb21b000 0x3000>, |
| <0xfc401700 0x4>, |
| <0xfd485300 0xc>; |
| reg-names = "pmu_base", "clk_base", "halt_base"; |
| interrupts = <0 149 1>; |
| vdd_pronto_pll-supply = <&pm8026_l8>; |
| |
| qcom,firmware-name = "wcnss"; |
| }; |
| |
| qcom,lpass@fe200000 { |
| compatible = "qcom,pil-q6v5-lpass"; |
| reg = <0xfe200000 0x00100>, |
| <0xfd485100 0x00010>; |
| reg-names = "qdsp6_base", "halt_base"; |
| interrupts = <0 162 1>; |
| |
| qcom,firmware-name = "adsp"; |
| }; |
| |
| qcom,msm-mem-hole { |
| compatible = "qcom,msm-mem-hole"; |
| qcom,memblock-remove = <0x8100000 0x7e00000>; /* Address and Size of Hole */ |
| }; |
| }; |
| |
| &gdsc_venus { |
| status = "ok"; |
| }; |
| |
| &gdsc_mdss { |
| status = "ok"; |
| }; |
| |
| &gdsc_jpeg { |
| status = "ok"; |
| }; |
| |
| &gdsc_vfe { |
| status = "ok"; |
| }; |
| |
| &gdsc_oxili_cx { |
| status = "ok"; |
| }; |
| |
| &gdsc_usb_hsic { |
| status = "ok"; |
| }; |
| |
| /include/ "msm8226-regulator.dtsi" |
| /include/ "msm-pm8026.dtsi" |