summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCaveh Jalali <caveh@chromium.org>2021-11-05 21:12:54 -0700
committerCommit Bot <commit-bot@chromium.org>2021-11-11 19:45:30 +0000
commitd2dc336fe5267d9db9d9f81c15ca91be6c2bb9d7 (patch)
tree4bc1ebf2a6c11741283000198a986c1a35703a69
parent59ffc493a58b8334abad0e7f0a673c3b796aa3b3 (diff)
downloadchrome-ec-d2dc336fe5267d9db9d9f81c15ca91be6c2bb9d7.tar.gz
bq25710: Refactor charge option 2 register initialization
This separates the initialization of the charge option 2 register into a dedicated function. Multiple bit-fields will need to set in this register based on board configuration, so it's best to group these operations in one place. BRANCH=none BUG=b:185190976 TEST=buildall passes Signed-off-by: Caveh Jalali <caveh@chromium.org> Change-Id: Ief0f5b3d956f199544afe4f68217cfff01cb0c3b Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3274998 Reviewed-by: Keith Short <keithshort@chromium.org> Commit-Queue: Keith Short <keithshort@chromium.org>
-rw-r--r--driver/charger/bq25710.c29
1 files changed, 20 insertions, 9 deletions
diff --git a/driver/charger/bq25710.c b/driver/charger/bq25710.c
index eda50c0d57..8c31b583ff 100644
--- a/driver/charger/bq25710.c
+++ b/driver/charger/bq25710.c
@@ -268,6 +268,25 @@ static int bq257x0_init_charge_option_1(int chgnum)
return raw_write16(chgnum, BQ25710_REG_CHARGE_OPTION_1, reg);
}
+static int bq257x0_init_charge_option_2(int chgnum)
+{
+ int reg;
+ int rv;
+
+ rv = raw_read16(chgnum, BQ25710_REG_CHARGE_OPTION_2, &reg);
+ if (rv)
+ return rv;
+
+ /*
+ * Reduce peak power mode overload and relax cycle time from
+ * default 20 msec to the minimum of 5 msec on the bq25710. The
+ * minimum is 20 msec on the bq25720.
+ */
+ reg = SET_BQ_FIELD(BQ257X0, CHARGE_OPTION_2, PKPWR_TMAX, 0, reg);
+
+ return raw_write16(chgnum, BQ25710_REG_CHARGE_OPTION_2, reg);
+}
+
static void bq25710_init(int chgnum)
{
int reg;
@@ -361,15 +380,7 @@ static void bq25710_init(int chgnum)
raw_write16(chgnum, BQ25710_REG_PROCHOT_OPTION_0, reg);
}
- /*
- * Reduce peak power mode overload and relax cycle time from default 20
- * msec to the minimum of 5 msec.
- */
- if (!raw_read16(chgnum, BQ25710_REG_CHARGE_OPTION_2, &reg)) {
- reg = SET_BQ_FIELD(BQ257X0, CHARGE_OPTION_2, PKPWR_TMAX,
- 0, reg);
- raw_write16(chgnum, BQ25710_REG_CHARGE_OPTION_2, reg);
- }
+ bq257x0_init_charge_option_2(chgnum);
}
/* Charger interfaces */