Messages in this thread | | | From | "Rafael J. Wysocki" <> | Subject | Re: [PATCH v11 2/4] PM / Domains: add setter for dev.pm_domain | Date | Fri, 08 Jan 2016 01:20:08 +0100 |
| |
On Thursday, January 07, 2016 03:47:01 PM Tomeu Vizoso wrote: > On 10 November 2015 at 10:33, Daniel Kurtz <djkurtz@chromium.org> wrote: > [snip] > > > > The problem appears to be that: > > * On boot, platform_drv_probe() calls dev_pm_domain_attach() before > > drv->probe(); thus, it calls dev_pm_domain_attach() while the device > > is unbound. > > > > * However, for a platform_device, the reboot path calls > > device_shutdown(), but not __device_release_driver(): > > device_shutdown() > > dev->driver->shutdown => platform_drv_shutdown() > > dev_pm_domain_detach() > > dev->pm_domain->detach() => genpd_dev_pm_detach() > > pm_genpd_remove_device() > > dev_pm_domain_set(dev, NULL); > > > > So, for a platform_device in a genpd power domain with .shutdown > > installed, platform_drv_shutdown() calls dev_pm_domain_detach() while > > the device is still bound, which triggers the WARN(). > > Hi Rafael, Alan and Ulf, > > do you have any suggestion about this? I don't really understand why > the device is detached from the domain on shutdown.
Well, this looks like a bug to me.
Thanks, Rafael
| |