mirror of
https://github.com/torvalds/linux.git
synced 2026-06-02 11:33:28 +02:00
usb: dwc3: qcom: Don't leave BCR asserted
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
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
cd0f8649d0
commit
ef8abc0ba4
|
|
@ -680,12 +680,12 @@ static int dwc3_qcom_probe(struct platform_device *pdev)
|
|||
ret = reset_control_deassert(qcom->resets);
|
||||
if (ret) {
|
||||
dev_err(&pdev->dev, "failed to deassert resets, err=%d\n", ret);
|
||||
goto reset_assert;
|
||||
return ret;
|
||||
}
|
||||
|
||||
ret = clk_bulk_prepare_enable(qcom->num_clocks, qcom->clks);
|
||||
if (ret < 0)
|
||||
goto reset_assert;
|
||||
return ret;
|
||||
|
||||
r = platform_get_resource(pdev, IORESOURCE_MEM, 0);
|
||||
if (!r) {
|
||||
|
|
@ -755,8 +755,6 @@ static int dwc3_qcom_probe(struct platform_device *pdev)
|
|||
dwc3_core_remove(&qcom->dwc);
|
||||
clk_disable:
|
||||
clk_bulk_disable_unprepare(qcom->num_clocks, qcom->clks);
|
||||
reset_assert:
|
||||
reset_control_assert(qcom->resets);
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
|
@ -771,7 +769,6 @@ static void dwc3_qcom_remove(struct platform_device *pdev)
|
|||
clk_bulk_disable_unprepare(qcom->num_clocks, qcom->clks);
|
||||
|
||||
dwc3_qcom_interconnect_exit(qcom);
|
||||
reset_control_assert(qcom->resets);
|
||||
}
|
||||
|
||||
static int dwc3_qcom_pm_suspend(struct device *dev)
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user