summaryrefslogtreecommitdiff
path: root/board/tigertail
diff options
context:
space:
mode:
authorNick Sanders <nsanders@chromium.org>2017-03-23 19:10:35 -0700
committerchrome-bot <chrome-bot@chromium.org>2017-04-24 22:51:48 -0700
commit5eaf807dcdbc023d2d2cf12d6d150ca7b7b2fb9f (patch)
tree00f015bad67e2ae56dd231728e541b1edf9f8815 /board/tigertail
parent64d79d609bb2bd66a05bb96b2714543bed667c67 (diff)
downloadchrome-ec-5eaf807dcdbc023d2d2cf12d6d150ca7b7b2fb9f.tar.gz
tigertail: fix USB timing
Add some disconnect time between mux selections. This ensures that USB VBUS will fall and a USB disconenct will happen. BRANCH=None BUG=b:35849284 TEST=ran on tigertail Change-Id: I6cdbf8ce908f20213c7f8d1f4437ffe2b624be02 Reviewed-on: https://chromium-review.googlesource.com/459219 Commit-Ready: Nick Sanders <nsanders@chromium.org> Tested-by: Nick Sanders <nsanders@chromium.org> Reviewed-by: Aseda Aboagye <aaboagye@chromium.org>
Diffstat (limited to 'board/tigertail')
-rw-r--r--board/tigertail/board.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/board/tigertail/board.c b/board/tigertail/board.c
index 7db4618fcd..058e15c4a8 100644
--- a/board/tigertail/board.c
+++ b/board/tigertail/board.c
@@ -310,10 +310,16 @@ void set_mux_state(int state)
gpio_set_level(GPIO_SEL_RELAY_A, 0);
gpio_set_level(GPIO_SEL_RELAY_B, 0);
- /* Reconnect in the requested direction. */
+ /* Let USB disconnect. */
+ msleep(100);
+
+ /* Reconnect VBUS/CC in the requested direction. */
gpio_set_level(GPIO_SEL_RELAY_A, !dir && enabled);
gpio_set_level(GPIO_SEL_RELAY_B, dir && enabled);
+ /* Reconnect data. */
+ msleep(10);
+
gpio_set_level(GPIO_USB_C_SEL_B, dir);
gpio_set_level(GPIO_USB_C_OE_N, !enabled);