summaryrefslogtreecommitdiff
path: root/driver/charger/rt9490.c
diff options
context:
space:
mode:
authoralvishsu <alvishsu@google.com>2022-10-11 11:51:15 +0800
committerChromeos LUCI <chromeos-scoped@luci-project-accounts.iam.gserviceaccount.com>2022-10-28 02:28:57 +0000
commitbbf6ba87683755adf276ec1737bb4d8b172341b9 (patch)
treebb20fbcded32e83ba20304ba4aaf7664d1f77e28 /driver/charger/rt9490.c
parent78ef44f31e9d44d627ddd35bb9aeea57d00534b9 (diff)
downloadchrome-ec-bbf6ba87683755adf276ec1737bb4d8b172341b9.tar.gz
rt9490: disable EOC-Force-CCM
RT9490 enables EOC-Force-CCM from ES2 to improve IEOC accuracy, while causes other serious problems, like causing Vsys drop randomly when removing the AC. BUG=b:254187010 TEST=Check IEOC accuracy is still tolerable (200~240mA), and 0x11[3]==1'b1 BRANCH=none Signed-off-by: Alvis Hsu <alvishsu@google.com> Change-Id: I9427262d495234360ccd192ef1b83196652615b4 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3943273 Reviewed-by: Eric Yilun Lin <yllin@google.com> Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com> Commit-Queue: Eric Yilun Lin <yllin@google.com> Reviewed-by: Ting Shen <phoenixshen@chromium.org>
Diffstat (limited to 'driver/charger/rt9490.c')
-rw-r--r--driver/charger/rt9490.c13
1 files changed, 12 insertions, 1 deletions
diff --git a/driver/charger/rt9490.c b/driver/charger/rt9490.c
index 14b8449d35..0f198c6b76 100644
--- a/driver/charger/rt9490.c
+++ b/driver/charger/rt9490.c
@@ -64,7 +64,11 @@ static const struct charger_info rt9490_charger_info = {
};
static const struct rt9490_init_setting default_init_setting = {
- .eoc_current = 200,
+ /* b/230442545#comment28
+ * With EOC-Force-CCM disabled, the real IEOC would be
+ * 30~50mA lower than expected, so move eoc_current one step up
+ */
+ .eoc_current = 240,
.mivr = 4000,
.boost_voltage = 5050,
.boost_current = 1500,
@@ -342,6 +346,13 @@ static int rt9490_init_setting(int chgnum)
*/
RETURN_ERROR(rt9490_enable_pwm_1mhz(CHARGER_SOLO, true));
+ /* b/230442545#comment28
+ * Disable EOC-Force-CCM which would potentially
+ * cause Vsys drop problem for all silicon version(ES1~ES4)
+ */
+ RETURN_ERROR(rt9490_set_bit(chgnum, RT9490_REG_CHG_CTRL2,
+ RT9490_DIS_EOC_FCCM));
+
return EC_SUCCESS;
}