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

Commit 0c98f90e authored by Abhijeet Dharmapurikar's avatar Abhijeet Dharmapurikar Committed by Rohit Vaswani
Browse files

spmi_devices: change to platform_devices



Change to using upstream spmi bus architecture. All the spmi devices,
marked by spmi-dev-container, become platform devices.
spmi-slave-container devices become spmi_devices each representing
a slave. The read/write functions use regmap api's instead of calls to
spmi_ext_register_read/write() implemented by the spmi bus. This
regmap is instantiated per slave.
The spmi bus helper functions like spmi_get_irq get changed to their
platform bus equivalents.

Change Kconfig files include
* Remove dependence on OF_SPMI, MSM_QPNP_INT
* There were few places where an earlier commit
 dcc2aedc80746acee589e4b47d3e6adf5d3ec253
missed adding dependence on SPMI along with MSM_SPMI.
Fix them.
* Add depends on ARCH_MSM. ARCH_MSM is used for internal builds.

Change the nodes in DTSI files to confirm to the modified drivers.
Update their binding docs to drop spmi-dev-container and
spmi-slave-container;

Finally update defconfig to use upstream SPMI.

Change-Id: Ic85bff27c09c84b152cb38acbc3cadd05c0ec57a
Signed-off-by: default avatarAbhijeet Dharmapurikar <adharmap@codeaurora.org>
parent 065fd87a
Loading
Loading
Loading
Loading
+1 −5
Original line number Diff line number Diff line
* msm-qpnp-pin

msm-qpnp-pin is a GPIO chip driver for the MSM SPMI implementation.
It creates a spmi_device for every spmi-dev-container block of device_nodes.
It creates a platform_device for every block of device_nodes.
These device_nodes contained within specify the PMIC pin number associated
with each gpio chip. The driver will map these to Linux GPIO numbers.

@@ -10,8 +10,6 @@ with each gpio chip. The driver will map these to Linux GPIO numbers.
-Root Node-

Required properties :
 - spmi-dev-container : Used to specify the following child nodes as part of the
   same SPMI device.
 - gpio-controller : Specify as gpio-contoller. All child nodes will belong to
   this gpio_chip.
 - #gpio-cells: We encode a PMIC pin number and a 32-bit flag field to
