diff options
author | Denis Brockus <dbrockus@google.com> | 2020-10-15 14:27:22 -0600 |
---|---|---|
committer | Commit Bot <commit-bot@chromium.org> | 2020-10-16 01:58:01 +0000 |
commit | 8ef11a2aae529d46ea0924eb12dd8654ee3859ad (patch) | |
tree | dfa041241d111c4381bf1f9f388f06270dd1ac5f /common/usb_common.c | |
parent | a05e4e60626165412a03a8c43d6fbf47d829e5c1 (diff) | |
download | chrome-ec-8ef11a2aae529d46ea0924eb12dd8654ee3859ad.tar.gz |
tcpmv2: handle custom VDM better
We were receiving a custom VDM that was not one that
we would understand and should have gracefully exited
from this.
BUG=b:158605675
BRANCH=zork
TEST=USB-C to HDMI dongle with power attached
Signed-off-by: Denis Brockus <dbrockus@google.com>
Change-Id: Icf5a699709828c7354d392612a771307bd7a09e7
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2477235
Reviewed-by: Denis Brockus <dbrockus@chromium.org>
Tested-by: Denis Brockus <dbrockus@chromium.org>
Commit-Queue: Denis Brockus <dbrockus@chromium.org>
Auto-Submit: Denis Brockus <dbrockus@chromium.org>
Diffstat (limited to 'common/usb_common.c')
-rw-r--r-- | common/usb_common.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/common/usb_common.c b/common/usb_common.c index 47b0bc9454..d2a5e43cdb 100644 --- a/common/usb_common.c +++ b/common/usb_common.c @@ -622,6 +622,10 @@ __overridable int pd_custom_vdm(int port, int cnt, uint32_t *payload, if (cnt == 0) return 0; + /* Only handle custom requests for SVID Google */ + if (PD_VDO_VID(*payload) != USB_VID_GOOGLE) + return 0; + switch (cmd) { case VDO_CMD_VERSION: /* guarantee last byte of payload is null character */ |