diff options
author | Wai-Hong Tam <waihong@google.com> | 2023-02-10 15:22:24 -0800 |
---|---|---|
committer | Chromeos LUCI <chromeos-scoped@luci-project-accounts.iam.gserviceaccount.com> | 2023-02-11 03:42:36 +0000 |
commit | e2521e09e6161effc60f16b362455ee93809759c (patch) | |
tree | e2c016217e29717ca9a861031224a2fed8e7670c /baseboard | |
parent | 4c13062c489a816e6a2447d85e54e5820fd48fac (diff) | |
download | chrome-ec-e2521e09e6161effc60f16b362455ee93809759c.tar.gz |
trogdor: Do not change the PPC SW and TCPC MUX when HPD changes
During the DP-Config phase, when the DP-Config VDM is acked, the
PPC SW and TCPC MUX are connected. Afterward, when the EC
receives any HPD event (High, Low, or IRQ), should not change
the PPC SW and TCPC MUX. Otherwise, disconnecting any of them
when HPD Low makes the AUX termination disappear.
BRANCH=trogdor
BUG=b:247005613
TEST=Connect the device through a Type-C dongle to a monitor,
unplug the monitor from the dongle, and replug it again. The
monitor should detect the device and assert HPD high.
Change-Id: Id890bfe8fec23109da2b36aa9662e24aec4ae32c
Signed-off-by: Wai-Hong Tam <waihong@google.com>
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4242456
Reviewed-by: Alexandru Stan <amstan@chromium.org>
Diffstat (limited to 'baseboard')
-rw-r--r-- | baseboard/trogdor/usb_pd_policy.c | 22 |
1 files changed, 0 insertions, 22 deletions
diff --git a/baseboard/trogdor/usb_pd_policy.c b/baseboard/trogdor/usb_pd_policy.c index 2e064518e0..04a2e78519 100644 --- a/baseboard/trogdor/usb_pd_policy.c +++ b/baseboard/trogdor/usb_pd_policy.c @@ -201,32 +201,10 @@ __override int svdm_dp_attention(int port, uint32_t *payload) */ gpio_set_level(GPIO_DP_MUX_SEL, port == 1); gpio_set_level(GPIO_DP_MUX_OE_L, 0); - - /* Connect the SBU lines in PPC chip. */ - if (IS_ENABLED(CONFIG_USBC_PPC_SBU)) - ppc_set_sbu(port, 1); - - /* - * Connect the USB SS/DP lines in TCPC chip. - * - * When mf_pref not true, still use the dock muxing - * because of the board USB-C topology (limited to 2 - * lanes DP). - */ - usb_mux_set(port, USB_PD_MUX_DOCK, USB_SWITCH_CONNECT, - polarity_rm_dts(pd_get_polarity(port))); } else { /* Disconnect the DP port selection mux. */ gpio_set_level(GPIO_DP_MUX_OE_L, 1); gpio_set_level(GPIO_DP_MUX_SEL, 0); - - /* Disconnect the SBU lines in PPC chip. */ - if (IS_ENABLED(CONFIG_USBC_PPC_SBU)) - ppc_set_sbu(port, 0); - - /* Disconnect the DP but keep the USB SS lines in TCPC chip. */ - usb_mux_set(port, USB_PD_MUX_USB_ENABLED, USB_SWITCH_CONNECT, - polarity_rm_dts(pd_get_polarity(port))); } if (chipset_in_state(CHIPSET_STATE_ANY_SUSPEND) && (irq || lvl)) |