@@ -188,13 +186,11 @@ qpnp: qcom,spmi@fc4c0000 {
		#interrupt-cells = <3>;

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

			pm8941_gpios: gpios {
				spmi-dev-container;
				compatible = "qcom,qpnp-pin";
				gpio-controller;
				#gpio-cells = <2>;
+350 −0
Original line number Diff line number Diff line
Qualcomm QPNP Charger

The charger supports the switch mode battery charger and boost (SMBB)
peripherals on Qualcomm PMIC chips.

There are seven different peripherals adding the following functionality.
Each of these peripherals are implemented as subnodes in the example at the
end of this file.

- qcom,chgr:		Supports charging control and status
			reporting.
- qcom,bat-if:		Battery status reporting such as presence,
			temperature reporting and voltage collapse
			protection.
- qcom,buck:		Charger buck configuration and status
			reporting with regards to several regulation
			loops such as vdd, ibat etc.
- qcom,usb-chgpth:	USB charge path detection and input current
			limiting configuration.
- qcom,dc-chgpth:	DC charge path detection and input current
			limiting configuration.
- qcom,chg-misc:	Miscellaneous features such as buck frequency
			settings, comparator override features etc.

Parent node required properties:
- qcom,vddmax-mv:			Target voltage of battery in mV.
- qcom,vddsafe-mv:			Maximum Vdd voltage in mV.
- qcom,vinmin-mv:			Minimum input voltage in mV.
- qcom,ibatmax-ma:			Maximum battery charge current in mA
- qcom,ibatsafe-ma:			Safety battery current setting
- qcom,thermal-mitigation:		Array of ibatmax values for different
					system thermal mitigation level.

Parent node optional properties:
- qcom,ibatterm-ma:			Current at which charging is terminated when
					the analog end of charge option is selected.
- qcom,maxinput-usb-ma:			Maximum input current USB.
- qcom,maxinput-dc-ma:			Maximum input current DC.
- qcom,vbatdet-delta-mv:		Battery charging resume delta.
- qcom,vbatweak-mv:			Weak battery voltage threshold in mV, above which
					fast charging can start. The supported voltage range is
					from 2100mV to 3600mV with a step size of 100mV.
- qcom,charging-disabled:		Set this property to disable charging
					by default. This can then be overriden
					writing the the module parameter
					"charging_disabled".
- qcom,duty-cycle-100p:			Set this property to enable the 100% duty
					cycle feature.
- qcom,use-default-batt-values:		Set this flag to force reporting of
					battery temperature of 250 decidegree
					Celsius, state of charge to be 50%
					and disable charging.
- qcom,warm-bat-decidegc:		Warm battery temperature in decidegC.
- qcom,cool-bat-decidegc:		Cool battery temperature in decidegC.
					Note that if both warm and cool battery
					temperatures are set, the corresponding
					ibatmax and bat-mv properties are
					required to be set.
- qcom,ibatmax-cool-ma:			Maximum cool battery charge current.
- qcom,ibatmax-warm-ma:			Maximum warm battery charge current.
- qcom,warm-bat-mv:			Warm temperature battery target voltage.
- qcom,cool-bat-mv:			Cool temperature battery target voltage.
- qcom,tchg-mins:			Maximum total software initialized charge time.
- qcom,bpd-detection:			Select a battery presence detection scheme by
					specifying either "bpd_thm", "bpd_id" or
					"bpd_thm_id". "bpd_thm" selects the temperature
					pin, "bpd_id" uses the id pin for battery presence
					detection, "bpd_thm_id" selects both.
					If the property is not set, the temperatue pin will
					be used.
- qcom,btc-disabled:			If flag is set battery hot and cold monitoring is
					disabled in hardware. This monitoring is turned on
					by default.
- qcom,batt-hot-percent:		Specify a supported hot threshold percentage.
					Supported thresholds: 25% and 35%. If none is specified
					hardware defaults will be used.
- qcom,batt-cold-percent:		Specify a supported cold threshold percentage.
					Supported thresholds: 70% and 80%. If none is specified
					hardware defaults will be used.
- otg-parent-supply			Specify a phandle to a parent supply regulator
					for the OTG regulator.
- boost-parent-supply			Specify a phandle to a parent supply regulator
					for the boost regulator.
- qcom,resume-soc			Capacity in percent at which charging should resume
					when a fully charged battery drops below this level.
- qcom,chg-vadc				Corresponding VADC device's phandle.
- qcom,pmic-revid			The phandle to the revid node of the pmic on which charger
					peripheral is present. This property is a must on PMIC chips
					that exhibit inaccuracies in battery current readings. This
					phandle is used to check the version of the PMIC and apply
					necessary software workarounds.
- qcom,ext-ovp-present			Indicates if an external OVP exists which reduces the
					overall input resistance of the charge path.
- qcom,ovp-monitor-en			The ovp is enabled on hw by default. If this flag is
					set, the charger ovp status is monitored in software.
- qcom,ibat-calibration-enabled		Indicates if ibat calibration is enabled. This is
					required for devices which have a ibat trim error
					causing ibatmax to go out of spec.
- qcom,power-stage-reduced		Indicates if power stage workaround is enabled. This work
					around reduces the power stage segments while charging
					under high load during low battery voltages. It's for
					improving IADC accuracy while board has a bad layout.
- qcom,use-external-rsense		A boolean that controls whether BMS will use
					an external sensor resistor instead of the default
					RDS of the batfet.
- qcom,vbatdet-maxerr-mv		This property in mV is a hystersis value for the charge
					resume voltage property qcom,vbatdet-delta-mv. If this
					property is not defined it defaults to 50 mV.
- qcom,parallel-ovp-mode		When this option is enabled, it allows charging through both
					DC and USB OVP FETs. Please note that this should only
					be enabled in board designs with PM8941 which have DC_IN
					and USB_IN connected via a short.
 - qcom,ext-ovp-isns-enable-gpio	External OVP enable GPIO.
 - qcom,ext-ovp-isns-r-ohm			External ISNS OVP resistance in ohm.

Sub node required structure:
- A qcom,chg node must be a child of an spmi device. Each subnode reflects
	a hardware peripheral which adds a unique set of features
	to the collective charging device. For example USB detection
	and the battery interface are each seperate peripherals and
	each should be their own subnode.
- qcom,chg-adc_tm			Corresponding ADC TM device's phandle to set recurring
					measurements and receive notification for batt_therm.

Sub node required properties:
- compatible:		Must be "qcom,qpnp-charger".
- reg:			Specifies the SPMI address and size for this peripheral.
- interrupts:		Specifies the interrupt associated with the peripheral.
- interrupt-names:	Specifies the interrupt names for the peripheral. Every
			available interrupt needs to have an associated name
			with it to indentify its purpose.

			The following lists each subnode and their corresponding
			required interrupt names:

			qcom,usb-chgpth:
			 - usbin-valid
			 - usb-ocp (only for SMBBP and SMBCL)

			qcom,chgr:
			 - chg-done
			 - chg-failed

			The following interrupts are available:

			qcom,chgr:
			 - chg-done:		Triggers on charge completion.
			 - chg-failed:		Notifies of charge failures.
			 - fast-chg-on:		Notifies of fast charging state.
			 - trkl-chg-on:		Indicates trickle charging.
			 - state-change:	Notifies of a state change in
						the charger state machine.
			 - chgwdog:		Charger watchdog interrupt.
			 - vbat-det-hi:		Triggers on vbat-det-hi voltage
						setting,can be used as
						battery alarm.
			 - vbat-det-hi:		Triggers on vbat-det-low voltage
						setting, can be used as
						battery alarm.

			qcom,buck:
			 - vdd-loop:		VDD loop change interrupt.
			 - ibat-loop:		Ibat loop change interrupt.
			 - ichg-loop:		Charge current loop change.
			 - vchg-loop:		Charge voltage loop change.
			 - overtemp:		Overtemperature interrupt.
			 - vref-ov:		Reference overvoltage interrupt.
			 - vbat-ov:		Battery overvoltage interrupt.

			qcom,bat-if:
			 - psi:			PMIC serial interface interrupt.
			 - vcp-on:		Voltage collapse protection
						status interrupt.
			 - bat-fet-on:		BATFET status interrupt.
			 - bat-temp-ok:		Battery temperature status
						interrupt.
			 - batt-pres:		Battery presence status
						interrupt.

			qcom,usb-chgpth:
			 - usbin-valid:		Indicates valid USB connection.
			 - coarse-det-usb:	Coarse detect interrupt triggers
						at low voltage on USB_IN.
			 - chg-gone:		Triggers on VCHG line.
			 - usb-ocp		Triggers on over current conditions when
						reverse boosting. (Only available on
						SMBCL and SMBBP devices).

			qcom,dc-chgpth:
			 - dcin-valid:		Indicates a valid DC charger
						connection.
			 - coarse-det-dc:	Coarse detect interrupt triggers
						at low voltage on DC_IN.

			qcom,boost:
			 - limit-error:		Limiting error on SMBB boost.
			 - boost-pwr-ok:	Status of boost power.

Sub node optional properties:
			qcom,usb-chgpth:
			 - regulator-name:	A string used as a descriptive name
						for the OTG regulator.
			qcom,boost:
			 - regulator-min-microvolt:	Minimum boost voltage setting.
			 - regulator-max-microvolt:	Maximum boost voltage setting.
			 - regulator-name:	A string used as a descriptive name
						for the boost regulator.

			qcom,batfet:
			 - regulator-name:	A string used as a descriptive name
						for the batfet regulator.

			qcom,chgr:
			 - regulator-name:	A string used as a descriptive name
						for the flash workarounds regulator.
Example:
	pm8941-chg {
		compatible = "qcom,qpnp-charger";
		#address-cells = <1>;
		#size-cells = <1>;

		otg-parent-supply = <&pm8941_boost>;
		boost-parent-supply = <&foo_parent_reg>;

		qcom,vddmax-mv = <4200>;
		qcom,vddsafe-mv = <4200>;
		qcom,vinmin-mv = <4200>;
		qcom,ibatmax-ma = <1500>;
		qcom,ibatterm-ma = <200>;
		qcom,ibatsafe-ma = <1500>;
		qcom,vbatweak-mv = <3200>;
		qcom,thermal-mitigation = <1500 700 600 325>;
		qcom,cool-bat-degc = <10>;
		qcom,cool-bat-mv = <4100>;
		qcom,ibatmax-warm-ma = <350>;
		qcom,warm-bat-degc = <45>;
		qcom,warm-bat-mv = <4100>;
		qcom,ibatmax-cool-ma = <350>;
		qcom,vbatdet-delta-mv = <60>;
		qcom,batt-hot-percent = <25>;
		qcom,batt-cold-percent = <85>;
		qcom,btc-disabled = <0>;
		qcom,chg-vadc = <&pm8941_vadc>;
		qcom,chg-adc_tm = <&pm8941_adc_tm>;
		qcom,pmic-revid = <&pm8941_revid>;

		qcom,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,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,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";
		};

		pm8941_chg_otg: qcom,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,dc-chgpth@1400 {
			reg = <0x1400 0x100>;
			interrupts =	<0x0 0x14 0x0>,
					<0x0 0x14 0x1>;

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

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

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

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

In regulator specific device tree file:

	&pm8941_chg_boost {
		regulator-min-microvolt = <5000000>;
		regulator-max-microvolt = <5000000>;
		regulator-name = "8941_smbb_boost";
	};

	&pm8941_chg_batif  {
		regulator-name = "batfet";
	};

	&pm8941_chg_otg {
		regulator-name = "8941_smbb_otg";
	};
+265 −0
Original line number Diff line number Diff line
QTI's QPNP PMIC Fuel Gauge Device

QPNP PMIC FG provides interface to clients to read properties related
to the battery. Its main function is to retrieve the State of Charge (SOC),
a 0-100 percentage representing the amount of charge left in the battery.

There are two required peripherals in the FG driver, both implemented as
subnodes in the example. These peripherals must not be disabled if the FG
device is to enabled:

- qcom,fg-soc : The main FG device. Supports battery fuel gauge controls and
		sensors.
- qcom,fg-batt : The FG battery device supports interrupts and controls with
		respect to the state of the connected battery.For example: the
		peripheral informs the driver if the battery has been identified
		by the fuel gauge based on a given battery resistance range.

Optionally ADC nodes can be added
- qcom,revid-tp-rev: A subnode with a register address for the TP_REV register
		in the REVID peripheral. This is used to apply workarounds that
		may depend on the trim program.
- qcom,fg-adc-vbat : A subnode with a register address for the FG_ADC_USR
		peripheral which is used mainly for battery current limiting (BCL).
		This node maps out the VBAT reading register which allows to have
		a +/- 32 mV accurate reading of VBAT.
- qcom,fg-adc-ibat : A subnode with a register address for the FG_ADC_USR
		peripheral which is used mainly for battery current limiting (BCL).
		This node maps out the IBAT current reading register which allows
		to have a +/- 32 mA accurate reading of IBAT.

Parent node required properties:
- compatible : should be "qcom,qpnp-fg" for the FG driver.
- qcom,pmic-revid :			Should specify the phandle of PMIC
					revid module. This is used to identify
					the PMIC subtype.

Parent node optional properties:
- qcom,warm-bat-decidegc:		Warm battery temperature in decidegC.
- qcom,cool-bat-decidegc:		Cool battery temperature in decidegC.
- qcom,hot-bat-decidegc:		Hot battery temperature in decidegC.
- qcom,cold-bat-decidegc:		Cold battery temperature in decidegC.
- qcom,cold-hot-jeita-hysteresis:	A tuple of 2. Index[0] is cold
					hysteresis and index[1] is hot
					hysterisis(in decidegC).
- qcom,ext-sense-type:			Current sense channel used by the FG.
					Set this to use external rsense.
- qcom,thermal-coefficients:		Byte array of thermal coefficients for
					reading battery thermistor. This should
					be exactly 6 bytes in length.
					Example: [01 02 03 04 05 06]
- qcom,resume-soc:			soc to resume charging in percentage.
- qcom,resume-soc-raw:			soc to resume charging in the scale of
					[0-255]. This overrides qcom,resume-soc
					if defined.
- qcom,hold-soc-while-full:		A boolean property that when defined
					holds SOC at 100% when the battery is
					full.
- qcom,bcl-lm-threshold-ma:		BCL LPM to MPM mode transition threshold
					in milliAmpere.
- qcom,bcl-mh-threshold-ma:		BCL MPM to HPM mode transition threshold
					in milliAmpere.
- qcom,use-otp-profile:			Specify this flag to avoid RAM loading
					any battery profile.
- qcom,sw-rbias-control:		Boolean property which defines whether
					the Rbias needs to be controlled by
					software. If this is not set, it will
					be controlled by hardware (default).
- qcom,fg-iterm-ma:			Battery current at which the fuel gauge
					will try to scale 100% towards. When
					the charge current goes above this, the
					SoC should be at 100%.
- qcom,fg-chg-iterm-ma:			Battery current at which the fuel gauge
					will issue end of charge if the charger
					is configured to use the fuel gauge
					ADCs for end of charge detection. This
					property is in milliamps and should be
					positive (e.g. 100mA to terminate at
					-100mA).
- qcom,irq-volt-empty-mv:		The voltage threshold that the empty
					soc interrupt will be triggered. When
					the empty soc interrupt fires, battery
					soc will be pulled to 0 and the
					userspace will be notified via the
					power supply framework. The userspace
					will read 0% soc and immediately
					shutdown.
- qcom,fg-cutoff-voltage-mv:		The voltage where the fuel gauge will
					steer the SOC to be zero. For example,
					if the cutoff voltage is set to 3400mv,
					the fuel gauge will try to count SoC so
					that the battery SoC will be 0 when it
					is 3400mV.
- qcom,fg-vbat-estimate-diff-mv:	If the estimated voltage based on SoC
					and battery current/resistance differs
					from the actual voltage by more than
					this amount, the fuel gauge will
					redo the first SoC estimate when the
					driver probes.
- qcom,fg-delta-soc:			How many percent the monotonic SoC must
					change before a new delta_soc interrupt
					is asserted. If this value is raised
					above 3-4, some period workarounds may
					not function well, so it's best to
					leave this at 1 or 2%.
- qcom,fg-vbatt-low-threshold:		Voltage (in mV) which upon set will be
					used for configuring the low battery
					voltage threshold. Interrupt will be
					asserted and handled based upon
					this. If this property is not specified,
					low battery voltage threshold will be
					configured to 4200 mV.
- qcom,cycle-counter-en:		Boolean property which enables the cycle
					counter feature. If this property is
					present, then the following properties
					to specify low and high soc thresholds
					should be defined.
- qcom,capacity-learning-on:		A boolean property to have the fuel
					gauge driver attempt to learn the
					battery capacity when charging. Takes
					precedence over capacity-estimation-on.
- qcom,capacity-learning-feedback:	A boolean property to have the fuel
					gauge driver to feedback the learned
					capacity into the capacity learning
					algorithm. This has to be used only if
					the property "qcom,capacity-learning-on"
					is specified.
- qcom,cl-max-increment-deciperc:	The maximum percent that the capacity
					can rise as the result of a single
					charge cycle. This property corresponds
					to .1% increments.
- qcom,cl-max-decrement-deciperc:	The maximum percent that the capacity
					can fall as the result of a single
					charge cycle. This property corresponds
					to .1% decrements.
- qcom,cl-max-temp-decidegc:		Above this temperature, capacity
					learning will be canceled.
- qcom,cl-mix-temp-decidegc:		Below this temperature, capacity
					learning will be canceled.
- qcom,cl-max-start-soc:		The battery soc has to be below this
					value at the start of a charge cycle
					for capacity learning to be run.
- qcom,cl-vbat-est-thr-uv:		The maximum difference between the
					battery voltage shadow and the current
					predicted voltage in uV to initiate
					capacity learning.
- qcom,capacity-estimation-on:		A boolean property to have the fuel
					gauge driver attempt to estimate the
					battery capacity using battery
					resistance.
- qcom,aging-eval-current-ma:		Current used to evaluate battery aging.
					This value should be around the steady
					state current drawn from the battery
					when the phone is low on battery.
- qcom,fg-cc-cv-threshold-mv:		Voltage threshold in mV for configuring
					constant charge (CC) to constant
					voltage (CV) setpoint in FG upon
					which the battery EOC status will
					be determined. This value should be
					10 mV less than the float voltage
					configured in the charger.
					This property should only be specified
					if "qcom,autoadjust-vfloat" property is
					specified in the charger driver to
					ensure a proper operation.
- qcom,bad-battery-detection-enable:	A boolean property to enable the fuel
					gauge driver to detect the damaged battery
					when the safety-timer expires by using the
					coulomb count.
- qcom,fg-therm-delay-us:		The time in microseconds to delay battery
					thermistor biasing.

qcom,fg-soc node required properties:
- reg : offset and length of the PMIC peripheral register map.
- interrupts : the interrupt mappings.
		The format should be
		<slave-id peripheral-id interrupt-number>.
- interrupt-names : names for the mapped fg soc interrupts
		The following interrupts are required:
		0: high-soc
		1: low-soc
		2: full-soc
		3: empty-soc
		4: delta-soc
		5: first-est-done
		6: sw-fallbk-ocv
		7: sw-fallbk-new-batt

qcom,fg-memif node required properties:
- reg : offset and length of the PMIC peripheral register map.
- interrupts : the interrupt mappings.
		The format should be
		<slave-id peripheral-id interrupt-number>.
- interrupt-names : names for the mapped fg adc interrupts
		The following interrupts are required:
		0: mem-avail

Example:
pmi8994_fg: qcom,fg {
	compatible = "qcom,qpnp-fg";
	#address-cells = <1>;
	#size-cells = <1>;
	status = "disabled";
	qcom,pmic-revid = <&pmi8994_revid>;

	qcom,fg-soc@4000 {
		reg = <0x4000 0x100>;
		interrupts =	<0x2 0x40 0x0>,
				<0x2 0x40 0x1>,
				<0x2 0x40 0x2>,
				<0x2 0x40 0x3>,
				<0x2 0x40 0x4>,
				<0x2 0x40 0x5>,
				<0x2 0x40 0x6>,
				<0x2 0x40 0x7>;

		interrupt-names =	"high-soc",
					"low-soc",
					"full-soc",
					"empty-soc",
					"delta-soc",
					"first-est-done",
					"sw-fallbk-ocv",
					"sw-fallbk-new-batt";
	};

	qcom,fg-batt@4100 {
		reg = <0x4100 0x100>;
		interrupts =	<0x2 0x41 0x0>,
				<0x2 0x41 0x1>,
				<0x2 0x41 0x2>,
				<0x2 0x41 0x3>,
				<0x2 0x41 0x4>,
				<0x2 0x41 0x5>,
				<0x2 0x41 0x6>,
				<0x2 0x41 0x7>;

		interrupt-names =	"soft-cold",
					"soft-hot",
					"vbatt-low",
					"batt-ided",
					"batt-id-req",
					"batt-unknown",
					"batt-missing",
					"batt-match";
	};

	qcom,fg-adc-vbat@4254 {
		reg = <0x4254 0x1>;
	};

	qcom,fg-adc-ibat@4255 {
		reg = <0x4255 0x1>;
	};

	qcom,fg-memif@4400 {
		reg = <0x4400 0x100>;
		interrupts =	<0x2 0x44 0x0>,
				<0x2 0x44 0x1>;

		interrupt-names =	"mem-avail",
					"data-rcvry-sug";

		qcom,cold-hot-jeita-hysteresis = <30 50>;
	};
};
+209 −0

File added.

Preview size limit exceeded, changes collapsed.

+394 −0

File added.

Preview size limit exceeded, changes collapsed.

Loading