diff options
author | Daisuke Nojiri <dnojiri@chromium.org> | 2018-09-14 10:47:53 -0700 |
---|---|---|
committer | chrome-bot <chrome-bot@chromium.org> | 2018-09-20 21:29:59 -0700 |
commit | 69246cf51011ca951e5c405f5a4d2ee4448eb66c (patch) | |
tree | d99ec6c42874d825f705bcd3ba3c7a709c103232 /board/glkrvp | |
parent | d5b9b8c12570a57def102d0039f0aef379582fb0 (diff) | |
download | chrome-ec-69246cf51011ca951e5c405f5a4d2ee4448eb66c.tar.gz |
chgmgr: Allow charge_manager_update_charge to accept NULL
Currently, charge_manager_update_charge does not handle NULL pointer
for struct charge_port_info any differently. It's not sanity-checked
either (thus memory access violation can occur).
This patch will make charge_manager_update_charge accept NULL pointer
and set available current and voltage to zero.
This also helps callers' intentions be clear because callers can
explicitly specify NULL (instead of passing a pointer to chg = {0},
which is initialized somewhere else).
Signed-off-by: Daisuke Nojiri <dnojiri@chromium.org>
BUG=none
BRANCH=none
TEST=buildall
Change-Id: I518662ab6a3a07f93da5d34cf62a6f856884f67d
Reviewed-on: https://chromium-review.googlesource.com/1226125
Commit-Ready: Daisuke Nojiri <dnojiri@chromium.org>
Tested-by: Daisuke Nojiri <dnojiri@chromium.org>
Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org>
Diffstat (limited to 'board/glkrvp')
-rw-r--r-- | board/glkrvp/chg_usb_pd.c | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/board/glkrvp/chg_usb_pd.c b/board/glkrvp/chg_usb_pd.c index 65866b7c06..e9108d641a 100644 --- a/board/glkrvp/chg_usb_pd.c +++ b/board/glkrvp/chg_usb_pd.c @@ -162,13 +162,11 @@ DECLARE_HOOK(HOOK_AC_CHANGE, board_dc_jack_handle, HOOK_PRIO_FIRST); static void board_charge_init(void) { int port, supplier; - struct charge_port_info charge_init = {0}; /* Initialize all charge suppliers to seed the charge manager */ for (port = 0; port < CHARGE_PORT_COUNT; port++) { for (supplier = 0; supplier < CHARGE_SUPPLIER_COUNT; supplier++) - charge_manager_update_charge(supplier, port, - &charge_init); + charge_manager_update_charge(supplier, port, NULL); } board_dc_jack_handle(); |