diff options
author | Todd Broch <tbroch@chromium.org> | 2015-05-28 10:34:26 -0700 |
---|---|---|
committer | ChromeOS Commit Bot <chromeos-commit-bot@chromium.org> | 2015-05-29 01:37:38 +0000 |
commit | 14ba846eea9a16876df98802d9c0f192ae006ce0 (patch) | |
tree | d4e196c51225b478a24b4c8c71630dd792f19b08 /board/samus_pd | |
parent | e4cd9121a5aa27f58106b6fc6a089c92b67a9668 (diff) | |
download | chrome-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.c | 2 |
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 */ |