linux/drivers/usb/dwc3
Krishna Kurapati 75747e25be usb: dwc3: qcom: Don't leave BCR asserted
commit ef8abc0ba4 upstream.

Leaving the USB BCR asserted prevents the associated GDSC to turn on. This
blocks any subsequent attempts of probing the device, e.g. after a probe
deferral, with the following showing in the log:

[    1.332226] usb30_prim_gdsc status stuck at 'off'

Leave the BCR deasserted when exiting the driver to avoid this issue.

Cc: stable <stable@kernel.org>
Fixes: a4333c3a6b ("usb: dwc3: Add Qualcomm DWC3 glue driver")
Acked-by: Thinh Nguyen <Thinh.Nguyen@synopsys.com>
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Signed-off-by: Krishna Kurapati <krishna.kurapati@oss.qualcomm.com>
Link: https://lore.kernel.org/r/20250709132900.3408752-1-krishna.kurapati@oss.qualcomm.com
[ adapted to individual clock management instead of bulk clock operations ]
Signed-off-by: Sasha Levin <sashal@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
History 2025-07-24 08:56:36 +02:00
..
core.c usb: dwc3: Abort suspend on soft disconnect failure 2025-07-10 16:05:11 +02:00
core.h usb: dwc3: gadget: Make gadget_wakeup asynchronous 2025-05-18 08:24:54 +02:00
debug.h usb: dwc3: Add function suspend and function wakeup support 2023-03-29 10:27:01 +02:00
debugfs.c usb: dwc3: debugfs: Resume dwc3 before accessing registers 2023-05-13 17:56:22 +09:00
drd.c usb: dwc3: Set SUSPENDENABLE soon after phy init 2025-03-13 13:02:11 +01:00
dwc3-am62.c usb: dwc3-am62: Fix an OF node leak in phy_syscon_pll_refclk() 2025-02-08 09:58:14 +01:00
dwc3-exynos.c usb: dwc3: exynos: add support for Google Tensor gs101 2024-04-30 19:32:06 +02:00
dwc3-haps.c usb: dwc3: haps: Constify the software node 2021-02-04 15:42:06 +01:00
dwc3-imx8mp.c usb: dwc3: imx8mp: fix software node kernel dump 2024-12-19 18:13:05 +01:00
dwc3-keystone.c usb: dwc3: remove unnecessary platform_set_drvdata() 2023-08-22 14:45:19 +02:00
dwc3-meson-g12a.c usb: dwc3: meson-g12a: do post init to fix broken usb after resumption 2023-08-22 14:44:09 +02:00
dwc3-octeon.c usb: dwc3: Use of_property_read_variable_u32_array() to read "power" 2024-08-07 12:51:20 +02:00
dwc3-of-simple.c usb: dwc3: of-simple: Add compatible for hi3798mv200 DWC3 controller 2024-03-05 13:23:05 +00:00
dwc3-omap.c usb: dwc3: omap: add missing depopulate in probe error path 2024-08-22 17:29:16 +08:00
dwc3-pci.c usb: dwc3: gadget: Avoid using reserved endpoints on Intel Merrifield 2025-05-02 07:59:17 +02:00
dwc3-qcom.c usb: dwc3: qcom: Don't leave BCR asserted 2025-07-24 08:56:36 +02:00
dwc3-rtk.c usb: dwc3: rtk: Clean up error code in __get_dwc3_maximum_speed() 2024-09-13 07:41:12 +02:00
dwc3-st.c usb: dwc3: st: simplify pdev->dev usage 2024-09-03 09:52:45 +02:00
dwc3-xilinx.c usb: dwc3: xilinx: Prevent spike in reset signal 2025-05-02 07:59:13 +02:00
ep0.c usb: dwc3: ep0: Don't clear ep0 DWC3_EP_TRANSFER_STARTED 2024-12-05 14:03:00 +01:00
gadget.c usb: dwc3: Abort suspend on soft disconnect failure 2025-07-10 16:05:11 +02:00
gadget.h Merge 6.8-rc5 into usb-next 2024-02-19 09:13:29 +01:00
host.c usb: dwc3: Support quirk for writing high-low order 2024-06-20 19:30:30 +02:00
io.h usb: dwc3: fix incorrect kernel-doc comment syntax in files 2021-04-02 15:20:51 +02:00
Kconfig usb: dwc3: qcom: Remove ACPI support from glue driver 2024-03-05 13:06:14 +00:00
Makefile usb: dwc3: add Realtek DHC RTD SoC dwc3 glue layer driver 2023-10-02 14:05:24 +02:00
trace.c usb: dwc3: fix incorrect kernel-doc comment syntax in files 2021-04-02 15:20:51 +02:00
trace.h tracing/treewide: Remove second parameter of __assign_str() 2024-05-22 20:14:47 -04:00
ulpi.c usb: dwc3: ulpi: Fix USB2.0 HS/FS/LS PHY suspend regression 2020-12-28 15:55:44 +01:00