kernel_samsung_a53x/drivers/usb
Udipto Goswami 9eafb23160 UPSTREAM: usb: xhci: Implement xhci_handshake_check_state() helper
In some situations where xhci removal happens parallel to xhci_handshake,
we encounter a scenario where the xhci_handshake can't succeed, and it
polls until timeout.

If xhci_handshake runs until timeout it can on some platforms result in
a long wait which might lead to a watchdog timeout.

Add a helper that checks xhci status during the handshake, and exits if
set state is entered. Use this helper in places where xhci_handshake is
called unlocked and has a long timeout. For example  xhci command timeout
and xhci reset.

[commit message and code comment rewording -Mathias]

Signed-off-by: Udipto Goswami <quic_ugoswami@quicinc.com>
Signed-off-by: Mathias Nyman <mathias.nyman@linux.intel.com>
Link: https://lore.kernel.org/r/20231019102924.2797346-18-mathias.nyman@linux.intel.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

Bug: 383443034
Change-Id: Iec54af32dcf6b07075e3f084dba914fc43635ee6
(cherry picked from commit 6ccb83d6c4972ebe6ae49de5eba051de3638362c)
Signed-off-by: Faisal Hassan <quic_faisalh@quicinc.com>
2025-01-19 19:55:41 +01:00
..
atm usb: atm: cxacru: fix endpoint checking in cxacru_bind() 2024-11-19 14:19:34 +01:00
c67x00
cdns3 usb: cdns3: Add quirk flag to enable suspend residency 2025-01-15 16:29:40 +01:00
chipidea usb: chipidea: udc: handle USB Error Interrupt if IOC not set 2024-12-17 13:24:32 +01:00
class Revert "USB: usbtmc: prevent kernel-usb-infoleak" 2024-11-24 00:23:31 +01:00
common
core usb: core: sysfs: Unmerge @usb3_hardware_lpm_attr_group in remove_power_attributes() 2024-11-23 23:20:55 +01:00
dwc2 usb: dwc2: gadget: Don't write invalid mapped sg entries into dma_desc with iommu enabled 2025-01-15 16:29:40 +01:00
dwc3 usb: dwc3: gadget: Fix looping of queued SG entries 2024-12-17 13:24:20 +01:00
early
gadget usb: gadget: u_serial: Fix the issue that gs_start_io crashed due to accessing null pointer 2025-01-02 17:00:49 +01:00
host UPSTREAM: usb: xhci: Implement xhci_handshake_check_state() helper 2025-01-19 19:55:41 +01:00
image
isp1760
misc USB: chaoskey: Fix possible deadlock chaoskey_list_lock 2024-12-17 13:24:16 +01:00
mon
mtu3
musb usb: musb: sunxi: Fix accessing an released usb phy 2024-11-30 02:33:26 +01:00
notify
notify_lsi
phy usb: phy: Fix API devm_usb_put_phy() can not release the phy 2024-11-23 23:22:04 +01:00
renesas_usbhs
roles
serial USB: serial: option: add MediaTek T7XX compositions 2025-01-15 16:29:41 +01:00
storage usb: uas: set host status byte on data completion error 2025-01-19 00:10:01 +01:00
typec drivers: sm5714_typec.c: Specify enum typec_port_type 2024-12-17 21:57:37 +01:00
usbip usbip: Don't submit special requests twice 2024-11-23 23:20:58 +01:00
Kconfig
Kconfig.variant1
Makefile
Makefile.variant1
usb-skeleton.c