diff options
author | Diana Z <dzigterman@chromium.org> | 2021-10-18 15:27:01 -0600 |
---|---|---|
committer | Commit Bot <commit-bot@chromium.org> | 2021-12-02 23:09:27 +0000 |
commit | 18f6c4d3b2a56635ce880788047083115637885c (patch) | |
tree | c735046c4f418c6addfd2c6228252a81388f8b4f /driver/usb_mux/tusb1064.c | |
parent | 5175aa6b6d38c1819e3820d889d8f02d7226fac1 (diff) | |
download | chrome-ec-18f6c4d3b2a56635ce880788047083115637885c.tar.gz |
USB MUX: Wait on ACK for HPD changes when required
In order to correctly sequence HPD sets with the AP, allow the HPD set
to wait on an ACK from the AP before proceeding.
BRANCH=None
BUG=b:202137658
TEST=on brya, validate retimer and virtual mux are kept in sync as
expected
Signed-off-by: Diana Z <dzigterman@chromium.org>
Change-Id: I368c3290b69d627829a70847876d7b47a8c36948
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3232293
Reviewed-by: Abe Levkoy <alevkoy@chromium.org>
Diffstat (limited to 'driver/usb_mux/tusb1064.c')
-rw-r--r-- | driver/usb_mux/tusb1064.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/driver/usb_mux/tusb1064.c b/driver/usb_mux/tusb1064.c index 6a82aca68f..d0e8678039 100644 --- a/driver/usb_mux/tusb1064.c +++ b/driver/usb_mux/tusb1064.c @@ -30,11 +30,15 @@ static int tusb1064_write(const struct usb_mux *me, uint8_t reg, uint8_t val) } #if defined(CONFIG_USB_MUX_TUSB1044) -void tusb1044_hpd_update(const struct usb_mux *me, mux_state_t mux_state) +void tusb1044_hpd_update(const struct usb_mux *me, mux_state_t mux_state, + bool *ack_required) { int res; uint8_t reg; + /* This driver does not use host command ACKs */ + *ack_required = false; + res = tusb1064_read(me, TUSB1064_REG_GENERAL, ®); if (res) return; |