diff options
-rw-r--r-- | board/nautilus/usb_pd_policy.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/board/nautilus/usb_pd_policy.c b/board/nautilus/usb_pd_policy.c index 749eaff051..f30882f475 100644 --- a/board/nautilus/usb_pd_policy.c +++ b/board/nautilus/usb_pd_policy.c @@ -189,7 +189,14 @@ int pd_check_vconn_swap(int port) void pd_execute_data_swap(int port, int data_role) { - /* Do nothing */ + /* Only port 0 supports device mode. */ + if (port != 0) + return; + + gpio_set_level(GPIO_USB2_OTG_ID, + (data_role == PD_ROLE_UFP) ? 1 : 0); + gpio_set_level(GPIO_USB2_OTG_VBUSSENSE, + (data_role == PD_ROLE_UFP) ? 1 : 0); } void pd_check_pr_role(int port, int pr_role, int flags) |