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

&spmi_bus {
	#address-cells = <1>;
	#size-cells = <0>;
	interrupt-controller;
	#interrupt-cells = <3>;

	qcom,pm8941@0 {
		spmi-slave-container;
		reg = <0x0>;
		#address-cells = <1>;
		#size-cells = <1>;

		qcom,power-on@800 {
			compatible = "qcom,qpnp-power-on";
			reg = <0x800 0x100>;
			interrupts = <0x0 0x8 0x0>,
				     <0x0 0x8 0x1>,
				     <0x0 0x8 0x4>;
			interrupt-names = "kpdpwr", "resin", "resin-bark";
			qcom,pon-dbc-delay = <15625>;
			qcom,system-reset;

			qcom,pon_1 {
				qcom,pon-type = <0>;
				qcom,pull-up = <1>;
				linux,code = <116>;
			};

			qcom,pon_2 {
				qcom,pon-type = <1>;
				qcom,support-reset = <1>;
				qcom,pull-up = <1>;
				qcom,s1-timer = <0>;
				qcom,s2-timer = <2000>;
				qcom,s2-type = <1>;
				linux,code = <114>;
			};
		};

		bms@4000 {
			#address-cells = <1>;
			#size-cells = <1>;

			compatible = "qcom,qpnp-bms";
			reg = <0x4000 0x100>;

			interrupts =	<0x0 0x40 0x0>,
					<0x0 0x40 0x1>,
					<0x0 0x40 0x2>,
					<0x0 0x40 0x3>,
					<0x0 0x40 0x4>,
					<0x0 0x40 0x5>,
					<0x0 0x40 0x6>,
					<0x0 0x40 0x7>;

			interrupt-names = "vsense_for_r",
					  "vsense_avg",
					  "sw_cc_thr",
					  "ocv_thr",
					  "charge_begin",
					  "good_ocv",
					  "ocv_for_r",
					  "cc_thr";

			qcom,bms-r-sense-mohm = <10>;
			qcom,bms-v-cutoff-uv = <3400000>;
			qcom,bms-max-voltage-uv = <4200000>;
			qcom,bms-r-conn-mohm = <18>;
			qcom,bms-shutdown-soc-valid-limit = <20>;
			qcom,bms-adjust-soc-low-threshold = <25>;
			qcom,bms-adjust-soc-high-threshold = <45>;
			qcom,bms-chg-term-ua = <100000>;
		};

		clkdiv@5b00 {
			reg = <0x5b00 0x100>;
			compatible = "qcom,qpnp-clkdiv";
			qcom,cxo-freq = <19200000>;
		};

		clkdiv@5c00 {
			reg = <0x5c00 0x100>;
			compatible = "qcom,qpnp-clkdiv";
			qcom,cxo-freq = <19200000>;
		};

		clkdiv@5d00 {
			reg = <0x5d00 0x1000>;
			compatible = "qcom,qpnp-clkdiv";
			qcom,cxo-freq = <19200000>;
		};

		pm8941-chg {
			spmi-dev-container;
			compatible = "qcom,qpnp-charger";
			#address-cells = <1>;
			#size-cells = <1>;

			qcom,chg-vddmax-mv = <4200>;
			qcom,chg-vddsafe-mv = <4200>;
			qcom,chg-vinmin-mv = <4200>;
			qcom,chg-ibatmax-ma = <1500>;
			qcom,chg-ibatterm-ma = <200>;

			qcom,chg-chgr@1000 {
				reg = <0x1000 0x100>;
				interrupts =	<0x0 0x10 0x0>,
						<0x0 0x10 0x1>,
						<0x0 0x10 0x2>,
						<0x0 0x10 0x3>,
						<0x0 0x10 0x4>,
						<0x0 0x10 0x5>,
						<0x0 0x10 0x6>,
						<0x0 0x10 0x7>;

				interrupt-names =	"chg-done",
							"chg-failed",
							"fast-chg-on",
							"trkl-chg-on",
							"state-change",
							"chgwdog",
							"vbat-det-hi",
							"vbat-det-lo";
			};

			qcom,chg-buck@1100 {
				reg = <0x1100 0x100>;
				interrupts =	<0x0 0x11 0x0>,
						<0x0 0x11 0x1>,
						<0x0 0x11 0x2>,
						<0x0 0x11 0x3>,
						<0x0 0x11 0x4>,
						<0x0 0x11 0x5>,
						<0x0 0x11 0x6>;

				interrupt-names =	"vdd-loop",
							"ibat-loop",
							"ichg-loop",
							"vchg-loop",
							"overtemp",
							"vref-ov",
							"vbat-ov";
			};

			qcom,chg-bat-if@1200 {
				reg = <0x1200 0x100>;
				interrupts =	<0x0 0x12 0x0>,
						<0x0 0x12 0x1>,
						<0x0 0x12 0x2>,
						<0x0 0x12 0x3>,
						<0x0 0x12 0x4>;

				interrupt-names =	"psi",
							"vcp-on",
							"bat-fet-on",
							"bat-temp-ok",
							"batt-pres";
			};

			qcom,chg-usb-chgpth@1300 {
				reg = <0x1300 0x100>;
				interrupts =	<0 0x13 0x0>,
						<0 0x13 0x1>,
						<0x0 0x13 0x2>;

				interrupt-names =	"usbin-valid",
							"coarse-det-usb",
							"chg-gone";
			};

			qcom,chg-dc-chgpth@1400 {
				reg = <0x1400 0x100>;
				interrupts =	<0x0 0x14 0x0>,
						<0x0 0x14 0x1>;

				interrupt-names =	"dcin-valid",
							"coarse-det-dc";
			};

			qcom,chg-boost@1500 {
				reg = <0x1500 0x100>;
				interrupts =	<0x0 0x15 0x0>,
						<0x0 0x15 0x1>;

				interrupt-names =	"limit-error",
							"boost-pwr-ok";
			};

			qcom,chg-misc@1600 {
				reg = <0x1600 0x100>;
			};
		};

		pm8941_gpios {
			spmi-dev-container;
			compatible = "qcom,qpnp-pin";
			gpio-controller;
			#gpio-cells = <2>;
			#address-cells = <1>;
			#size-cells = <1>;
			label = "pm8941-gpio";

			gpio@c000 {
				reg = <0xc000 0x100>;
				qcom,pin-num = <1>;
				status = "disabled";
			};

			gpio@c100 {
				reg = <0xc100 0x100>;
				qcom,pin-num = <2>;
				status = "disabled";
			};

			gpio@c200 {
				reg = <0xc200 0x100>;
				qcom,pin-num = <3>;
				status = "disabled";
			};

			gpio@c300 {
				reg = <0xc300 0x100>;
				qcom,pin-num = <4>;
				status = "disabled";
			};

			gpio@c400 {
				reg = <0xc400 0x100>;
				qcom,pin-num = <5>;
				status = "disabled";
			};

			gpio@c500 {
				reg = <0xc500 0x100>;
				qcom,pin-num = <6>;
				status = "disabled";
			};

			gpio@c600 {
				reg = <0xc600 0x100>;
				qcom,pin-num = <7>;
				status = "disabled";
			};

			gpio@c700 {
				reg = <0xc700 0x100>;
				qcom,pin-num = <8>;
				status = "disabled";
			};

			gpio@c800 {
				reg = <0xc800 0x100>;
				qcom,pin-num = <9>;
				status = "disabled";
			};

			gpio@c900 {
				reg = <0xc900 0x100>;
				qcom,pin-num = <10>;
				status = "disabled";
			};

			gpio@ca00 {
				reg = <0xca00 0x100>;
				qcom,pin-num = <11>;
				status = "disabled";
			};

			gpio@cb00 {
				reg = <0xcb00 0x100>;
				qcom,pin-num = <12>;
				status = "disabled";
			};

			gpio@cc00 {
				reg = <0xcc00 0x100>;
				qcom,pin-num = <13>;
				status = "disabled";
			};

			gpio@cd00 {
				reg = <0xcd00 0x100>;
				qcom,pin-num = <14>;
				status = "disabled";
			};

			gpio@ce00 {
				reg = <0xce00 0x100>;
				qcom,pin-num = <15>;
				status = "disabled";
			};

			gpio@cf00 {
				reg = <0xcf00 0x100>;
				qcom,pin-num = <16>;
				status = "disabled";
			};

			gpio@d000 {
				reg = <0xd000 0x100>;
				qcom,pin-num = <17>;
				status = "disabled";
			};

			gpio@d100 {
				reg = <0xd100 0x100>;
				qcom,pin-num = <18>;
				status = "disabled";
			};

			gpio@d200 {
				reg = <0xd200 0x100>;
				qcom,pin-num = <19>;
				status = "disabled";
			};

			gpio@d300 {
				reg = <0xd300 0x100>;
				qcom,pin-num = <20>;
				status = "disabled";
			};

			gpio@d400 {
				reg = <0xd400 0x100>;
				qcom,pin-num = <21>;
				status = "disabled";
			};

			gpio@d500 {
				reg = <0xd500 0x100>;
				qcom,pin-num = <22>;
				status = "disabled";
			};

			gpio@d600 {
				reg = <0xd600 0x100>;
				qcom,pin-num = <23>;
				status = "disabled";
			};

			gpio@d700 {
				reg = <0xd700 0x100>;
				qcom,pin-num = <24>;
				status = "disabled";
			};

			gpio@d800 {
				reg = <0xd800 0x100>;
				qcom,pin-num = <25>;
				status = "disabled";
			};

			gpio@d900 {
				reg = <0xd900 0x100>;
				qcom,pin-num = <26>;
				status = "disabled";
			};

			gpio@da00 {
				reg = <0xda00 0x100>;
				qcom,pin-num = <27>;
				status = "disabled";
			};

			gpio@db00 {
				reg = <0xdb00 0x100>;
				qcom,pin-num = <28>;
				status = "disabled";
			};

			gpio@dc00 {
				reg = <0xdc00 0x100>;
				qcom,pin-num = <29>;
				status = "disabled";
			};

			gpio@dd00 {
				reg = <0xdd00 0x100>;
				qcom,pin-num = <30>;
				status = "disabled";
			};

			gpio@de00 {
				reg = <0xde00 0x100>;
				qcom,pin-num = <31>;
				status = "disabled";
			};

			gpio@df00 {
				reg = <0xdf00 0x100>;
				qcom,pin-num = <32>;
				status = "disabled";
			};

			gpio@e000 {
				reg = <0xe000 0x100>;
				qcom,pin-num = <33>;
				status = "disabled";
			};

			gpio@e100 {
				reg = <0xe100 0x100>;
				qcom,pin-num = <34>;
				status = "disabled";
			};

			gpio@e200 {
				reg = <0xe200 0x100>;
				qcom,pin-num = <35>;
				status = "disabled";
			};

			gpio@e300 {
				reg = <0xe300 0x100>;
				qcom,pin-num = <36>;
				status = "disabled";
			};
		};

		pm8941_mpps {
			spmi-dev-container;
			compatible = "qcom,qpnp-pin";
			gpio-controller;
			#gpio-cells = <2>;
			#address-cells = <1>;
			#size-cells = <1>;
			label = "pm8941-mpp";

			mpp@a000 {
				reg = <0xa000 0x100>;
				qcom,pin-num = <1>;
				status = "disabled";
			};

			mpp@a100 {
				reg = <0xa100 0x100>;
				qcom,pin-num = <2>;
				status = "disabled";
			};

			mpp@a200 {
				reg = <0xa200 0x100>;
				qcom,pin-num = <3>;
				status = "disabled";
			};

			mpp@a300 {
				reg = <0xa300 0x100>;
				qcom,pin-num = <4>;
				status = "disabled";
			};

			mpp@a400 {
				reg = <0xa400 0x100>;
				qcom,pin-num = <5>;
				status = "disabled";
			};

			mpp@a500 {
				reg = <0xa500 0x100>;
				qcom,pin-num = <6>;
				status = "disabled";
			};

			mpp@a600 {
				reg = <0xa600 0x100>;
				qcom,pin-num = <7>;
				status = "disabled";
			};

			mpp@a700 {
				reg = <0xa700 0x100>;
				qcom,pin-num = <8>;
				status = "disabled";
			};
		};

		qcom,pm8941_rtc {
			spmi-dev-container;
			compatible = "qcom,qpnp-rtc";
			#address-cells = <1>;
			#size-cells = <1>;
			qcom,qpnp-rtc-write = <0>;
			qcom,qpnp-rtc-alarm-pwrup = <0>;

			qcom,pm8941_rtc_rw@6000 {
				reg = <0x6000 0x100>;
			};
			qcom,pm8941_rtc_alarm@6100 {
				reg = <0x6100 0x100>;
				interrupts = <0x0 0x61 0x1>;
			};
		};

		vadc@3100 {
			compatible = "qcom,qpnp-vadc";
			reg = <0x3100 0x100>;
			interrupts = <0x0 0x31 0x0>;
			qcom,adc-bit-resolution = <15>;
			qcom,adc-vdd-reference = <1800>;

			chan@0 {
				label = "usb_in";
				qcom,channel-num = <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@1 {
				label = "dc_in";
				qcom,channel-num = <1>;
				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";
				qcom,channel-num = <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@3 {
				label = "spare1";
				qcom,channel-num = <3>;
				qcom,decimation = <0>;
				qcom,pre-div-channel-scaling = <6>;
				qcom,calibration-type = "absolute";
				qcom,scale-function = <0>;
				qcom,hw-settle-time = <0>;
				qcom,fast-avg-setup = <0>;
			};

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

			chan@5 {
				label = "vcoin";
				qcom,channel-num = <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";
				qcom,channel-num = <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";
				qcom,channel-num = <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@8 {
				label = "die_temp";
				qcom,channel-num = <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 = <0>;
			};

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

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

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

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

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

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

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

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

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

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

		iadc@3600 {
			compatible = "qcom,qpnp-iadc";
			reg = <0x3600 0x100>;
			interrupts = <0x0 0x36 0x0>;
			qcom,adc-bit-resolution = <16>;
			qcom,adc-vdd-reference = <1800>;
			qcom,rsense = <1500>;

			chan@0 {
				label = "internal_rsense";
				qcom,channel-num = <0>;
				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>;
			};
		};
	};

	qcom,pm8941@1 {
		spmi-slave-container;
		reg = <0x1>;
		#address-cells = <1>;
		#size-cells = <1>;

		regulator@1400 {
			regulator-name = "8941_s1";
			spmi-dev-container;
			#address-cells = <1>;
			#size-cells = <1>;
			compatible = "qcom,qpnp-regulator";
			reg = <0x1400 0x300>;
			status = "disabled";

			qcom,ctl@1400 {
				reg = <0x1400 0x100>;
			};
			qcom,ps@1500 {
				reg = <0x1500 0x100>;
			};
			qcom,freq@1600 {
				reg = <0x1600 0x100>;
			};
		};

		regulator@1700 {
			regulator-name = "8941_s2";
			spmi-dev-container;
			#address-cells = <1>;
			#size-cells = <1>;
			compatible = "qcom,qpnp-regulator";
			reg = <0x1700 0x300>;
			status = "disabled";

			qcom,ctl@1700 {
				reg = <0x1700 0x100>;
			};
			qcom,ps@1800 {
				reg = <0x1800 0x100>;
			};
			qcom,freq@1900 {
				reg = <0x1900 0x100>;
			};
		};

		regulator@1a00 {
			regulator-name = "8941_s3";
			spmi-dev-container;
			#address-cells = <1>;
			#size-cells = <1>;
			compatible = "qcom,qpnp-regulator";
			reg = <0x1a00 0x300>;
			status = "disabled";

			qcom,ctl@1a00 {
				reg = <0x1a00 0x100>;
			};
			qcom,ps@1b00 {
				reg = <0x1b00 0x100>;
			};
			qcom,freq@1c00 {
				reg = <0x1c00 0x100>;
			};
		};

		regulator@a000 {
			regulator-name = "8941_boost";
			reg = <0xa000 0x100>;
			compatible = "qcom,qpnp-regulator";
			status = "disabled";
		};

		regulator@4000 {
			regulator-name = "8941_l1";
			reg = <0x4000 0x100>;
			compatible = "qcom,qpnp-regulator";
			status = "disabled";
		};

		regulator@4100 {
			regulator-name = "8941_l2";
			reg = <0x4100 0x100>;
			compatible = "qcom,qpnp-regulator";
			status = "disabled";
		};

		regulator@4200 {
			regulator-name = "8941_l3";
			reg = <0x4200 0x100>;
			compatible = "qcom,qpnp-regulator";
			status = "disabled";
		};

		regulator@4300 {
			regulator-name = "8941_l4";
			reg = <0x4300 0x100>;
			compatible = "qcom,qpnp-regulator";
			status = "disabled";
		};

		regulator@4400 {
			regulator-name = "8941_l5";
			reg = <0x4400 0x100>;
			compatible = "qcom,qpnp-regulator";
			qcom,force-type = <0x04 0x10>;
			status = "disabled";
		};

		regulator@4500 {
			regulator-name = "8941_l6";
			reg = <0x4500 0x100>;
			compatible = "qcom,qpnp-regulator";
			status = "disabled";
		};

		regulator@4600 {
			regulator-name = "8941_l7";
			reg = <0x4600 0x100>;
			compatible = "qcom,qpnp-regulator";
			qcom,force-type = <0x04 0x10>;
			status = "disabled";
		};

		regulator@4700 {
			regulator-name = "8941_l8";
			reg = <0x4700 0x100>;
			compatible = "qcom,qpnp-regulator";
			status = "disabled";
		};

		regulator@4800 {
			regulator-name = "8941_l9";
			reg = <0x4800 0x100>;
			compatible = "qcom,qpnp-regulator";
			status = "disabled";
		};

		regulator@4900 {
			regulator-name = "8941_l10";
			reg = <0x4900 0x100>;
			compatible = "qcom,qpnp-regulator";
			status = "disabled";
		};

		regulator@4a00 {
			regulator-name = "8941_l11";
			reg = <0x4a00 0x100>;
			compatible = "qcom,qpnp-regulator";
			status = "disabled";
		};

		regulator@4b00 {
			regulator-name = "8941_l12";
			reg = <0x4b00 0x100>;
			compatible = "qcom,qpnp-regulator";
			status = "disabled";
		};

		regulator@4c00 {
			regulator-name = "8941_l13";
			reg = <0x4c00 0x100>;
			compatible = "qcom,qpnp-regulator";
			status = "disabled";
		};

		regulator@4d00 {
			regulator-name = "8941_l14";
			reg = <0x4d00 0x100>;
			compatible = "qcom,qpnp-regulator";
			status = "disabled";
		};

		regulator@4e00 {
			regulator-name = "8941_l15";
			reg = <0x4e00 0x100>;
			compatible = "qcom,qpnp-regulator";
			status = "disabled";
		};

		regulator@4f00 {
			regulator-name = "8941_l16";
			reg = <0x4f00 0x100>;
			compatible = "qcom,qpnp-regulator";
			status = "disabled";
		};

		regulator@5000 {
			regulator-name = "8941_l17";
			reg = <0x5000 0x100>;
			compatible = "qcom,qpnp-regulator";
			status = "disabled";
		};

		regulator@5100 {
			regulator-name = "8941_l18";
			reg = <0x5100 0x100>;
			compatible = "qcom,qpnp-regulator";
			status = "disabled";
		};

		regulator@5200 {
			regulator-name = "8941_l19";
			reg = <0x5200 0x100>;
			compatible = "qcom,qpnp-regulator";
			status = "disabled";
		};

		regulator@5300 {
			regulator-name = "8941_l20";
			reg = <0x5300 0x100>;
			compatible = "qcom,qpnp-regulator";
			status = "disabled";
		};

		regulator@5400 {
			regulator-name = "8941_l21";
			reg = <0x5400 0x100>;
			compatible = "qcom,qpnp-regulator";
			status = "disabled";
		};

		regulator@5500 {
			regulator-name = "8941_l22";
			reg = <0x5500 0x100>;
			compatible = "qcom,qpnp-regulator";
			status = "disabled";
		};

		regulator@5600 {
			regulator-name = "8941_l23";
			reg = <0x5600 0x100>;
			compatible = "qcom,qpnp-regulator";
			status = "disabled";
		};

		regulator@5700 {
			regulator-name = "8941_l24";
			reg = <0x5700 0x100>;
			compatible = "qcom,qpnp-regulator";
			status = "disabled";
		};

		regulator@8000 {
			regulator-name = "8941_lvs1";
			reg = <0x8000 0x100>;
			compatible = "qcom,qpnp-regulator";
			status = "disabled";
		};

		regulator@8100 {
			regulator-name = "8941_lvs2";
			reg = <0x8100 0x100>;
			compatible = "qcom,qpnp-regulator";
			status = "disabled";
		};

		regulator@8200 {
			regulator-name = "8941_lvs3";
			reg = <0x8200 0x100>;
			compatible = "qcom,qpnp-regulator";
			status = "disabled";
		};

		regulator@8300 {
			regulator-name = "8941_mvs1";
			reg = <0x8300 0x100>;
			compatible = "qcom,qpnp-regulator";
			status = "disabled";
		};

		regulator@8400 {
			regulator-name = "8941_mvs2";
			reg = <0x8400 0x100>;
			compatible = "qcom,qpnp-regulator";
			status = "disabled";
		};

		qcom,leds@d800 {
			compatible = "qcom,leds-qpnp";
			reg = <0xd800 0x100>;
			qcom,label = "wled";
		};

		qcom,leds@d900 {
			compatible = "qcom,leds-qpnp";
			reg = <0xd900 0x100>;
			qcom,label = "wled";
		};

		qcom,leds@da00 {
			compatible = "qcom,leds-qpnp";
			reg = <0xda00 0x100>;
			qcom,label = "wled";
		};

		qcom,leds@db00 {
			compatible = "qcom,leds-qpnp";
			reg = <0xdb00 0x100>;
			qcom,label = "wled";
		};

		qcom,leds@dc00 {
			compatible = "qcom,leds-qpnp";
			reg = <0xdc00 0x100>;
			qcom,label = "wled";
		};

		qcom,leds@dd00 {
			compatible = "qcom,leds-qpnp";
			reg = <0xdd00 0x100>;
			qcom,label = "wled";
		};

		qcom,leds@de00 {
			compatible = "qcom,leds-qpnp";
			reg = <0xde00 0x100>;
			qcom,label = "wled";
		};

		qcom,leds@df00 {
			compatible = "qcom,leds-qpnp";
			reg = <0xdf00 0x100>;
			qcom,label = "wled";
		};

		qcom,leds@e000 {
			compatible = "qcom,leds-qpnp";
			reg = <0xe000 0x100>;
			qcom,label = "wled";
		};

		qcom,leds@e100 {
			compatible = "qcom,leds-qpnp";
			reg = <0xe100 0x100>;
			qcom,label = "wled";
		};

	};
};
