/* Copyright (c) 2012-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/ "skeleton.dtsi"

/ {
	model = "Qualcomm MSM 8226";
	compatible = "qcom,msm8226";
	interrupt-parent = <&intc>;

	aliases {
		spi0 = &spi_0;
		sdhc1 = &sdhc_1; /* SDC1 eMMC slot */
		sdhc2 = &sdhc_2; /* SDC2 SD card slot */
		sdhc3 = &sdhc_3; /* SDC3 SDIO slot */
	};

	memory {
		secure_mem: secure_region {
			linux,contiguous-region;
			reg = <0 0x6D00000>;
			label = "secure_mem";
		};

		adsp_mem: adsp_region {
			linux,contiguous-region;
			reg = <0 0x2a00000>;
			label = "adsp_mem";
		};

		qsecom_mem: qsecom_region {
			linux,contiguous-region;
			reg = <0 0xd00000>;
			label = "qsecom_mem";
		};
	};

	soc: soc { };
};

/include/ "msm8226-ion.dtsi"
/include/ "msm8226-camera.dtsi"
/include/ "msm-gdsc.dtsi"
/include/ "msm8226-iommu.dtsi"
/include/ "msm8226-smp2p.dtsi"
/include/ "msm8226-gpu.dtsi"
/include/ "msm8226-bus.dtsi"
/include/ "msm8226-mdss.dtsi"
/include/ "msm8226-coresight.dtsi"
/include/ "msm8226-iommu-domains.dtsi"
/include/ "msm-rdbg.dtsi"

