platform/chrome: cros_ec_typec: Update mux flags during partner removal
authorPrashant Malani <pmalani@chromium.org>
Tue, 8 Feb 2022 18:47:24 +0000 (18:47 +0000)
committerPrashant Malani <pmalani@chromium.org>
Tue, 15 Feb 2022 19:50:30 +0000 (19:50 +0000)
In cros_typec_remove_partner(), we call
cros_typec_usb_disconnect_state() which sets the switches/muxes to be in
a disconnected state. This also happens in cros_typec_configure_mux().
However, unlike there, here the mux_flags variable hasn't been updated
to reflect that a disconnection has occurred. Update the flag here
accordingly.

Signed-off-by: Prashant Malani <pmalani@chromium.org>
Reviewed-by: Tzung-Bi Shih <tzungbi@google.com>
Link: https://lore.kernel.org/chrome-platform/20220208184721.1697194-5-pmalani@chromium.org/
drivers/platform/chrome/cros_ec_typec.c

index 3019e29f200d5e3711e8e3166a611947ef32d9ed..4bd2752c0823869ac7794ada3661eca23963d0b8 100644 (file)
@@ -228,6 +228,7 @@ static void cros_typec_remove_partner(struct cros_typec_data *typec,
        cros_typec_unregister_altmodes(typec, port_num, true);
 
        cros_typec_usb_disconnect_state(port);
+       port->mux_flags = USB_PD_MUX_NONE;
 
        typec_unregister_partner(port->partner);
        port->partner = NULL;