summaryrefslogtreecommitdiff
path: root/board/samus_pd
diff options
context:
space:
mode:
authorTodd Broch <tbroch@chromium.org>2015-05-28 10:34:26 -0700
committerChromeOS Commit Bot <chromeos-commit-bot@chromium.org>2015-05-29 01:37:38 +0000
commit14ba846eea9a16876df98802d9c0f192ae006ce0 (patch)
treed4e196c51225b478a24b4c8c71630dd792f19b08 /board/samus_pd
parente4cd9121a5aa27f58106b6fc6a089c92b67a9668 (diff)
downloadchrome-ec-14ba846eea9a16876df98802d9c0f192ae006ce0.tar.gz
pd: Refine HPD debounce values.
Change refines HPD debounce values into both upstream and downstream values for packetizing across the type-C link. For LVL, the upstream type-C device will packetize any HPD transition >=2ms as either HIGH or LOW. On the downstream side the value is driven immediately. Additional debouncing should be done by true upstream device according to specification. For IRQ, the upstream type-C device will packetize any HPD pulse >250usec as an IRQ. On the downstream side it will be de-packetized to create 750usec pulse. Signed-off-by: Todd Broch <tbroch@chromium.org> BRANCH=samus BUG=chrome-os-partner:39717 TEST=samus|macbook(2015) + hoho|dingdong|apple HDMI type-C dongles still drive screens successfully. Change-Id: Ide58f3b2d675a82c12ca6afc2be53ca6e2561ace Reviewed-on: https://chromium-review.googlesource.com/273867 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>
Diffstat (limited to 'board/samus_pd')
-rw-r--r--board/samus_pd/usb_pd_policy.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/board/samus_pd/usb_pd_policy.c b/board/samus_pd/usb_pd_policy.c
index 154a1303e7..af58c7e004 100644
--- a/board/samus_pd/usb_pd_policy.c
+++ b/board/samus_pd/usb_pd_policy.c
@@ -367,7 +367,7 @@ static int svdm_dp_attention(int port, uint32_t *payload)
if (irq & cur_lvl) {
gpio_set_level(hpd, 0);
hook_call_deferred(PORT_TO_HPD_IRQ_DEFERRED(port),
- HPD_DEBOUNCE_IRQ);
+ HPD_DSTREAM_DEBOUNCE_IRQ);
} else if (irq & !cur_lvl) {
CPRINTF("ERR:HPD:IRQ&LOW\n");
return 0; /* nak */