diff options
author | Alec Berg <alecaberg@chromium.org> | 2014-09-10 02:15:19 -0700 |
---|---|---|
committer | chrome-internal-fetch <chrome-internal-fetch@google.com> | 2014-09-10 14:01:52 +0000 |
commit | 491eb1e5f28e3804f034dce7b331f82b7f709cc5 (patch) | |
tree | 5fc79e05c211ac900367d853dbcdf7fff858b3d2 | |
parent | b16cda06a81d676fb11f02e0a4770c8ac17681c6 (diff) | |
download | chrome-ec-491eb1e5f28e3804f034dce7b331f82b7f709cc5.tar.gz |
plankton: fix charging voltage selection
Fix for plankton v2 so that the VBUS voltage selection buttons
work properly (5V, 12V, and 20V).
BUG=none
BRANCH=none
TEST=load onto plankton v2, connect type-C to samus, and press
5V, 12V, and 20V buttons. read adc on samus side to verify it
is getting the proper voltage.
Change-Id: I5004675bf658834219c295292c669182af7d8393
Signed-off-by: Alec Berg <alecaberg@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/217258
Reviewed-by: Vic Yang <victoryang@chromium.org>
-rw-r--r-- | board/plankton/board.c | 3 | ||||
-rw-r--r-- | board/plankton/usb_pd_policy.c | 4 |
2 files changed, 5 insertions, 2 deletions
diff --git a/board/plankton/board.c b/board/plankton/board.c index db3d51c473..05fde4bbd9 100644 --- a/board/plankton/board.c +++ b/board/plankton/board.c @@ -42,14 +42,17 @@ static void set_usbc_action(enum usbc_action act) case USBC_ACT_5V_TO_DUT: board_set_source_cap(SRC_CAP_5V); pd_set_dual_role(PD_DRP_FORCE_SOURCE); + pd_soft_reset(); break; case USBC_ACT_12V_TO_DUT: board_set_source_cap(SRC_CAP_12V); pd_set_dual_role(PD_DRP_FORCE_SOURCE); + pd_soft_reset(); break; case USBC_ACT_20V_TO_DUT: board_set_source_cap(SRC_CAP_20V); pd_set_dual_role(PD_DRP_FORCE_SOURCE); + pd_soft_reset(); break; case USBC_ACT_DEVICE: pd_set_dual_role(PD_DRP_FORCE_SINK); diff --git a/board/plankton/usb_pd_policy.c b/board/plankton/usb_pd_policy.c index a49e81e07b..e611c8d827 100644 --- a/board/plankton/usb_pd_policy.c +++ b/board/plankton/usb_pd_policy.c @@ -127,8 +127,8 @@ int pd_set_power_supply_ready(int port) { /* Output the correct voltage */ gpio_set_level(GPIO_VBUS_CHARGER_EN, 1); - gpio_set_level(GPIO_USBC_VSEL_0, requested_voltage_idx >= 1); - gpio_set_level(GPIO_USBC_VSEL_1, requested_voltage_idx >= 2); + gpio_set_level(GPIO_USBC_VSEL_0, requested_voltage_idx >= 2); + gpio_set_level(GPIO_USBC_VSEL_1, requested_voltage_idx >= 3); return EC_SUCCESS; } |