Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

usb: chipidea: otg: not wait vbus drop if use role_switch

The usb role switch will update ID and VBUS states at the same time, and
vbus will not drop when execute data role swap in Type-C usecase. So lets
not wait vbus drop in usb role switch case too.

Fixes: e1b5d2bed67c ("usb: chipidea: core: handle usb role switch in a common way")
Cc: stable@vger.kernel.org
Acked-by: Peter Chen <peter.chen@kernel.org>
Reviewed-by: Jun Li <jun.li@nxp.com>
Signed-off-by: Xu Yang <xu.yang_2@nxp.com>
Link: https://patch.msgid.link/20260402071457.2516021-3-xu.yang_2@nxp.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

authored by

Xu Yang and committed by
Greg Kroah-Hartman
a4e99587 b94b631d

+2 -2
+2 -2
drivers/usb/chipidea/otg.c
··· 190 190 191 191 ci_role_stop(ci); 192 192 193 - if (role == CI_ROLE_GADGET && 194 - IS_ERR(ci->platdata->vbus_extcon.edev)) 193 + if (role == CI_ROLE_GADGET && !ci->role_switch && 194 + IS_ERR(ci->platdata->vbus_extcon.edev)) 195 195 /* 196 196 * Wait vbus lower than OTGSC_BSV before connecting 197 197 * to host. If connecting status is from an external