On Mon, Oct 11, 2021 at 02:32:29PM +0900, Hector Martin wrote: > On 06/10/2021 16.43, Krzysztof Kozlowski wrote: > > On 05/10/2021 17:59, Hector Martin wrote: > >> if (port) { > >> + pm_runtime_get_sync(&dev->dev); > > > > 1. You need to check return status. > > 2. Why do you need to resume the device here? > > As Rafael mentioned, this is basically disabling PM so the device is > enabled when not bound (which seems to be expected behavior). Not sure > what I'd do if the resume fails... this is the remove path after all, > it's not like we're doing anything else with the device at this point. You still need to disable the clocks before returning from remove(). Consider what happens when the driver is rebound otherwise. Johan