summaryrefslogtreecommitdiff
path: root/baseboard
diff options
context:
space:
mode:
authorLu Zhang <lu.zhang@bitland.corp-partner.google.com>2020-03-10 16:23:27 +0800
committerCommit Bot <commit-bot@chromium.org>2020-03-11 04:19:52 +0000
commit788b6f46ddb78c139bc960e936050882530d591d (patch)
tree975c7ba5f3bb2d2c71bca2db3d4afda08d3e1946 /baseboard
parent97acbb61584cc967609803dec3f3508396966b30 (diff)
downloadchrome-ec-788b6f46ddb78c139bc960e936050882530d591d.tar.gz
dalboz: add usbc1 hpd mux driver
PS8740 needs HPD signal when enter DP mode. BUG=b:150099044 BRANCH=none CQ-DEPEND=CL:2094844 TEST=Plug in HDMI monitor through type-c dongle, it can display. Signed-off-by: Lu Zhang <lu.zhang@bitland.corp-partner.google.com> Change-Id: I1c706f9b0bf4367d54b9a27920ca70021eb31ac1 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2094863 Reviewed-by: Denis Brockus <dbrockus@chromium.org> Tested-by: Paul Ma <magf@bitland.corp-partner.google.com> Commit-Queue: Edward Hill <ecgh@chromium.org>
Diffstat (limited to 'baseboard')
-rw-r--r--baseboard/zork/variant_dalboz.c22
1 files changed, 22 insertions, 0 deletions
diff --git a/baseboard/zork/variant_dalboz.c b/baseboard/zork/variant_dalboz.c
index 7a8340f5f1..6fd0955fe8 100644
--- a/baseboard/zork/variant_dalboz.c
+++ b/baseboard/zork/variant_dalboz.c
@@ -58,12 +58,34 @@ const struct usb_mux usbc0_sbu_mux = {
.driver = &usbc0_sbu_mux_driver,
};
+static int usbc1_hpd_set_mux(const struct usb_mux *me, mux_state_t mux_state)
+{
+ if (mux_state & USB_PD_MUX_DP_ENABLED)
+ /* Enable IN_HPD on the DB */
+ ioex_set_level(IOEX_USB_C1_HPD_IN_DB, 1);
+ else
+ /* Disable IN_HPD on the DB */
+ ioex_set_level(IOEX_USB_C1_HPD_IN_DB, 0);
+
+ return EC_SUCCESS;
+}
+
+const struct usb_mux_driver usbc1_hpd_mux_driver = {
+ .set = usbc1_hpd_set_mux,
+};
+
+const struct usb_mux usbc1_hpd_mux = {
+ .usb_port = USBC_PORT_C1,
+ .driver = &usbc1_hpd_mux_driver,
+};
+
struct usb_mux usbc1_amd_fp5_usb_mux = {
.usb_port = USBC_PORT_C1,
.i2c_port = I2C_PORT_USB_AP_MUX,
.i2c_addr_flags = AMD_FP5_MUX_I2C_ADDR_FLAGS,
.driver = &amd_fp5_usb_mux_driver,
.flags = USB_MUX_FLAG_SET_WITHOUT_FLIP,
+ .next_mux = &usbc1_hpd_mux,
};
const struct usb_mux usb_muxes[] = {