summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDevin Lu <Devin.Lu@quantatw.com>2023-03-31 13:12:37 +0800
committerChromeos LUCI <chromeos-scoped@luci-project-accounts.iam.gserviceaccount.com>2023-04-12 02:38:31 +0000
commit30ffbb76357c44d2d8311311308a56f834eecebe (patch)
treee9950c67881a4cbae59cc407399267b837a14d66
parent2bdcb5c97baec99ef308279c487b5c68f8912324 (diff)
downloadchrome-ec-30ffbb76357c44d2d8311311308a56f834eecebe.tar.gz
yaviks: Placate watchdog after receiving dp_attention
There are some peripheral display docks will issue HPDs in the short time. TCPM must wake up pd_task continually to service the events. They may cause the watchdog to reset. This patch placates watchdog after receiving dp_attention. BUG=b:273208597 BRANCH=none TEST=On Yaviks. Attached Dock with multi displays. System isn't reset. Change-Id: I6a5fe1665ce2300af6123e49d530229d11e3a020 Signed-off-by: Devin Lu <Devin.Lu@quantatw.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4388314 Reviewed-by: Peter Marheine <pmarheine@chromium.org> Commit-Queue: Devin Lu <devin.lu@quantatw.com> Tested-by: Devin Lu <devin.lu@quantatw.com>
-rw-r--r--zephyr/program/nissa/yaviks/src/usbc.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/zephyr/program/nissa/yaviks/src/usbc.c b/zephyr/program/nissa/yaviks/src/usbc.c
index fa280615ee..dcaa8221ff 100644
--- a/zephyr/program/nissa/yaviks/src/usbc.c
+++ b/zephyr/program/nissa/yaviks/src/usbc.c
@@ -12,6 +12,7 @@
#include "hooks.h"
#include "system.h"
#include "usb_mux.h"
+#include "watchdog.h"
#include <zephyr/logging/log.h>
@@ -316,6 +317,15 @@ void board_process_pd_alert(int port)
*/
if (!gpio_pin_get_dt(GPIO_DT_FROM_NODELABEL(gpio_usb_c1_int_odl)))
schedule_deferred_pd_interrupt(port);
+
+ /*
+ * b:273208597: There are some peripheral display docks will
+ * issue HPDs in the short time. TCPM must wake up pd_task
+ * continually to service the events. They may cause the
+ * watchdog to reset. This patch placates watchdog after
+ * receiving dp_attention.
+ */
+ watchdog_reload();
}
int pd_snk_is_vbus_provided(int port)