From d6be5084737e7fd899b44749f1360e8bc40a01a9 Mon Sep 17 00:00:00 2001 From: Ting Shen Date: Wed, 8 Sep 2021 17:01:51 +0800 Subject: tcpm/rt1718s: fix race condition between tcpc_init and usb_chg task Two different functions controls the BC12_SNK_FUNC register, one is bc12_init, another one is usb_charger_task. This causes a racing condition happens during EC soft reset: bc12_init resets the BC12_SNK_FUNC register to its initial value when usb_chg task starts bc1.2 detection. To solve this, let usb_chg task has full control of the register. BUG=b:199226158 TEST=bc1.2 detection works after ec soft reset. BRANCH=none Signed-off-by: Ting Shen Change-Id: Ie423e2d9ddad1e1fadb97e1b73b8b5e535121601 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3147512 Reviewed-by: Rong Chang Commit-Queue: Ting Shen Tested-by: Ting Shen --- driver/tcpm/rt1718s.c | 3 --- 1 file changed, 3 deletions(-) diff --git a/driver/tcpm/rt1718s.c b/driver/tcpm/rt1718s.c index 0cc3166ccc..9a2f6319c7 100644 --- a/driver/tcpm/rt1718s.c +++ b/driver/tcpm/rt1718s.c @@ -176,9 +176,6 @@ static int rt1718s_bc12_init(int port) /* Disable sink wait vbus */ RETURN_ERROR(rt1718s_set_bc12_sink_wait_vbus(port, false)); - /* Disable bc 1.2 sink function */ - RETURN_ERROR(rt1718s_enable_bc12_sink(port, false)); - return EC_SUCCESS; } -- cgit v1.2.1