Async runtime put in __device_release_driver()

From: Tomi Valkeinen
Date: Wed Oct 23 2013 - 06:12:12 EST


Hi,

I was debugging why clocks were left enabled after removing omapdss
driver, and I found this commit:

fa180eb448fa263cf18dd930143b515d27d70d7b (PM / Runtime: Idle devices
asynchronously after probe|release)

I don't understand how that is supposed to work.

When a driver is removed, instead of using pm_runtime_put_sync() the
commit uses pm_runtime_put(), so the runtime_suspend call is queued. But
who is going to handle the queued suspend call, as the driver is already
removed? At least in my case, obviously nobody, as I only get
runtime_resume call in my driver, never the runtime_suspend.

Is there something I need to add to my driver to make this work, or
should that part of the patch be reverted?

Tomi

Attachment: signature.asc
Description: OpenPGP digital signature