On Tue, Apr 04, 2023, Johan Hovold wrote: > When reviewing the dwc3 runtime PM implementation I noticed that the > probe error handling and unbind code was broken. The first two patches > addresses the corresponding imbalances. > > The probe error handling has suffered from some bit rot over years and > an attempt to clean it up lead to the realisation that the code dealing > with the "hibernation" feature was both broken and had never been used. > Rather than try to fix up something which has never been used since it > was first merged ten years ago, let's get rid of this dead code until > there is a mainline user (and a complete implementation). > > The rest of the series clean up probe and core initialisation by using > descriptive error labels and adding a few helper functions to improve > readability which will hopefully help prevent similar bugs from being > introduced in the future. > > Johan > > > Johan Hovold (11): > USB: dwc3: fix runtime pm imbalance on probe errors > USB: dwc3: fix runtime pm imbalance on unbind > USB: dwc3: disable autosuspend on unbind > USB: dwc3: gadget: drop dead hibernation code > USB: dwc3: drop dead hibernation code > USB: dwc3: clean up probe error labels > USB: dwc3: clean up phy init error handling > USB: dwc3: clean up core init error handling > USB: dwc3: refactor phy handling > USB: dwc3: refactor clock lookups > USB: dwc3: clean up probe declarations > > drivers/usb/dwc3/core.c | 426 ++++++++++++++++---------------------- > drivers/usb/dwc3/core.h | 8 - > drivers/usb/dwc3/gadget.c | 46 +--- > 3 files changed, 182 insertions(+), 298 deletions(-) > > -- > 2.39.2 > Thanks for the cleanup work. I've reviewed some patches, but still need to spend some more time reviewing the runtime changes. Thanks, Thinh