&soc {
	#address-cells = <1>;
	#size-cells = <1>;
	ranges;

	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>;
	};

	qcom,mpm2-sleep-counter@fc4a3000 {
		compatible = "qcom,mpm2-sleep-counter";
		reg = <0xfc4a3000 0x1000>;
		clock-frequency = <32768>;
	};

	timer {
		compatible = "arm,armv7-timer";
		interrupts = <1 2 0 1 3 0>;
		clock-frequency = <19200000>;
	};

	timer@f9020000 {
		#address-cells = <1>;
		#size-cells = <1>;
		ranges;
		compatible = "arm,armv7-timer-mem";
		reg = <0xf9020000 0x1000>;
		clock-frequency = <19200000>;

		frame@f9021000 {
			frame-number = <0>;
			interrupts = <0 8 0x4>,
				     <0 7 0x4>;
			reg = <0xf9021000 0x1000>,
			      <0xf9022000 0x1000>;
		};

		frame@f9023000 {
			frame-number = <1>;
			interrupts = <0 9 0x4>;
			reg = <0xf9023000 0x1000>;
			status = "disabled";
		};

		frame@f9024000 {
			frame-number = <2>;
			interrupts = <0 10 0x4>;
			reg = <0xf9024000 0x1000>;
			status = "disabled";
		};

		frame@f9025000 {
			frame-number = <3>;
			interrupts = <0 11 0x4>;
			reg = <0xf9025000 0x1000>;
			status = "disabled";
		};

		frame@f9026000 {
			frame-number = <4>;
			interrupts = <0 12 0x4>;
			reg = <0xf9026000 0x1000>;
			status = "disabled";
		};

		frame@f9027000 {
			frame-number = <5>;
			interrupts = <0 13 0x4>;
			reg = <0xf9027000 0x1000>;
			status = "disabled";
		};

		frame@f9028000 {
			frame-number = <6>;
			interrupts = <0 14 0x4>;
			reg = <0xf9028000 0x1000>;
			status = "disabled";
		};
	};

	qcom,vidc@fdc00000 {
		compatible = "qcom,msm-vidc";
		reg = <0xfdc00000 0xff000>;
		interrupts = <0 44 0>;
		vdd-supply = <&gdsc_venus>;
		qcom,load-freq-tbl = <352800 160000000>,
			<244800 133330000>,
			<108000  66700000>;
		qcom,hfi = "venus";
		qcom,bus-ports = <1>;
		qcom,reg-presets = <0xE0024 0x0>,
			<0x80124 0x3>,
			<0xE0020 0x5555556>,
			<0x800B0 0x10101001>,
			<0x800B4 0x00101010>,
			<0x800C0 0x1010100f>,
			<0x800C4 0x00101010>,
			<0x800D0 0x00000010>,
			<0x800D4 0x00000010>,
			<0x800D8 0x00000707>;
		qcom,enc-ddr-ab-ib = <0 0>,
			<129000 142000>,
			<384000 422000>,
			<866000 953000>;
		qcom,dec-ddr-ab-ib = <0 0>,
			<103000 134000>,
			<268000 348000>,
			<505000 657000>;
		qcom,buffer-type-tz-usage-table = <0x1 0x1>,
			<0x6 0x2>,
			<0x7C0 0x3>;
		qcom,max-hw-load = <352800>; /* 720p @ 30 + 1080p @ 30 */
		qcom,vidc-iommu-domains {
			qcom,domain-ns {
				qcom,vidc-domain-phandle = <&venus_domain_ns>;
				qcom,vidc-partition-buffer-types = <0x7ff>,
							<0x800>;
			};

			qcom,domain-cp {
				qcom,vidc-domain-phandle = <&venus_domain_cp>;
				qcom,vidc-partition-buffer-types = <0x6>,
							<0x7c1>;
			};
		};
	};

	qcom,vidc {
		compatible = "qcom,msm-vidc";
		qcom,hfi = "q6";
		qcom,max-hw-load = <108000>; /* 720p @ 30 * 1  */
	};

	qcom,wfd {
		compatible = "qcom,msm-wfd";
	};

	serial@f991f000 {
		compatible = "qcom,msm-lsuart-v14";
		reg = <0xf991f000 0x1000>;
		interrupts = <0 109 0>;
		status = "disabled";

		qcom,msm-bus,name = "blsp1_uart2";
		qcom,msm-bus,num-cases = <2>;
		qcom,msm-bus,num-paths = <1>;
		qcom,msm-bus,vectors-KBps =
				<86 512 0 0>,
				<86 512 500 800>;
	};

	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>;
	};

	qcom,usbbam@f9a44000 {
		compatible = "qcom,usb-bam-msm";
		reg = <0xf9a44000 0x11000>;
		reg-names = "hsusb";
		interrupts = <0 135 0>;
		interrupt-names = "hsusb";
		qcom,usb-bam-num-pipes = <16>;
		qcom,usb-bam-fifo-baseaddr = <0xfe803000>;
		qcom,ignore-core-reset-ack;
		qcom,disable-clk-gating;

		qcom,pipe0 {
			label = "hsusb-qdss-in-0";
			qcom,usb-bam-mem-type = <3>;
			qcom,bam-type = <1>;
			qcom,dir = <1>;
			qcom,pipe-num = <0>;
			qcom,peer-bam = <1>;
			qcom,src-bam-physical-address = <0xfc37c000>;
			qcom,src-bam-pipe-index = <0>;
			qcom,dst-bam-physical-address = <0xf9a44000>;
			qcom,dst-bam-pipe-index = <2>;
			qcom,data-fifo-offset = <0x0>;
			qcom,data-fifo-size = <0x600>;
			qcom,descriptor-fifo-offset = <0x600>;
			qcom,descriptor-fifo-size = <0x200>;
		};
	};

        usb_otg: usb@f9a55000 {
		compatible = "qcom,hsusb-otg";
		reg = <0xf9a55000 0x400>;
		interrupts = <0 134 0>, <0 140 0>;
		interrupt-names = "core_irq", "async_irq";
		hsusb_vdd_dig-supply = <&pm8226_s1_corner>;
		HSUSB_1p8-supply = <&pm8226_l10>;
		HSUSB_3p3-supply = <&pm8226_l20>;
		qcom,vdd-voltage-level = <1 5 7>;

		qcom,hsusb-otg-phy-init-seq =
			<0x44 0x80 0x68 0x81 0x24 0x82 0x13 0x83 0xffffffff>;
		qcom,hsusb-otg-phy-type = <2>;
		qcom,hsusb-otg-mode = <1>;
		qcom,hsusb-otg-otg-control = <2>;
		qcom,hsusb-otg-disable-reset;
		qcom,dp-manual-pullup;
		qcom,usbin-vadc = <&pm8226_vadc>;

		qcom,msm-bus,name = "usb";
		qcom,msm-bus,num-cases = <3>;
		qcom,msm-bus,num-paths = <1>;
		qcom,msm-bus,vectors-KBps =
				<87 512 0 0>,
				<87 512 60000 960000>,
				<87 512 6000  6000>;
	};

	android_usb: android_usb@fe8050c8 {
		compatible = "qcom,android-usb";
		reg = <0xfe8050c8 0xc8>;
		qcom,android-usb-swfi-latency = <1>;
		qcom,streaming-func = "rndis";
	};

	hsic_host: hsic@f9a00000 {
		status = "disabled";
		compatible = "qcom,hsic-host";
		reg = <0xf9a00000 0x400>;
		#address-cells = <0>;
		interrupt-parent = <&hsic_host>;
		interrupts = <0 1 2>;
		#interrupt-cells = <1>;
		interrupt-map-mask = <0xffffffff>;
		interrupt-map = <0 &intc 0 136 0
			1 &intc 0 148 0
			2 &msmgpio 115 0x8>;
		interrupt-names = "core_irq", "async_irq", "wakeup";
		hsic_vdd_dig-supply = <&pm8226_s1_corner>;
		HSIC_GDSC-supply = <&gdsc_usb_hsic>;
		hsic,strobe-gpio = <&msmgpio 115 0x00>;
		hsic,data-gpio = <&msmgpio 116 0x00>;
		hsic,ignore-cal-pad-config;
		hsic,strobe-pad-offset = <0x2050>;
		hsic,data-pad-offset = <0x2054>;
		qcom,phy-susp-sof-workaround;
		hsic,vdd-voltage-level = <1 5 7>;

		qcom,msm-bus,name = "hsic";
		qcom,msm-bus,num-cases = <2>;
		qcom,msm-bus,num-paths = <1>;
		qcom,msm-bus,vectors-KBps =
				<85 512 0 0>,
				<85 512 40000 160000>;
	};

	wcd9xxx_intc: wcd9xxx-irq {
		compatible = "qcom,wcd9xxx-irq";
		interrupt-controller;
		#interrupt-cells = <1>;
		interrupt-parent = <&msmgpio>;
		interrupts = <68 0>;
		interrupt-names = "cdc-int";
	};

	slim_msm: 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 = <&pm8226_s4>;
			qcom,cdc-vdd-buck-voltage = <1800000 2150000>;
			qcom,cdc-vdd-buck-current = <650000>;

			cdc-vdd-h-supply = <&pm8226_l6>;
			qcom,cdc-vdd-h-voltage = <1800000 1800000>;
			qcom,cdc-vdd-h-current = <25000>;

			cdc-vdd-px-supply = <&pm8226_l6>;
			qcom,cdc-vdd-px-voltage = <1800000 1800000>;
			qcom,cdc-vdd-px-current = <25000>;

			cdc-vdd-cx-supply = <&pm8226_l4>;
			qcom,cdc-vdd-cx-voltage = <1200000 1200000>;
			qcom,cdc-vdd-cx-current = <2000>;

			cdc-vdd-buckhelper-supply = <&pm8226_l25>;
			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>;
			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,tapan-mclk-clk-freq = <9600000>;
		qcom,prim-auxpcm-gpio-clk  = <&msmgpio 63 0>;
		qcom,prim-auxpcm-gpio-sync = <&msmgpio 64 0>;
		qcom,prim-auxpcm-gpio-din  = <&msmgpio 65 0>;
		qcom,prim-auxpcm-gpio-dout = <&msmgpio 66 0>;
		qcom,prim-auxpcm-gpio-set = "prim-gpio-prim";
	};

	sound-9302 {
		compatible = "qcom,msm8226-audio-tapan";
		qcom,model = "msm8226-tapan9302-snd-card";
		qcom,tapan-mclk-clk-freq = <9600000>;
		qcom,prim-auxpcm-gpio-clk  = <&msmgpio 63 0>;
		qcom,prim-auxpcm-gpio-sync = <&msmgpio 64 0>;
		qcom,prim-auxpcm-gpio-din  = <&msmgpio 65 0>;
		qcom,prim-auxpcm-gpio-dout = <&msmgpio 66 0>;
		qcom,prim-auxpcm-gpio-set = "prim-gpio-prim";
		qcom,tapan-codec-9302;
	};

	qti,msm-pcm {
		compatible = "qti,msm-pcm-dsp";
		qti,msm-pcm-dsp-id = <0>;
	};

	qcom,msm-pcm-routing {
		compatible = "qcom,msm-pcm-routing";
	};

	qti,msm-pcm-low-latency {
		compatible = "qti,msm-pcm-dsp";
		qti,msm-pcm-dsp-id = <1>;
		qti,msm-pcm-low-latency;
		qti,latency-level = "regular";
	};

	qcom,msm-pcm-lpa {
		compatible = "qcom,msm-pcm-lpa";
	};

	qcom,msm-compr-dsp {
		compatible = "qcom,msm-compr-dsp";
	};

	qcom,msm-compress-dsp {
		compatible = "qcom,msm-compress-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-lsm-client {
		compatible = "qcom,msm-lsm-client";
	};

	qti,msm-pcm-loopback {
		compatible = "qti,msm-pcm-loopback";
	};

	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-sb-5-tx {
                        compatible = "qcom,msm-dai-q6-dev";
                        qcom,msm-dai-q6-dev-id = <16395>;
                };

		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-dai-q6-incall-record-rx {
                        compatible = "qcom,msm-dai-q6-dev";
                        qcom,msm-dai-q6-dev-id = <32771>;
                };

                qcom,msm-dai-q6-incall-record-tx {
                        compatible = "qcom,msm-dai-q6-dev";
                        qcom,msm-dai-q6-dev-id = <32772>;
                };

                qcom,msm-dai-q6-incall-music-rx {
                        compatible = "qcom,msm-dai-q6-dev";
                        qcom,msm-dai-q6-dev-id = <32773>;
                };

                qcom,msm-dai-q6-incall-music-2-rx {
                        compatible = "qcom,msm-dai-q6-dev";
                        qcom,msm-dai-q6-dev-id = <32770>;
                };
	};

	qcom,msm-pcm-hostless {
		compatible = "qcom,msm-pcm-hostless";
	};

	qcom,msm-pri-auxpcm {
		compatible = "qcom,msm-auxpcm-dev";
		qcom,msm-cpudai-auxpcm-mode = <0>, <0>;
		qcom,msm-cpudai-auxpcm-sync = <1>, <1>;
		qcom,msm-cpudai-auxpcm-frame = <5>, <4>;
		qcom,msm-cpudai-auxpcm-quant = <2>, <2>;
		qcom,msm-cpudai-auxpcm-slot = <1>, <1>;
		qcom,msm-cpudai-auxpcm-data = <0>, <0>;
		qcom,msm-cpudai-auxpcm-pcm-clk-rate = <2048000>, <2048000>;
		qcom,msm-auxpcm-interface = "primary";
	};

	qcom,wcnss-wlan@fb000000 {
		compatible = "qcom,wcnss_wlan";
		reg = <0xfb000000 0x280000>,
			<0xf9011008 0x04>;
		reg-names = "wcnss_mmio", "wcnss_fiq";
		interrupts = <0 145 0 0 146 0>;
		interrupt-names = "wcnss_wlantx_irq", "wcnss_wlanrx_irq";

		qcom,pronto-vddmx-supply = <&pm8226_l3>;
		qcom,pronto-vddcx-supply = <&pm8226_s1>;
		qcom,pronto-vddpx-supply = <&pm8226_l6>;
		qcom,iris-vddxo-supply = <&pm8226_l10>;
		qcom,iris-vddrfa-supply = <&pm8226_l24>;
		qcom,iris-vddpa-supply = <&pm8226_l16>;
		qcom,iris-vdddig-supply = <&pm8226_l24>;

		gpios = <&msmgpio 40 0>, <&msmgpio 41 0>, <&msmgpio 42 0>, <&msmgpio 43 0>, <&msmgpio 44 0>;
		qcom,has-pronto-hw;
		qcom,has-autodetect-xo;
		qcom,wcnss-adc_tm = <&pm8226_adc_tm>;
	};

	qcom,msm-adsp-sensors {
		compatible = "qcom,msm-adsp-sensors";
		qcom,src-id = <11>;
		qcom,dst-id = <604>;
		qcom,ab = <32505856>;
		qcom,ib = <32505856>;
	};

	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 0x100000>,
			<0xf9011000 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 */
	};

	qcom,bcl {
		compatible = "qcom,bcl";
	};

	rmtfs_sharedmem {
		compatible = "qcom,sharedmem-uio";
		reg = <0x0fd80000 0x00180000>;
		reg-names = "rmtfs";
	};

	dsp_sharedmem {
		compatible = "qcom,sharedmem-uio";
		reg = <0x0fd60000 0x00020000>;
		reg-names = "rfsa_dsp";
	};

	mdm_sharedmem {
		compatible = "qcom,sharedmem-uio";
		reg = <0x0fd60000 0x00020000>;
		reg-names = "rfsa_mdm";
	};

	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>;

		qcom,msm-bus,name = "sdcc1";
		qcom,msm-bus,num-cases = <8>;
		qcom,msm-bus,num-paths = <1>;
		qcom,msm-bus,vectors-KBps = <78 512 0 0>, /* No vote */
				<78 512 1600 3200>,    /* 400 KB/s*/
				<78 512 80000 160000>, /* 20 MB/s */
				<78 512 100000 200000>, /* 25 MB/s */
				<78 512 200000 400000>, /* 50 MB/s */
				<78 512 400000 800000>, /* 100 MB/s */
				<78 512 400000 800000>, /* 200 MB/s */
				<78 512 2048000 4096000>; /* Max. bandwidth */
		qcom,bus-bw-vectors-bps = <0 400000 20000000 25000000 50000000
						100000000 200000000 4294967295>;

		status = "disabled";
	};

	sdhc_1: sdhci@f9824900 {
		compatible = "qcom,sdhci-msm";
		reg = <0xf9824900 0x11c>, <0xf9824000 0x800>;
		reg-names = "hc_mem", "core_mem";

		interrupts = <0 123 0>, <0 138 0>;
		interrupt-names = "hc_irq", "pwr_irq";

		qcom,bus-width = <8>;

		qcom,msm-bus,name = "sdhc1";
		qcom,msm-bus,num-cases = <8>;
		qcom,msm-bus,num-paths = <1>;
		qcom,msm-bus,vectors-KBps = <78 512 0 0>, /* No vote */
				<78 512 1600 3200>,    /* 400 KB/s*/
				<78 512 80000 160000>, /* 20 MB/s */
				<78 512 100000 200000>, /* 25 MB/s */
				<78 512 200000 400000>, /* 50 MB/s */
				<78 512 400000 800000>, /* 100 MB/s */
				<78 512 400000 800000>, /* 200 MB/s */
				<78 512 2048000 4096000>; /* Max. bandwidth */
		qcom,bus-bw-vectors-bps = <0 400000 20000000 25000000 50000000
						100000000 200000000 4294967295>;

		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>;

		qcom,msm-bus,name = "sdcc2";
		qcom,msm-bus,num-cases = <8>;
		qcom,msm-bus,num-paths = <1>;
		qcom,msm-bus,vectors-KBps = <81 512 0 0>, /* No vote */
				<81 512 1600 3200>,    /* 400 KB/s*/
				<81 512 80000 160000>, /* 20 MB/s */
				<81 512 100000 200000>, /* 25 MB/s */
				<81 512 200000 400000>, /* 50 MB/s */
				<81 512 400000 800000>, /* 100 MB/s */
				<81 512 400000 800000>, /* 200 MB/s */
				<81 512 2048000 4096000>; /* Max. bandwidth */
		qcom,bus-bw-vectors-bps = <0 400000 20000000 25000000 50000000
						100000000 200000000 4294967295>;

		status = "disabled";
	};

	sdhc_2: sdhci@f98a4900 {
		compatible = "qcom,sdhci-msm";
		reg = <0xf98a4900 0x11c>, <0xf98a4000 0x800>;
		reg-names = "hc_mem", "core_mem";

		interrupts = <0 125 0>, <0 221 0>;
		interrupt-names = "hc_irq", "pwr_irq";

		qcom,bus-width = <4>;

		qcom,msm-bus,name = "sdhc2";
		qcom,msm-bus,num-cases = <8>;
		qcom,msm-bus,num-paths = <1>;
		qcom,msm-bus,vectors-KBps = <81 512 0 0>, /* No vote */
				<81 512 1600 3200>,    /* 400 KB/s*/
				<81 512 80000 160000>, /* 20 MB/s */
				<81 512 100000 200000>, /* 25 MB/s */
				<81 512 200000 400000>, /* 50 MB/s */
				<81 512 400000 800000>, /* 100 MB/s */
				<81 512 400000 800000>, /* 200 MB/s */
				<81 512 2048000 4096000>; /* Max. bandwidth */
		qcom,bus-bw-vectors-bps = <0 400000 20000000 25000000 50000000
						100000000 200000000 4294967295>;

		status = "disabled";
	};

	sdcc3: qcom,sdcc@f9864000 {
		cell-index = <3>;
		compatible = "qcom,msm-sdcc";
		reg = <0xf9864000 0x800>,
			<0xf9864800 0x100>,
			<0xf9844000 0x7000>;
		reg-names = "core_mem", "dml_mem", "bam_mem";

		qcom,bus-width = <4>;
		gpios = <&msmgpio 44 0>, /* CLK */
			<&msmgpio 43 0>, /* CMD */
			<&msmgpio 42 0>, /* DATA0 */
			<&msmgpio 41 0>, /* DATA1 */
			<&msmgpio 40 0>, /* DATA2 */
			<&msmgpio 39 0>; /* DATA3 */
		qcom,gpio-names = "CLK", "CMD", "DAT0", "DAT1", "DAT2", "DAT3";

		qcom,clk-rates = <400000 20000000 25000000 50000000 100000000>;

		qcom,msm-bus,name = "sdcc3";
		qcom,msm-bus,num-cases = <8>;
		qcom,msm-bus,num-paths = <1>;
		qcom,msm-bus,vectors-KBps = <79 512 0 0>, /* No vote */
				<79 512 1600 3200>,    /* 400 KB/s*/
				<79 512 80000 160000>, /* 20 MB/s */
				<79 512 100000 200000>, /* 25 MB/s */
				<79 512 200000 400000>, /* 50 MB/s */
				<79 512 400000 800000>, /* 100 MB/s */
				<79 512 400000 800000>, /* 200 MB/s */
				<79 512 2048000 4096000>; /* Max. bandwidth */
		qcom,bus-bw-vectors-bps = <0 400000 20000000 25000000 50000000
						100000000 200000000 4294967295>;

		#address-cells = <0>;
		interrupt-parent = <&sdcc3>;
		interrupts = <0 1 2>;
		#interrupt-cells = <1>;
		interrupt-map-mask = <0xffffffff>;
		interrupt-map = <0 &intc 0 127 0
			      1 &intc 0 223 0
			      2 &msmgpio 41 0x8>;
		interrupt-names = "core_irq", "bam_irq", "sdiowakeup_irq";

		status = "disabled";
	};

	sdhc_3: sdhci@f9864900 {
		compatible = "qcom,sdhci-msm";
		reg = <0xf9864900 0x11c>, <0xf9864000 0x800>;
		reg-names = "hc_mem", "core_mem";

		qcom,bus-width = <4>;
		gpios = <&msmgpio 44 0>, /* CLK */
			<&msmgpio 43 0>, /* CMD */
			<&msmgpio 42 0>, /* DATA0 */
			<&msmgpio 41 0>, /* DATA1 */
			<&msmgpio 40 0>, /* DATA2 */
			<&msmgpio 39 0>; /* DATA3 */
		qcom,gpio-names = "CLK", "CMD", "DAT0", "DAT1", "DAT2", "DAT3";

		qcom,clk-rates = <400000 20000000 25000000 50000000 100000000>;

		qcom,msm-bus,name = "sdhc3";
		qcom,msm-bus,num-cases = <8>;
		qcom,msm-bus,num-paths = <1>;
		qcom,msm-bus,vectors-KBps = <79 512 0 0>, /* No vote */
				<79 512 1600 3200>,    /* 400 KB/s*/
				<79 512 80000 160000>, /* 20 MB/s */
				<79 512 100000 200000>, /* 25 MB/s */
				<79 512 200000 400000>, /* 50 MB/s */
				<79 512 400000 800000>, /* 100 MB/s */
				<79 512 400000 800000>, /* 200 MB/s */
				<79 512 2048000 4096000>; /* Max. bandwidth */
		qcom,bus-bw-vectors-bps = <0 400000 20000000 25000000 50000000
						100000000 200000000 4294967295>;

		#address-cells = <0>;
		interrupt-parent = <&sdhc_3>;
		interrupts = <0 1 2>;
		#interrupt-cells = <1>;
		interrupt-map-mask = <0xffffffff>;
		interrupt-map = <0 &intc 0 127 0
			      1 &intc 0 224 0
			      2 &msmgpio 41 0x8>;
		interrupt-names = "hc_irq", "pwr_irq", "sdiowakeup_irq";

		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,pmic-arb-ee = <0>;
		qcom,pmic-arb-channel = <0>;
	};

	i2c@f9925000 { /* BLSP-1 QUP-3 */
		cell-index = <2>;
		compatible = "qcom,i2c-qup";
		reg = <0xf9925000 0x1000>;
		#address-cells = <1>;
		#size-cells = <0>;
		reg-names = "qup_phys_addr";
		interrupts = <0 97 0>;
		interrupt-names = "qup_err_intr";
		qcom,i2c-bus-freq = <400000>;
		qcom,i2c-src-freq = <19200000>;
		qcom,sda-gpio = <&msmgpio 10 0>;
		qcom,scl-gpio = <&msmgpio 11 0>;
		qcom,master-id = <86>;
	};
	i2c_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,i2c-src-freq = <19200000>;
		qcom,master-id = <86>;
	};

	i2c@f9927000 { /* BLSP1 QUP5 */
		cell-index = <5>;
		compatible = "qcom,i2c-qup";
		#address-cells = <1>;
		#size-cells = <0>;
		reg-names = "qup_phys_addr";
		reg = <0xf9927000 0x1000>;
		interrupt-names = "qup_err_intr";
		interrupts = <0 99 0>;
		qcom,i2c-bus-freq = <384000>;
		qcom,i2c-src-freq = <19200000>;
		qcom,sda-gpio = <&msmgpio 18 0>;
		qcom,scl-gpio = <&msmgpio 19 0>;
	};

	qcom,clock-a7@f9011050 {
		compatible = "qcom,clock-a7-8226";
		reg = <0xf9011050 0x8>;
		reg-names = "rcg-base";
		clock-names = "clk-4", "clk-5";
		qcom,speed0-bin-v0 =
			<         0 0>,
			< 384000000 1>,
			< 787200000 2>,
			<1190400000 3>;

		cpu-vdd-supply = <&apc_vreg_corner>;
	};

	qcom,cpubw {
		compatible = "qcom,cpubw";
		qcom,cpu-mem-ports = <1 512>;
		qcom,bw-tbl =
			< 1525 /* 200 MHz */ >,
			< 2441 /* 320 MHz */ >,
			< 3051 /* 400 MHz */ >,
			< 4066 /* 533 MHz */ >;
	};

	qcom,msm-cpufreq@0 {
		reg = <0 4>;
		compatible = "qcom,msm-cpufreq";
		qcom,cpufreq-table =
			<  300000 1525 >,
			<  384000 1525 >,
			<  600000 1525 >,
			<  787200 3051 >,
			<  998400 4066 >,
			< 1094400 4066 >,
			< 1190400 4066 >,
			< 1305600 4066 >,
			< 1344000 4066 >,
			< 1401600 4066 >,
			< 1497600 4066 >,
			< 1593600 4066 >,
			< 1689600 4066 >,
			< 1785600 4066 >;
	};

	qcom,ocmem@fdd00000 {
		compatible = "qcom,msm-ocmem";
		reg = <0xfdd00000 0x2000>,
		      <0xfdd02000 0x2000>,
		      <0xfe039000 0x400>,
		      <0xfec00000 0x20000>;
		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 0x20000>;

		partition@0 {
			reg = <0x0 0x20000>;
			qcom,ocmem-part-name = "graphics";
			qcom,ocmem-part-min = <0x20000>;
		};
	};

	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 = <&pm8226_l8>;

		qcom,firmware-name = "wcnss";

		/* GPIO inputs from wcnss */
		qcom,gpio-err-fatal = <&smp2pgpio_ssr_smp2p_4_in 0 0>;
		qcom,gpio-err-ready = <&smp2pgpio_ssr_smp2p_4_in 1 0>;
		qcom,gpio-proxy-unvote = <&smp2pgpio_ssr_smp2p_4_in 2 0>;

		/* GPIO output to wcnss */
		qcom,gpio-force-stop = <&smp2pgpio_ssr_smp2p_4_out 0 0>;
	};

	qcom,iris-fm {
		compatible = "qcom,iris_fm";
	};

	qcom,lpass@fe200000 {
		compatible = "qcom,pil-q6v5-lpass";
		reg = <0xfe200000 0x00100>,
		      <0xfd485100 0x00010>,
		      <0xfc4016c0 0x00004>;
		reg-names = "qdsp6_base", "halt_base", "restart_reg";
		vdd_cx-supply = <&pm8226_s1_corner>;
		interrupts = <0 162 1>;

		qcom,firmware-name = "adsp";

		/* GPIO inputs from lpass */
		qcom,gpio-err-fatal = <&smp2pgpio_ssr_smp2p_2_in 0 0>;
		qcom,gpio-proxy-unvote = <&smp2pgpio_ssr_smp2p_2_in 2 0>;
		qcom,gpio-err-ready = <&smp2pgpio_ssr_smp2p_2_in 1 0>;

		/* GPIO output to lpass */
		qcom,gpio-force-stop = <&smp2pgpio_ssr_smp2p_2_out 0 0>;
	};

	qcom,mss@fc880000 {
		compatible = "qcom,pil-q6v5-mss";
		reg = <0xfc880000 0x100>,
		      <0xfd485000 0x400>,
		      <0xfc820000 0x020>,
		      <0xfc401680 0x004>,
		      <0xfd485194 0x4>;
		reg-names = "qdsp6_base", "halt_base", "rmb_base",
			    "restart_reg", "cxrail_bhs_reg";

		interrupts = <0 24 1>;
		vdd_cx-supply = <&pm8226_s1_corner>;
		vdd_mx-supply = <&pm8226_l3>;
		vdd_pll-supply = <&pm8226_l8>;
		qcom,vdd_pll = <1800000>;

		qcom,is-loadable;
		qcom,firmware-name = "mba";
		qcom,pil-self-auth;

		/* GPIO inputs from mss */
		qcom,gpio-err-fatal = <&smp2pgpio_ssr_smp2p_1_in 0 0>;
		qcom,gpio-err-ready = <&smp2pgpio_ssr_smp2p_1_in 1 0>;
		qcom,gpio-proxy-unvote = <&smp2pgpio_ssr_smp2p_1_in 2 0>;
		qcom,gpio-stop-ack = <&smp2pgpio_ssr_smp2p_1_in 3 0>;

		/* GPIO output to mss */
		qcom,gpio-force-stop = <&smp2pgpio_ssr_smp2p_1_out 0 0>;
	};

	memory_hole: qcom,msm-mem-hole {
		compatible = "qcom,msm-mem-hole";
		qcom,memblock-remove = <0x08400000 0x4000000
					0x0d200000 0x2300000
					0x0fa00000 0x500000>; /* Address and Size of Hole */
	};

	tsens: tsens@fc4a8000 {
		compatible = "qcom,msm-tsens";
		reg = <0xfc4a8000 0x2000>,
		      <0xfc4bc000 0x1000>;
		reg-names = "tsens_physical", "tsens_eeprom_physical";
		interrupts = <0 184 0>;
		qcom,sensors = <4>;
		qcom,slope = <2901 2846 3038 2955>;
		qcom,calib-mode = "fuse_map2";
	};

	qcom,msm-thermal {
		compatible = "qcom,msm-thermal";
		qcom,sensor-id = <0>;
		qcom,poll-ms = <250>;
		qcom,limit-temp = <60>;
		qcom,temp-hysteresis = <10>;
		qcom,freq-step = <2>;
		qcom,freq-control-mask = <0xf>;
		qcom,core-limit-temp = <80>;
		qcom,core-temp-hysteresis = <10>;
		qcom,core-control-mask = <0xe>;
		qcom,hotplug-temp = <110>;
		qcom,hotplug-temp-hysteresis = <20>;
		qcom,cpu-sensors = "tsens_tz_sensor5", "tsens_tz_sensor5",
				"tsens_tz_sensor2", "tsens_tz_sensor2";
		qcom,vdd-restriction-temp = <5>;
		qcom,vdd-restriction-temp-hysteresis = <10>;
		vdd-dig-supply = <&pm8226_s1_floor_corner>;

		qcom,vdd-dig-rstr{
			qcom,vdd-rstr-reg = "vdd-dig";
			qcom,levels = <5 7 7>; /* Nominal, Super Turbo, Super Turbo */
			qcom,min-level = <1>; /* No Request */
		};

		qcom,vdd-apps-rstr{
			qcom,vdd-rstr-reg = "vdd-apps";
			qcom,levels = <600000 787200 998400>;
			qcom,freq-req;
		};
	};

	spi_0: spi@f9923000 { /* BLSP1 QUP1 */
		compatible = "qcom,spi-qup-v2";
		#address-cells = <1>;
		#size-cells = <0>;
		reg-names = "spi_physical", "spi_bam_physical";
		reg = <0xf9923000 0x1000>,
		      <0xf9904000 0xF000>;
		interrupt-names = "spi_irq", "spi_bam_irq";
		interrupts = <0 95 0>, <0 238 0>;
		spi-max-frequency = <19200000>;

		qcom,gpio-mosi = <&msmgpio 0 0>;
		qcom,gpio-miso = <&msmgpio 1 0>;
		qcom,gpio-clk  = <&msmgpio 3 0>;
		qcom,gpio-cs0  = <&msmgpio 22 0>;

		qcom,infinite-mode = <0>;
		qcom,use-bam;
		qcom,ver-reg-exists;
		qcom,bam-consumer-pipe-index = <12>;
		qcom,bam-producer-pipe-index = <13>;
		qcom,master-id = <86>;
	};

	qcom,bam_dmux@fc834000 {
		compatible = "qcom,bam_dmux";
		reg = <0xfc834000 0x7000>;
		interrupts = <0 29 1>;
	};

	qcom,msm-rtb {
		compatible = "qcom,msm-rtb";
		qcom,memory-reservation-type = "EBI1";
		qcom,memory-reservation-size = <0x100000>; /* 1M EBI1 buffer */
	};

	qcom,msm-rng@f9bff000 {
                compatible = "qcom,msm-rng";
                reg = <0xf9bff000 0x200>;
                qcom,msm-rng-iface-clk;
                qcom,msm-bus,name = "msm-rng-noc";
                qcom,msm-bus,num-cases = <2>;
                qcom,msm-bus,num-paths = <1>;
                qcom,msm-bus,vectors-KBps =
                                <1 618 0 0>,
                                <1 618 0 800>;
	};

	qcom,tz-log@fe805720 {
		compatible = "qcom,tz-log";
		reg = <0x0fe805720 0x1000>;
	};

	jtag_fuse: jtagfuse@fc4be024 {
		compatible = "qcom,jtag-fuse";
		reg = <0xfc4be024 0x8>;
		reg-names = "fuse-base";
	};

	jtag_mm0: jtagmm@fc33c000 {
		compatible = "qcom,jtag-mm";
		reg = <0xfc33c000 0x1000>,
		      <0xfc330000 0x1000>;
		reg-names = "etm-base","debug-base";
	};

	jtag_mm1: jtagmm@fc33d000 {
		compatible = "qcom,jtag-mm";
		reg = <0xfc33d000 0x1000>,
		      <0xfc332000 0x1000>;
		reg-names = "etm-base","debug-base";
	};

	jtag_mm2: jtagmm@fc33e000 {
		compatible = "qcom,jtag-mm";
		reg = <0xfc33e000 0x1000>,
		      <0xfc334000 0x1000>;
		reg-names = "etm-base","debug-base";
	};

	jtag_mm3: jtagmm@fc33f000 {
		compatible = "qcom,jtag-mm";
		reg = <0xfc33f000 0x1000>,
		      <0xfc336000 0x1000>;
		reg-names = "etm-base","debug-base";
	};

	qcom,ipc-spinlock@fd484000 {
		compatible = "qcom,ipc-spinlock-sfpb";
		reg = <0xfd484000 0x400>;
		qcom,num-locks = <8>;
	};

	qcom,qseecom@d980000 {
		compatible = "qcom,qseecom";
		reg = <0xd980000 0x256000>;
		reg-names = "secapp-region";
		qcom,disk-encrypt-pipe-pair = <2>;
		qcom,hlos-ce-hw-instance = <0>;
		qcom,qsee-ce-hw-instance = <0>;
		qcom,support-bus-scaling;
		qcom,msm-bus,name = "qseecom-noc";
		qcom,msm-bus,num-cases = <4>;
		qcom,msm-bus,active-only = <0>;
		qcom,msm-bus,num-paths = <1>;
		qcom,msm-bus,vectors-KBps =
				<55 512 0 0>,
				<55 512 0 0>,
				<55 512 120000 1200000>,
				<55 512 393600 3936000>;
	};

	qcom,qcrypto@fd404000 {
		compatible = "qcom,qcrypto";
                reg  =  <0xfd400000 0x20000>,
                        <0xfd404000 0x8000>;
		reg-names = "crypto-base","crypto-bam-base";
		interrupts = <0 207 0>;
		qcom,bam-pipe-pair = <2>;
		qcom,ce-hw-instance = <0>;
		qcom,ce-hw-shared;
		qcom,msm-bus,name = "qcrypto-noc";
		qcom,msm-bus,num-cases = <2>;
		qcom,msm-bus,active-only = <0>;
		qcom,msm-bus,num-paths = <1>;
		qcom,msm-bus,vectors-KBps =
				<55 512 0 0>,
				<55 512 3936000 393600>;
	};

        qcom,qcedev@fd400000 {
		compatible = "qcom,qcedev";
		reg  =  <0xfd400000 0x20000>,
			<0xfd404000 0x8000>;
		reg-names = "crypto-base","crypto-bam-base";
		interrupts = <0 207 0>;
		qcom,bam-pipe-pair = <1>;
		qcom,ce-hw-instance = <0>;
		qcom,ce-hw-shared;
		qcom,msm-bus,name = "qcedev-noc";
		qcom,msm-bus,num-cases = <2>;
		qcom,msm-bus,active-only = <0>;
		qcom,msm-bus,num-paths = <1>;
		qcom,msm-bus,vectors-KBps =
				<55 512 0 0>,
				<55 512 3936000 393600>;
	};

	cpu-pmu {
		compatible = "arm,cortex-a7-pmu";
		qcom,irq-is-percpu;
		interrupts = <1 7 0xf00>;
	};
};

