summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--max1720x_battery.c14
-rw-r--r--max_m5.h2
2 files changed, 8 insertions, 8 deletions
diff --git a/max1720x_battery.c b/max1720x_battery.c
index 8acbbf0..2916c8a 100644
--- a/max1720x_battery.c
+++ b/max1720x_battery.c
@@ -2955,12 +2955,12 @@ static irqreturn_t max1720x_fg_irq_thread_fn(int irq, void *obj)
} else {
dev_warn(chip->dev, "POR is set(%04x), model reload:%d\n",
fg_status, chip->model_reload);
- /* trigger model load if not on-going */
- if (chip->model_reload != MAX_M5_LOAD_MODEL_REQUEST) {
- err = max1720x_model_reload(chip, false);
- if (err < 0)
- fg_status_clr &= ~MAX1720X_STATUS_POR;
- }
+ /*
+ * trigger model load if not on-going, clear POR only when
+ * model loading done successfully
+ */
+ if (chip->model_reload != MAX_M5_LOAD_MODEL_REQUEST)
+ max1720x_model_reload(chip, false);
}
mutex_unlock(&chip->model_lock);
}
@@ -4463,7 +4463,7 @@ static void max1720x_model_work(struct work_struct *work)
chip->model_reload = MAX_M5_LOAD_MODEL_DISABLED;
chip->model_ok = false;
} else if (chip->model_reload > MAX_M5_LOAD_MODEL_IDLE) {
- chip->model_reload -= 1;
+ chip->model_reload += 1;
}
}
diff --git a/max_m5.h b/max_m5.h
index 4e76aac..9620cff 100644
--- a/max_m5.h
+++ b/max_m5.h
@@ -25,7 +25,7 @@
/* change to 1 or 0 to load FG model with default parameters on startup */
#define MAX_M5_LOAD_MODEL_DISABLED -1
#define MAX_M5_LOAD_MODEL_IDLE 0
-#define MAX_M5_LOAD_MODEL_REQUEST 5
+#define MAX_M5_LOAD_MODEL_REQUEST 1
#define MAX_M5_FG_MODEL_START 0x80
#define MAX_M5_FG_MODEL_SIZE 48