Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b2ff20a6 authored by Rohit Vaswani's avatar Rohit Vaswani
Browse files

ARM: dts: msm: Add regulator support for fsm9900



Add device tree entries for regulators for all targets of fsm9900.

Change-Id: I4f8857085e80dd259bd086c0d5f1a9279b4c90f4
Acked-by: default avatarKaushik Sikdar <ksikdar@qti.qualcomm.com>
Signed-off-by: default avatarRohit Vaswani <rvaswani@codeaurora.org>
parent bc986ecb
Loading
Loading
Loading
Loading
+243 −0
Original line number Diff line number Diff line
/* 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.
 */

/* Stub Regulator */
/ {
	pma8084_l12_ao: regulator-l12-ao {
		compatible = "qcom,stub-regulator";
		regulator-name = "8084_l12_ao";
		qcom,set = <1>;
		regulator-min-microvolt = <1800000>;
		regulator-max-microvolt = <1800000>;
	};
	pma8084_s2_corner_ao: regulator-s2-corner-ao {
		compatible = "qcom,stub-regulator";
		regulator-name = "8084_s2_corner_ao";
		qcom,set = <1>;
		regulator-min-microvolt = <1>;
		regulator-max-microvolt = <7>;
	};
};



/* QPNP controlled regulators: */

&spmi_bus {
	qcom,pma8084@1 {
		pma8084_s1: regulator@1400 {

			regulator-min-microvolt = <950000>;
			regulator-max-microvolt = <950000>;
			qcom,enable-time = <500>;
			qcom,pull-down-enable = <1>;
			regulator-always-on;
			qcom,system-load = <100000>;
			status = "okay";
		};

		pma8084_s2: regulator@1700 {
			regulator-min-microvolt = <915000>;
			regulator-max-microvolt = <915000>;
			qcom,enable-time = <500>;
			qcom,pull-down-enable = <1>;
			regulator-always-on;
			qcom,system-load = <100000>;
			status = "okay";
		};

		/* eMMC SMPS4*/
		pma8084_s4: regulator@1d00 {
			regulator-min-microvolt = <1800000>;
			regulator-max-microvolt = <1800000>;
			qcom,enable-time = <500>;
			qcom,pull-down-enable = <1>;
			regulator-always-on;
			qcom,system-load = <100000>;
			status = "okay";
		};

		pma8084_s8: regulator@2900 {
			regulator-min-microvolt = <500000>;
			regulator-max-microvolt = <1100000>;
			qcom,enable-time = <500>;
			qcom,pull-down-enable = <1>;
			regulator-always-on;
			qcom,system-load = <100000>;
			status = "okay";
		};

		/* PCIE1/2_0P9_VDDA; SGMII1/2_VDDA */
		pma8084_l3: regulator@4200 {
			regulator-min-microvolt = <950000>;
			regulator-max-microvolt = <950000>;
			qcom,enable-time = <200>;
			qcom,pull-down-enable = <1>;
			regulator-always-on;
			status = "okay";
		};

		/* LVDDA_BBRX_CHx; GPSADC_AVDD_1P3 */
		pma8084_l4: regulator@4300 {
			regulator-min-microvolt = <1300000>;
			regulator-max-microvolt = <1300000>;
			qcom,enable-time = <500>;
			qcom,pull-down-enable = <1>;
			status = "okay";
		};

		/* PMIC: RFCLK */
		pma8084_l5: regulator@4400 {
			regulator-min-microvolt = <1740000>;
			regulator-max-microvolt = <1740000>;
			qcom,enable-time = <500>;
			qcom,pull-down-enable = <1>;
			status = "okay";
		};

		/* PMIC: HKADC */
		pma8084_l8: regulator@4700 {
			regulator-min-microvolt = <1800000>;
			regulator-max-microvolt = <1800000>;
			qcom,enable-time = <500>;
			qcom,pull-down-enable = <1>;
			regulator-always-on;
			status = "okay";
		};

		/* VDDPX_5 (UIM) */
		pma8084_l9: regulator@4800 {
			regulator-min-microvolt = <1800000>;
			regulator-max-microvolt = <1800000>;
			qcom,enable-time = <500>;
			qcom,pull-down-enable = <1>;
			regulator-always-on;
			status = "okay";
		};

		/* VDDPX_6(GMAC) */
		pma8084_l10: regulator@4900 {
			regulator-min-microvolt = <2500000>;
			regulator-max-microvolt = <2500000>;
			qcom,enable-time = <200>;
			qcom,pull-down-enable = <1>;
			regulator-always-on;
			status = "okay";
		};

		/* RFICs LDO11*/
		pma8084_l11: regulator@4a00 {
			regulator-min-microvolt = <1300000>;
			regulator-max-microvolt = <1300000>;
			qcom,enable-time = <500>;
			qcom,pull-down-enable = <1>;
			regulator-always-on;
			status = "okay";
		};

		/* HVDDA_BBRX_CHx; VDDA_TXDACx */
		pma8084_l14: regulator@4d00 {
			regulator-min-microvolt = <1800000>;
			regulator-max-microvolt = <1800000>;
			qcom,enable-time = <500>;
			qcom,pull-down-enable = <1>;
			status = "okay";
		};

		/* RFICs LDO15*/
		pma8084_l15: regulator@4e00 {
			regulator-min-microvolt = <1800000>;
			regulator-max-microvolt = <1800000>;
			qcom,enable-time = <500>;
			qcom,pull-down-enable = <1>;
			regulator-always-on;
			status = "okay";
		};

		/* EXT RF Switch */
		pma8084_l18: regulator@5100 {
			regulator-min-microvolt = <2850000>;
			regulator-max-microvolt = <2850000>;
			qcom,enable-time = <500>;
			qcom,pull-down-enable = <1>;
			status = "okay";
		};

		/* 2.05V to WTR1605/2605 */
		pma8084_l19: regulator@5200 {
			regulator-min-microvolt = <2050000>;
			regulator-max-microvolt = <2050000>;
			qcom,enable-time = <500>;
			qcom,pull-down-enable = <1>;
			status = "okay";
		};

		/* eMMC LDO20 */
		pma8084_l20: regulator@5300 {
			regulator-min-microvolt = <2950000>;
			regulator-max-microvolt = <2950000>;
			qcom,enable-time = <200>;
			qcom,pull-down-enable = <1>;
			regulator-always-on;
			status = "okay";
		};

		/* SDC2 VDD LDO21 */
		pma8084_l21: regulator@5400 {
			regulator-min-microvolt = <2950000>;
			regulator-max-microvolt = <2950000>;
			qcom,enable-time = <200>;
			qcom,pull-down-enable = <1>;
			regulator-always-on;
			status = "okay";
		};

		/* FTR1 LDO23*/
		pma8084_l23: regulator@5600 {
			regulator-min-microvolt = <2200000>;
			regulator-max-microvolt = <2200000>;
			qcom,enable-time = <500>;
			qcom,pull-down-enable = <1>;
			status = "okay";
		};

		/* FTR2_VDD_2P2 */
		pma8084_l24: regulator@5700 {
			regulator-min-microvolt = <3075000>;
			regulator-max-microvolt = <3075000>;
			qcom,enable-time = <500>;
			qcom,pull-down-enable = <1>;
			status = "okay";
		};

		/* FTR2 LDO25*/
		pma8084_l25: regulator@5800 {
			regulator-min-microvolt = <2200000>;
			regulator-max-microvolt = <2200000>;
			qcom,enable-time = <500>;
			qcom,pull-down-enable = <1>;
			status = "okay";
		};

		/* QFPROM_BLOW_VDD */
		pma8084_lvs1: regulator@8000 {
			qcom,enable-time = <200>;
			qcom,pull-down-enable = <1>;
			status = "okay";
		};

	};
};

