From f8a8113a014b76590cb789013dcc541b74199f2d Mon Sep 17 00:00:00 2001 From: Jessy Jiang Date: Thu, 11 Apr 2019 19:46:44 +0800 Subject: flapjack: Update virtual usb mux info. Copy from kukui, update the mux info which would be used by AP. TEST=1. Modify dts, and enable extcon-usbc-cros-ec kernel module 2. cat /sys/devices/platform/*/extcon/extcon0/state, and see when DP plugged: USB=0 USB-HOST=1 DP=1 when DP unplugged: USB=0 USB-HOST=1 DP=0 BUG=b:130338464 BRANCH=None Change-Id: I3ac00e47426d56bf926943d04b91f40391d98deb Reviewed-on: https://chromium-review.googlesource.com/1564492 Commit-Ready: ChromeOS CL Exonerator Bot Tested-by: Jessy Jiang Reviewed-by: Daisuke Nojiri --- board/flapjack/usb_pd_policy.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/board/flapjack/usb_pd_policy.c b/board/flapjack/usb_pd_policy.c index 249237734b..02919e56b6 100644 --- a/board/flapjack/usb_pd_policy.c +++ b/board/flapjack/usb_pd_policy.c @@ -315,6 +315,11 @@ static int svdm_dp_attention(int port, uint32_t *payload) return 1; } + usb_mux_set(port, lvl ? TYPEC_MUX_DP : TYPEC_MUX_NONE, + USB_SWITCH_CONNECT, pd_get_polarity(port)); + + mux->hpd_update(port, lvl, irq); + if (irq & cur_lvl) { uint64_t now = get_time().val; /* wait for the minimum spacing between IRQ_HPD if needed */ @@ -342,7 +347,6 @@ static int svdm_dp_attention(int port, uint32_t *payload) hpd_deadline[port] = get_time().val + HPD_USTREAM_DEBOUNCE_LVL; } - mux->hpd_update(port, lvl, irq); /* ack */ return 1; } -- cgit v1.2.1