Messages in this thread | | | Subject | Re: [PATCH 1/5] drm/omap: Fix suspend resume regression after platform data removal | From | Tomi Valkeinen <> | Date | Wed, 3 Jun 2020 15:33:43 +0300 |
| |
Hi Tony,
On 31/05/2020 22:39, Tony Lindgren wrote: > When booting without legacy platform data, we no longer have omap_device > calling PM runtime suspend for us on suspend. This causes the driver > context not be saved as we have no suspend and resume functions defined. > > Let's fix the issue by switching over to use UNIVERSAL_DEV_PM_OPS as it > will call the existing PM runtime suspend functions on suspend.
I don't think we can use UNIVERSAL_DEV_PM_OPS, as we can't disable DSS modules in any order, but things have to be shut down in orderly manner.
omapdrm hasn't relied on omap_device calling runtime suspend for us (I didn't know it does that). We have system suspend hooks in omap_drv.c:
SIMPLE_DEV_PM_OPS(omapdrm_pm_ops, omap_drm_suspend, omap_drm_resume)
omap_drm_suspend() is supposed to turn off the displays, which then cause dispc_runtime_put (and other runtime_puts) to be called, which result in dispc_runtime_suspend (and other runtime PM suspends).
So... For some reason that's no longer happening? I need to try to find a board with which suspend/resume works (without DSS)...
Tomi
-- Texas Instruments Finland Oy, Porkkalankatu 22, 00180 Helsinki. Y-tunnus/Business ID: 0615521-4. Kotipaikka/Domicile: Helsinki
| |