On Tue, Aug 02, 2022 at 05:13:57PM +0200, Johan Hovold wrote:
Generic PHYs must be powered-off before they can be tore down.
Similarly, suspending legacy PHYs after having powered them off makes no sense.
Fix the dwc3_core_exit() (e.g. called during suspend) and open-coded dwc3_probe() error-path sequences that got this wrong.
Note that this makes dwc3_core_exit() match the dwc3_core_init() error path with respect to powering off the PHYs.
Fixes: 03c1fd622f72 ("usb: dwc3: core: add phy cleanup for probe error handling") Fixes: c499ff71ff2a ("usb: dwc3: core: re-factor init and exit paths") Cc: stable@vger.kernel.org # 4.8 Signed-off-by: Johan Hovold johan+linaro@kernel.org
I also wondered about this earlier, but didn't take action.
Reviewed-by: Matthias Kaehlcke mka@chromium.org