diff options
author | Todd Broch <tbroch@chromium.org> | 2015-04-13 13:06:07 -0700 |
---|---|---|
committer | ChromeOS Commit Bot <chromeos-commit-bot@chromium.org> | 2015-04-30 00:23:31 +0000 |
commit | 8652dcceb92d3b3ae517010fdb296c3b1e77c409 (patch) | |
tree | f9e95731f25303b42621b39864d453976279057c | |
parent | 5d28e776c99ed3d4ceda0bfefe0920ca658b8241 (diff) | |
download | chrome-ec-8652dcceb92d3b3ae517010fdb296c3b1e77c409.tar.gz |
samus_pd: Remove pin configuration for DFP_D.
Samus does NOT provide any sink capabilities for DisplayPort or USB
device mode so it should NOT request UFP_U select any pin assignments
for DFP_D.
Additionally even if this functionality was provided by the DFP the
specification states, 'and one pin assignment for either the DFP_D or
UFP_D'.
This did NOT cause any functional issues but strictly speaking is a
compliance bug.
Signed-off-by: Todd Broch <tbroch@chromium.org>
BRANCH=samus
BUG=chrome-os-partner:38728
TEST=manual, hoho still successfully drives external monitor.
Change-Id: Iea3441989924dcee69fdb83299ef7e817df55683
Reviewed-on: https://chromium-review.googlesource.com/267794
Reviewed-by: Alec Berg <alecaberg@chromium.org>
Reviewed-by: Vincent Palatin <vpalatin@chromium.org>
Commit-Queue: Todd Broch <tbroch@chromium.org>
Tested-by: Todd Broch <tbroch@chromium.org>
-rw-r--r-- | board/samus_pd/usb_pd_policy.c | 6 | ||||
-rw-r--r-- | include/usb_pd.h | 6 |
2 files changed, 6 insertions, 6 deletions
diff --git a/board/samus_pd/usb_pd_policy.c b/board/samus_pd/usb_pd_policy.c index 7e1302b018..c0ae02d17b 100644 --- a/board/samus_pd/usb_pd_policy.c +++ b/board/samus_pd/usb_pd_policy.c @@ -300,10 +300,10 @@ static int svdm_dp_config(int port, uint32_t *payload) board_set_usb_mux(port, TYPEC_MUX_DP, pd_get_polarity(port)); payload[0] = VDO(USB_SID_DISPLAYPORT, 1, CMD_DP_CONFIG | VDO_OPOS(opos)); - payload[1] = VDO_DP_CFG(MODE_DP_PIN_E, /* sink pins */ - MODE_DP_PIN_E, /* src pins */ + payload[1] = VDO_DP_CFG(MODE_DP_PIN_E, /* UFP_U as UFP_D */ + 0, /* UFP_U as DFP_D */ 1, /* DPv1.3 signaling */ - 2); /* UFP connected */ + 2); /* UFP_U connected as UFP_D */ return 2; }; diff --git a/include/usb_pd.h b/include/usb_pd.h index 6eaef7882f..3c0c48e07a 100644 --- a/include/usb_pd.h +++ b/include/usb_pd.h @@ -529,12 +529,12 @@ struct pd_policy { * DisplayPort Configure VDO * ------------------------- * <31:24> : SBZ - * <23:16> : sink pin assignment supported (same as mode caps) - * <15:8> : source pin assignment supported (same as mode caps) + * <23:16> : sink pin assignment requested. Choose one from mode caps. + * <15:8> : source pin assignment requested. Choose one from mode caps. * <7:6> : SBZ * <5:2> : signalling : 1h == DP v1.3, 2h == Gen 2 * Oh is only for USB, remaining values are reserved - * <1:0> : cfg : 00 == USB, 01|10 == DP, 11 == reserved + * <1:0> : cfg : 00 == USB, 01 == DFP_D, 10 == UFP_D, 11 == reserved */ #define VDO_DP_CFG(snkp, srcp, sig, cfg) \ (((snkp) & 0xff) << 16 | ((srcp) & 0xff) << 8 \ |