summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTodd Broch <tbroch@chromium.org>2015-04-13 13:06:07 -0700
committerChromeOS Commit Bot <chromeos-commit-bot@chromium.org>2015-04-30 00:23:31 +0000
commit8652dcceb92d3b3ae517010fdb296c3b1e77c409 (patch)
treef9e95731f25303b42621b39864d453976279057c
parent5d28e776c99ed3d4ceda0bfefe0920ca658b8241 (diff)
downloadchrome-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.c6
-rw-r--r--include/usb_pd.h6
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 \