&rpm_bus {

};
+188 −0
Original line number Diff line number Diff line
@@ -603,4 +603,192 @@
		phy-addr = <1>;
		status = "disable";
	};

	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>;
		#address-cells = <1>;
		#size-cells = <0>;
		interrupt-controller;
		#interrupt-cells = <3>;
	};

	rpm_bus: qcom,rpm-smd {
		compatible = "qcom,rpm-smd";
		rpm-channel-name = "rpm_requests";
		rpm-channel-type = <15>; /* SMD_APPS_RPM */
	};

};

/include/ "msm-pma8084.dtsi"
/include/ "fsm9900-regulator.dtsi"

&pma8084_vadc {
	chan@b0 {
		label = "apq_therm";
		reg = <0xb0>;
		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>;
	};

	chan@b3 {
		label = "quiet_therm";
		reg = <0xb3>;
		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>;
	};
};

&pma8084_adc_tm {
	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 = <0x48>;
	};

	chan@b0 {
		label = "apq_therm";
		reg = <0xb0>;
		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 = <3>;
		qcom,btm-channel-number = <0x68>;
		qcom,thermal-node;
	};

	chan@b3 {
		label = "quiet_therm";
		reg = <0xb3>;
		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 = <3>;
		qcom,btm-channel-number = <0x70>;
		qcom,thermal-node;
	};

};

&pma8084_gpios {
	gpio@c000 { /* GPIO 1 */
	};

	gpio@c100 { /* GPIO 2 */
	};

	gpio@c200 { /* GPIO 3 */
	};

	gpio@c300 { /* GPIO 4 */
	};

	gpio@c400 { /* GPIO 5 */
	};

	gpio@c500 { /* GPIO 6 */
	};

	gpio@c600 { /* GPIO 7 */
	};

	gpio@c700 { /* GPIO 8 */
	};

	gpio@c800 { /* GPIO 9 */
	};

	gpio@c900 { /* GPIO 10 */
	};

	gpio@ca00 { /* GPIO 11 */
	};

	gpio@cb00 { /* GPIO 12 */
	};

	gpio@cc00 { /* GPIO 13 */
	};

	gpio@cd00 { /* GPIO 14 */
	};

	gpio@ce00 { /* GPIO 15 */
	};

	gpio@cf00 { /* GPIO 16 */
	};

	gpio@d000 { /* GPIO 17 */
	};

	gpio@d100 { /* GPIO 18 */
	};

	gpio@d200 { /* GPIO 19 */
	};

	gpio@d300 { /* GPIO 20 */
	};

	gpio@d400 { /* GPIO 21 */
	};

	gpio@d500 { /* GPIO 22 */
	};
};

&pma8084_mpps {
	mpp@a000 { /* MPP 1 */
	};

	mpp@a100 { /* MPP 2 */
	};

	mpp@a200 { /* MPP 3 */
	};

	mpp@a300 { /* MPP 4 */
	};

	mpp@a400 { /* MPP 5 */
	};

	mpp@a500 { /* MPP 6 */
	};

	mpp@a600 { /* MPP 7 */
	};

	mpp@a700 { /* MPP 8 */
	};
};