&gdsc_venus {
	qcom,clock-names = "core_clk";
	status = "ok";
};

&gdsc_mdss {
	qcom,clock-names = "core_clk", "lut_clk";
	status = "ok";
};

&gdsc_jpeg {
	qcom,clock-names = "core_clk";
	status = "ok";
};

&gdsc_vfe {
	qcom,clock-names = "core_clk", "csi_clk", "cpp_clk";
	status = "ok";
};

&gdsc_oxili_cx {
	qcom,clock-names = "core_clk";
	status = "ok";
};

&gdsc_usb_hsic {
	status = "ok";
};

/include/ "msm-pm8226-rpm-regulator.dtsi"
/include/ "msm-pm8226.dtsi"
/include/ "msm8226-regulator.dtsi"

&pm8226_vadc {
	chan@0 {
		label = "usb_in";
		reg = <0>;
		qcom,decimation = <0>;
		qcom,pre-div-channel-scaling = <4>;
		qcom,calibration-type = "absolute";
		qcom,scale-function = <0>;
		qcom,hw-settle-time = <0>;
		qcom,fast-avg-setup = <0>;
	};

	chan@2 {
		label = "vchg_sns";
		reg = <2>;
		qcom,decimation = <0>;
		qcom,pre-div-channel-scaling = <3>;
		qcom,calibration-type = "absolute";
		qcom,scale-function = <0>;
		qcom,hw-settle-time = <0>;
		qcom,fast-avg-setup = <0>;
	};

	chan@5 {
		label = "vcoin";
		reg = <5>;
		qcom,decimation = <0>;
		qcom,pre-div-channel-scaling = <1>;
		qcom,calibration-type = "absolute";
		qcom,scale-function = <0>;
		qcom,hw-settle-time = <0>;
		qcom,fast-avg-setup = <0>;
	};

	chan@6 {
		label = "vbat_sns";
		reg = <6>;
		qcom,decimation = <0>;
		qcom,pre-div-channel-scaling = <1>;
		qcom,calibration-type = "absolute";
		qcom,scale-function = <0>;
		qcom,hw-settle-time = <0>;
		qcom,fast-avg-setup = <0>;
	};

	chan@7 {
		label = "vph_pwr";
		reg = <7>;
		qcom,decimation = <0>;
		qcom,pre-div-channel-scaling = <1>;
		qcom,calibration-type = "absolute";
		qcom,scale-function = <0>;
		qcom,hw-settle-time = <0>;
		qcom,fast-avg-setup = <0>;
	};

	chan@30 {
		label = "batt_therm";
		reg = <0x30>;
		qcom,decimation = <0>;
		qcom,pre-div-channel-scaling = <0>;
		qcom,calibration-type = "ratiometric";
		qcom,scale-function = <1>;
		qcom,hw-settle-time = <2>;
		qcom,fast-avg-setup = <0>;
	};

	chan@31 {
		label = "batt_id";
		reg = <0x31>;
		qcom,decimation = <0>;
		qcom,pre-div-channel-scaling = <0>;
		qcom,calibration-type = "ratiometric";
		qcom,scale-function = <0>;
		qcom,hw-settle-time = <2>;
		qcom,fast-avg-setup = <0>;
	};

	chan@b2 {
		label = "xo_therm_pu2";
		reg = <0xb2>;
		qcom,decimation = <0>;
		qcom,pre-div-channel-scaling = <0>;
		qcom,calibration-type = "ratiometric";
		qcom,scale-function = <4>;
		qcom,hw-settle-time = <2>;
		qcom,fast-avg-setup = <0>;
	};

	chan@39 {
		label = "usb_id_nopull";
		reg = <0x39>;
		qcom,decimation = <0>;
		qcom,pre-div-channel-scaling = <0>;
		qcom,calibration-type = "ratiometric";
		qcom,scale-function = <0>;
		qcom,hw-settle-time = <2>;
		qcom,fast-avg-setup = <0>;
	};
};

