summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDiana Z <dzigterman@chromium.org>2020-09-28 14:23:04 -0600
committerCommit Bot <commit-bot@chromium.org>2020-10-02 02:12:00 +0000
commit214989b70231d9536211255f255d10297047f78f (patch)
tree0b2f62e825255f42a999e053d7d4be42e6a2e6ea
parent8b05bdfc38ccc2b1eb694ad4d41096e08a5116c4 (diff)
downloadchrome-ec-stabilize-13505.1.B-master.tar.gz
Dedede: Check versus vSinkDisconnect on VBUS_REMOVEDstabilize-13505.1.B-master
For variants using the charger Vbus ADC, add a check versus vSinkDisconnect to determine if the TC layer connection has been broken. BRANCH=None BUG=b:168831161 TEST=on waddledee, confirm we can reliably source 5V from a charger without erroneously detecting disconnect Signed-off-by: Diana Z <dzigterman@chromium.org> Change-Id: Icd06d91cd28db068c8cfa646152596d6eab80375 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2436581 Reviewed-by: Denis Brockus <dbrockus@chromium.org> Reviewed-by: Aseda Aboagye <aaboagye@chromium.org>
-rw-r--r--board/drawcia/usb_pd_policy.c4
-rw-r--r--board/waddledee/usb_pd_policy.c4
2 files changed, 6 insertions, 2 deletions
diff --git a/board/drawcia/usb_pd_policy.c b/board/drawcia/usb_pd_policy.c
index a3d1741a41..9d53f20047 100644
--- a/board/drawcia/usb_pd_policy.c
+++ b/board/drawcia/usb_pd_policy.c
@@ -83,8 +83,10 @@ __override bool pd_check_vbus_level(int port, enum vbus_level level)
if (level == VBUS_SAFE0V)
return vbus_voltage < PD_V_SAFE0V_MAX;
- else
+ else if (level == VBUS_PRESENT)
return vbus_voltage > PD_V_SAFE5V_MIN;
+ else
+ return vbus_voltage < PD_V_SINK_DISCONNECT_MAX;
}
int pd_snk_is_vbus_provided(int port)
diff --git a/board/waddledee/usb_pd_policy.c b/board/waddledee/usb_pd_policy.c
index a3d1741a41..9d53f20047 100644
--- a/board/waddledee/usb_pd_policy.c
+++ b/board/waddledee/usb_pd_policy.c
@@ -83,8 +83,10 @@ __override bool pd_check_vbus_level(int port, enum vbus_level level)
if (level == VBUS_SAFE0V)
return vbus_voltage < PD_V_SAFE0V_MAX;
- else
+ else if (level == VBUS_PRESENT)
return vbus_voltage > PD_V_SAFE5V_MIN;
+ else
+ return vbus_voltage < PD_V_SINK_DISCONNECT_MAX;
}
int pd_snk_is_vbus_provided(int port)