/* 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.
 */

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

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

		pm8226_revid: qcom,revid@100 {
			compatible = "qcom,qpnp-revid";
			reg = <0x100 0x100>;
		};

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

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

			qcom,pon_2 {
				qcom,pon-type = <1>;
				qcom,pull-up = <1>;
				linux,code = <114>;
			};

			qcom,pon_3 {
				qcom,pon-type = <3>;
				qcom,support-reset = <1>;
				qcom,pull-up = <1>;
				qcom,s1-timer = <6720>;
				qcom,s2-timer = <2000>;
				qcom,s2-type = <7>;
				qcom,use-bark;
			};
		};

		pm8226_chg: qcom,charger {
			spmi-dev-container;
			compatible = "qcom,qpnp-charger";
			#address-cells = <1>;
			#size-cells = <1>;
			status = "disabled";

			qcom,vddmax-mv = <4200>;
			qcom,vddsafe-mv = <4230>;
			qcom,vinmin-mv = <4300>;
			qcom,vbatdet-delta-mv = <100>;
			qcom,ibatmax-ma = <1500>;
			qcom,ibatterm-ma = <100>;
			qcom,ibatsafe-ma = <1500>;
			qcom,thermal-mitigation = <1500 700 600 325>;
			qcom,resume-soc = <99>;
			qcom,tchg-mins = <150>;
			qcom,chg-vadc = <&pm8226_vadc>;
			qcom,chg-adc_tm = <&pm8226_adc_tm>;
			qcom,pmic-revid = <&pm8226_revid>;
			qcom,ibatmax-warm-ma = <350>;
			qcom,warm-bat-decidegc = <450>;
			qcom,warm-bat-mv = <4100>;
			qcom,cool-bat-decidegc = <100>;
			qcom,cool-bat-mv = <4100>;
			qcom,ibatmax-cool-ma = <350>;

			qcom,chgr@1000 {
				status = "disabled";
				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 =	"vbat-det-lo",
							"vbat-det-hi",
							"chgwdog",
							"state-change",
							"trkl-chg-on",
							"fast-chg-on",
							"chg-failed",
							"chg-done";
			};

			qcom,buck@1100 {
				status = "disabled";
				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 =	"vbat-ov",
							"vreg-ov",
							"overtemp",
							"vchg-loop",
							"ichg-loop",
							"ibat-loop",
							"vdd-loop";
			};

			pm8226_chg_batif: qcom,bat-if@1200 {
				status = "disabled";
				reg = <0x1200 0x100>;
				interrupts =	<0x0 0x12 0x0>,
						<0x0 0x12 0x1>,
						<0x0 0x12 0x2>,
						<0x0 0x12 0x3>,
						<0x0 0x12 0x4>;

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

			pm8226_chg_boost: qcom,boost@1500 {
				status = "disabled";
				reg = <0x1500 0x100>;
				interrupts =	<0x0 0x15 0x0>,
						<0x0 0x15 0x1>;

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


			pm8226_chg_otg: qcom,usb-chgpth@1300 {
				status = "disabled";
				reg = <0x1300 0x100>;
				interrupts =	<0 0x13 0x0>,
						<0 0x13 0x1>,
						<0x0 0x13 0x2>,
						<0x0 0x13 0x3>;

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

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

		pm8226_bms: qcom,bms {
			spmi-dev-container;
			compatible = "qcom,qpnp-bms";
			#address-cells = <1>;
			#size-cells = <1>;
			status = "disabled";

			qcom,r-sense-uohm = <10000>;
			qcom,v-cutoff-uv = <3400000>;
			qcom,max-voltage-uv = <4200000>;
			qcom,r-conn-mohm = <0>;
			qcom,shutdown-soc-valid-limit = <100>;
			qcom,adjust-soc-low-threshold = <15>;
			qcom,ocv-voltage-high-threshold-uv = <3750000>;
			qcom,ocv-voltage-low-threshold-uv = <3650000>;
			qcom,low-soc-calculate-soc-threshold = <15>;
			qcom,low-voltage-calculate-soc-ms = <1000>;
			qcom,low-soc-calculate-soc-ms = <5000>;
			qcom,calculate-soc-ms = <20000>;
			qcom,chg-term-ua = <100000>;
			qcom,batt-type = <0>;
			qcom,tm-temp-margin = <5000>;
			qcom,low-ocv-correction-limit-uv = <100>;
			qcom,high-ocv-correction-limit-uv = <250>;
			qcom,hold-soc-est = <3>;
			qcom,low-voltage-threshold = <3420000>;
			qcom,bms-vadc = <&pm8226_vadc>;
			qcom,bms-iadc = <&pm8226_iadc>;
			qcom,bms-adc_tm = <&pm8226_adc_tm>;

			qcom,bms-iadc@3800 {
				reg = <0x3800 0x100>;
			};

			qcom,bms-bms@4000 {
				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 = "cc_thr",
						  "ocv_for_r",
						  "good_ocv",
						  "charge_begin",
						  "ocv_thr",
						  "sw_cc_thr",
						  "vsense_avg",
						  "vsense_for_r";
			};
		};

		qcom,leds@a100 {
			compatible = "qcom,leds-qpnp";
			reg = <0xa100 0x100>;
			label = "mpp";
		};

		qcom,leds@a300 {
			compatible = "qcom,leds-qpnp";
			reg = <0xa300 0x100>;
			label = "mpp";
		};

		qcom,leds@a500 {
			compatible = "qcom,leds-qpnp";
			reg = <0xa500 0x100>;
			label = "mpp";
		};

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

		pm8226_vadc: vadc@3100 {
			compatible = "qcom,qpnp-vadc";
			reg = <0x3100 0x100>;
			#address-cells = <1>;
			#size-cells = <0>;
			interrupts = <0x0 0x31 0x0>;
			interrupt-names = "eoc-int-en-set";
			qcom,adc-bit-resolution = <15>;
			qcom,adc-vdd-reference = <1800>;
			qcom,vadc-poll-eoc;
			qcom,pmic-revid = <&pm8226_revid>;

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

			chan@9 {
				label = "ref_625mv";
				reg = <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@a {
				label = "ref_1250v";
				reg = <0xa>;
				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@c {
				label = "ref_buf_625mv";
				reg = <0xc>;
				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>;
			};
		};

		pm8226_iadc: iadc@3600 {
			compatible = "qcom,qpnp-iadc";
			reg = <0x3600 0x100>,
			      <0x12f1 0x1>;
			reg-names = "iadc-base", "batt-id-trim-cnst-rds";
			#address-cells = <1>;
			#size-cells = <0>;
			interrupts = <0x0 0x36 0x0>;
			interrupt-names = "eoc-int-en-set";
			qcom,adc-bit-resolution = <16>;
			qcom,adc-vdd-reference = <1800>;
			qcom,iadc-vadc = <&pm8226_vadc>;
			qcom,iadc-poll-eoc;
			qcom,use-default-rds-trim = <0>;
			qcom,pmic-revid = <&pm8226_revid>;

			chan@0 {
				label = "internal_rsense";
				reg = <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>;
			};
			chan@1 {
				label = "external_rsense";
				reg = <1>;
				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>;
			};
		};

		pm8226_adc_tm: vadc@3400 {
			compatible = "qcom,qpnp-adc-tm";
			reg = <0x3400 0x100>;
			#address-cells = <1>;
			#size-cells = <0>;
			interrupts =	<0x0 0x34 0x0>,
					<0x0 0x34 0x3>,
				     <0x0 0x34 0x4>;
			interrupt-names =	"eoc-int-en-set",
						"high-thr-en-set",
						"low-thr-en-set";
			qcom,adc-bit-resolution = <15>;
			qcom,adc-vdd-reference = <1800>;
			qcom,adc_tm-vadc = <&pm8226_vadc>;
		};

		qcom,temp-alarm@2400 {
			compatible = "qcom,qpnp-temp-alarm";
			reg = <0x2400 0x100>;
			interrupts = <0x0 0x24 0x0>;
			label = "pm8226_tz";
			qcom,channel-num = <8>;
			qcom,threshold-set = <0>;
			qcom,temp_alarm-vadc = <&pm8226_vadc>;
		};

		qcom,pm8226_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,pm8226_rtc_rw@6000 {
				reg = <0x6000 0x100>;
			};
			qcom,pm8226_rtc_alarm@6100 {
				reg = <0x6100 0x100>;
				interrupts = <0x0 0x61 0x1>;
			};
		};
	};

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

		regulator@1400 {
			regulator-name = "8226_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 = "8226_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 = "8226_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@1d00 {
			regulator-name = "8226_s4";
			spmi-dev-container;
			#address-cells = <1>;
			#size-cells = <1>;
			compatible = "qcom,qpnp-regulator";
			reg = <0x1d00 0x300>;
			status = "disabled";

			qcom,ctl@1d00 {
				reg = <0x1d00 0x100>;
			};
			qcom,ps@1e00 {
				reg = <0x1e00 0x100>;
			};
			qcom,freq@1f00 {
				reg = <0x1f00 0x100>;
			};
		};

		regulator@2000 {
			regulator-name = "8226_s5";
			spmi-dev-container;
			#address-cells = <1>;
			#size-cells = <1>;
			compatible = "qcom,qpnp-regulator";
			reg = <0x2000 0x300>;
			status = "disabled";

			qcom,ctl@2000 {
				reg = <0x2000 0x100>;
			};
			qcom,ps@2100 {
				reg = <0x2100 0x100>;
			};
			qcom,freq@2200 {
				reg = <0x2200 0x100>;
			};
		};

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

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

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

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

		regulator@4400 {
			regulator-name = "8226_l5";
			reg = <0x4400 0x100>;
			compatible = "qcom,qpnp-regulator";
			status = "disabled";
		};

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

		regulator@4600 {
			regulator-name = "8226_l7";
			reg = <0x4600 0x100>;
			compatible = "qcom,qpnp-regulator";
			status = "disabled";
		};

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

		regulator@5900 {
			regulator-name = "8226_l26";
			reg = <0x5900 0x100>;
			compatible = "qcom,qpnp-regulator";
			status = "disabled";
		};

		regulator@5a00 {
			regulator-name = "8226_l27";
			reg = <0x5a00 0x100>;
			compatible = "qcom,qpnp-regulator";
			status = "disabled";
		};

		regulator@5b00 {
			regulator-name = "8226_l28";
			reg = <0x5b00 0x100>;
			compatible = "qcom,qpnp-regulator";
			status = "disabled";
		};

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

		pwm@b100 {
			compatible = "qcom,qpnp-pwm";
			reg = <0xb100 0x100>,
			      <0xb042 0x7e>;
			reg-names = "qpnp-lpg-channel-base", "qpnp-lpg-lut-base";
			qcom,channel-id = <0>;
		};

		pwm@b200 {
			compatible = "qcom,qpnp-pwm";
			reg = <0xb200 0x100>,
			      <0xb042 0x7e>;
			reg-names = "qpnp-lpg-channel-base", "qpnp-lpg-lut-base";
			qcom,channel-id = <1>;
		};

		pwm@b300 {
			compatible = "qcom,qpnp-pwm";
			reg = <0xb300 0x100>,
			      <0xb042 0x7e>;
			reg-names = "qpnp-lpg-channel-base", "qpnp-lpg-lut-base";
			qcom,channel-id = <2>;
		};

		pwm@b400 {
			compatible = "qcom,qpnp-pwm";
			reg = <0xb400 0x100>,
			      <0xb042 0x7e>;
			reg-names = "qpnp-lpg-channel-base", "qpnp-lpg-lut-base";
			qcom,channel-id = <3>;
		};

		pwm@b500 {
			compatible = "qcom,qpnp-pwm";
			reg = <0xb500 0x100>,
			      <0xb042 0x7e>;
			reg-names = "qpnp-lpg-channel-base", "qpnp-lpg-lut-base";
			qcom,channel-id = <4>;
		};

		pwm@b600 {
			compatible = "qcom,qpnp-pwm";
			reg = <0xb600 0x100>,
			      <0xb042 0x7e>;
			reg-names = "qpnp-lpg-channel-base", "qpnp-lpg-lut-base";
			qcom,channel-id = <5>;
		};

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

		qcom,vibrator@c000 {
			compatible = "qcom,qpnp-vibrator";
			reg = <0xc000 0x100>;
			label = "vibrator";
			status = "disabled";
		};

		qcom,leds@d300 {
			compatible = "qcom,leds-qpnp";
			status = "okay";
			reg = <0xd300 0x100>;
			label = "flash";
			flash-boost-supply = <&pm8226_chg_boost>;
			pm8226_flash0: qcom,flash_0 {
				qcom,max-current = <1000>;
				qcom,default-state = "off";
				qcom,headroom = <3>;
				qcom,duration = <1280>;
				qcom,clamp-curr = <200>;
				qcom,startup-dly = <3>;
				qcom,safety-timer;
				label = "flash";
				linux,default-trigger =
						"flash0_trigger";
				qcom,id = <1>;
				linux,name = "led:flash_0";
				qcom,current = <625>;
			};

			pm8226_torch: qcom,flash_torch {
				qcom,max-current = <200>;
				qcom,default-state = "off";
				linux,default-trigger =
						"torch_trigger";
				label = "flash";
				qcom,id = <1>;
				linux,name = "led:flash_torch";
				qcom,current = <120>;
				qcom,torch-enable;
			};
                };
	};
};
