platform/chrome: cros_ec_typec: Configure muxes at start of port update
authorPrashant Malani <pmalani@chromium.org>
Tue, 8 Feb 2022 18:47:22 +0000 (18:47 +0000)
committerPrashant Malani <pmalani@chromium.org>
Tue, 15 Feb 2022 19:50:04 +0000 (19:50 +0000)
commitaf34f115b3b74cf70d8842c436374b08feada143
tree1d37689df4c9b3e741b0a6280276407be7037591
parent0d8495dc0321ff1f9f3d50edfa45c7f34194d0c6
platform/chrome: cros_ec_typec: Configure muxes at start of port update

There are situations where the mux state reported by the Embedded
Controller (EC), might lag the partner "connected" state. So, the mux
state might still suggest that a partner is connected, while the PD
"connected" state, being in Try.SNK (for example) suggests that the
partner is disconnected.

In such a scenario, we will end up sending a disconnect command to the
mux driver, followed by a connect command, since the mux is configured
later. Avoid this by configuring the mux before
registering/disconnecting a partner.

Signed-off-by: Prashant Malani <pmalani@chromium.org>
Reviewed-by: Benson Leung <bleung@chromium.org>
Link: https://lore.kernel.org/chrome-platform/20220208184721.1697194-4-pmalani@chromium.org/
drivers/platform/chrome/cros_ec_typec.c