Merge "power: qpnp-bms: calibrate iadc using correct batfet settings"
diff --git a/drivers/power/qpnp-bms.c b/drivers/power/qpnp-bms.c
index 9ea034c..2fcab32 100644
--- a/drivers/power/qpnp-bms.c
+++ b/drivers/power/qpnp-bms.c
@@ -2509,7 +2509,7 @@
soc = calculate_soc_from_voltage(chip);
} else {
if (!chip->batfet_closed)
- qpnp_iadc_calibrate_for_trim(chip->iadc_dev, true);
+ qpnp_iadc_calibrate_for_trim(chip->iadc_dev, false);
rc = qpnp_vadc_read(chip->vadc_dev, LR_MUX1_BATT_THERM,
&result);
if (rc) {
@@ -2561,7 +2561,7 @@
soc = calculate_soc_from_voltage(chip);
} else {
if (!chip->batfet_closed)
- qpnp_iadc_calibrate_for_trim(chip->iadc_dev, true);
+ qpnp_iadc_calibrate_for_trim(chip->iadc_dev, false);
rc = qpnp_vadc_read(chip->vadc_dev, LR_MUX1_BATT_THERM,
&result);
if (rc) {
@@ -3286,12 +3286,11 @@
{
bool batfet_closed;
- if (chip->iadc_bms_revision2 > CALIB_WRKARND_DIG_MAJOR_MAX)
- return;
-
batfet_closed = is_batfet_closed(chip);
if (chip->batfet_closed != batfet_closed) {
chip->batfet_closed = batfet_closed;
+ if (chip->iadc_bms_revision2 > CALIB_WRKARND_DIG_MAJOR_MAX)
+ return;
if (batfet_closed == false) {
/* batfet opened */
schedule_work(&chip->batfet_open_work);