diff options
author | Devin Lu <Devin.Lu@quantatw.com> | 2023-03-31 13:12:37 +0800 |
---|---|---|
committer | Chromeos LUCI <chromeos-scoped@luci-project-accounts.iam.gserviceaccount.com> | 2023-04-12 02:38:31 +0000 |
commit | 30ffbb76357c44d2d8311311308a56f834eecebe (patch) | |
tree | e9950c67881a4cbae59cc407399267b837a14d66 | |
parent | 2bdcb5c97baec99ef308279c487b5c68f8912324 (diff) | |
download | chrome-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.c | 10 |
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) |