diff options
author | Aseda Aboagye <aaboagye@google.com> | 2018-07-08 11:04:46 -0700 |
---|---|---|
committer | chrome-bot <chrome-bot@chromium.org> | 2018-07-17 02:26:27 -0700 |
commit | 9b1435c8cd31e01f18dd2b01a91517d0e5bc3ec4 (patch) | |
tree | bc33edc9681950863177d64838a406e03ea36d36 | |
parent | d4e075c3c1bc6faf34677941295266f5e7d07e12 (diff) | |
download | chrome-ec-9b1435c8cd31e01f18dd2b01a91517d0e5bc3ec4.tar.gz |
nocturne: Reduce input current limit by 5%.
Nocturne seems to overdraw its set input current limit by about 5%.
Therefore, this CL simply reduces the set current limit to 95% of what's
desired.
BUG=b:72775843, b:111224125
BRANCH=master
TEST=Flash nocturne; verify with USB-C power meter that power contracts
are not exceeded.
Change-Id: I649653427770020c97ae425e41967e755a4ec724
Signed-off-by: Aseda Aboagye <aaboagye@google.com>
Reviewed-on: https://chromium-review.googlesource.com/1128563
Tested-by: Aseda Aboagye <aaboagye@chromium.org>
Reviewed-by: Benson Leung <bleung@google.com>
Commit-Queue: Aseda Aboagye <aaboagye@chromium.org>
(cherry picked from commit 9f741207bc0205b3c5b1099fdbd14d5612bd0f48)
Reviewed-on: https://chromium-review.googlesource.com/1137993
Commit-Ready: Aseda Aboagye <aaboagye@chromium.org>
Reviewed-by: Benson Leung <bleung@chromium.org>
Reviewed-by: Furquan Shaikh <furquan@chromium.org>
Reviewed-by: Scott Collyer <scollyer@chromium.org>
-rw-r--r-- | board/nocturne/board.c | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/board/nocturne/board.c b/board/nocturne/board.c index f3aafed99c..72ddf7b28f 100644 --- a/board/nocturne/board.c +++ b/board/nocturne/board.c @@ -568,9 +568,14 @@ int board_set_active_charge_port(int port) void board_set_charge_limit(int port, int supplier, int charge_ma, int max_ma, int charge_mv) { - charge_set_input_current_limit(MAX(charge_ma, - CONFIG_CHARGER_INPUT_CURRENT), - charge_mv); + int icl = MAX(charge_ma, CONFIG_CHARGER_INPUT_CURRENT); + + /* + * Nocturne seems to overdraw its set input current limit by about 5%. + * Request at most 95% of what's desired. + */ + icl = icl * 95 / 100; + charge_set_input_current_limit(icl, charge_mv); } static void board_chipset_reset(void) |