&pm8226_adc_tm {
	/* Channel Node */
	chan@30 {
		label = "batt_therm";
		reg = <0x30>;
		qcom,decimation = <0>;
		qcom,pre-div-channel-scaling = <0>;
		qcom,calibration-type = "ratiometric";
		qcom,scale-function = <1>;
		qcom,hw-settle-time = <2>;
		qcom,fast-avg-setup = <3>;
		qcom,btm-channel-number = <0x48>;
		qcom,meas-interval-timer-idx = <2>;
	};

	chan@8 {
		label = "die_temp";
		reg = <8>;
		qcom,decimation = <0>;
		qcom,pre-div-channel-scaling = <0>;
		qcom,calibration-type = "absolute";
		qcom,scale-function = <3>;
		qcom,hw-settle-time = <0>;
		qcom,fast-avg-setup = <3>;
		qcom,btm-channel-number = <0x68>;
	};

	chan@6 {
		label = "vbat_sns";
		reg = <6>;
		qcom,decimation = <0>;
		qcom,pre-div-channel-scaling = <1>;
		qcom,calibration-type = "absolute";
		qcom,scale-function = <0>;
		qcom,hw-settle-time = <0>;
		qcom,fast-avg-setup = <3>;
		qcom,btm-channel-number = <0x70>;
	};

	chan@14 {
		label = "pa_therm0";
		reg = <0x14>;
		qcom,decimation = <0>;
		qcom,pre-div-channel-scaling = <0>;
		qcom,calibration-type = "ratiometric";
		qcom,scale-function = <2>;
		qcom,hw-settle-time = <2>;
		qcom,fast-avg-setup = <0>;
		qcom,btm-channel-number = <0x78>;
		qcom,thermal-node;
	};

	chan@17 {
		label = "pa_therm1";
		reg = <0x17>;
		qcom,decimation = <0>;
		qcom,pre-div-channel-scaling = <0>;
		qcom,calibration-type = "ratiometric";
		qcom,scale-function = <2>;
		qcom,hw-settle-time = <2>;
		qcom,fast-avg-setup = <0>;
		qcom,btm-channel-number = <0x80>;
		qcom,thermal-node;
	};
};

&pm8226_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,boost@1500 {
		status = "ok";
	};

	qcom,chg-misc@1600 {
		status = "ok";
	};
};
