From 6cb085f37d5a8f53c6d004214fdd6a8e7b9acf1a Mon Sep 17 00:00:00 2001 From: Denis Brockus Date: Wed, 17 Feb 2021 12:43:37 -0700 Subject: TCPMv2: PD Timers - Initialize pd_timer in usbc_task BUG=b:178029034 BRANCH=none TEST=make buildall Signed-off-by: Denis Brockus Change-Id: I6f38976d26f5a56f665b33bf3f224c7c8a6bfc61 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2707805 Commit-Queue: Denis Brockus Tested-by: Denis Brockus Reviewed-by: Diana Z --- common/usbc/usbc_task.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/common/usbc/usbc_task.c b/common/usbc/usbc_task.c index 51b30844aa..9ba531b86a 100644 --- a/common/usbc/usbc_task.c +++ b/common/usbc/usbc_task.c @@ -24,6 +24,7 @@ #include "usb_charge.h" #include "usb_mux.h" #include "usb_pd.h" +#include "usb_pd_timer.h" #include "usb_prl_sm.h" #include "tcpm/tcpm.h" #include "usb_pe_sm.h" @@ -97,6 +98,10 @@ static bool pd_task_loop(int port) ? USBC_PRIORITY_EVENT_TIMEOUT : USBC_EVENT_TIMEOUT); + /* Manage expired PD Timers on timeouts */ + if (evt & TASK_EVENT_TIMER) + pd_timer_manage_expired(port); + /* * Re-use TASK_EVENT_RESET_DONE in tests to restart the USB task * if this code is running in a unit test. @@ -141,6 +146,7 @@ void pd_task(void *u) return; while (1) { + pd_timer_init(port); pd_task_init(port); /* As long as pd_task_loop returns true, keep running the loop. -- cgit v1.2.1