summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--board/plankton/board.c3
-rw-r--r--board/plankton/usb_pd_policy.c4
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;
}