summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlec Berg <alecaberg@chromium.org>2014-10-17 16:10:48 -0700
committerchrome-internal-fetch <chrome-internal-fetch@google.com>2014-10-21 20:04:02 +0000
commit647ac36fda37a8ec6dd0371ab0f1e4d9780bead8 (patch)
treeb743ca1dbc6f1ef0dd77c90dfe872bf4bb03a596
parent5d76ffc62d89eb3f867aec3dc27c6ed2cbfcc172 (diff)
downloadchrome-ec-647ac36fda37a8ec6dd0371ab0f1e4d9780bead8.tar.gz
pd: do not respond to unknown SVDMs
bug fix: if we see an unknown SVDM, do not respond to it. BUG=none BRANCH=samus TEST=test with third party that sends unknown SVDM Change-Id: I3ef6c38be029d57bf3784ba832b7ae137f379049 Signed-off-by: Alec Berg <alecaberg@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/224179 Reviewed-by: Vincent Palatin <vpalatin@chromium.org>
-rw-r--r--common/usb_pd_policy.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/common/usb_pd_policy.c b/common/usb_pd_policy.c
index 2738a2f254..5aa4c6cb24 100644
--- a/common/usb_pd_policy.c
+++ b/common/usb_pd_policy.c
@@ -263,6 +263,8 @@ int pd_svdm(int port, int cnt, uint32_t *payload, uint32_t **rpayload)
case CMD_EXIT_MODE:
rsize = pd_exit_mode(port, payload);
break;
+ default:
+ rsize = 0;
}
payload[0] &= ~VDO_CMDT(0);
payload[0] |= VDO_CMDT(CMDT_INIT);
@@ -284,6 +286,8 @@ int pd_svdm(int port, int cnt, uint32_t *payload, uint32_t **rpayload)
case CMD_EXIT_MODE:
rsize = 0;
break;
+ default:
+ rsize = 0;
}
} else if (cmd_type == CMDT_RSP_NAK) {
/* nothing to do */