On 02/07/2017 04:19 PM, Ulf Hansson wrote: > [...] > >>> >>> >>> Unfortunate, I am still not fully understanding the scenarios. As you >>> indicate, the problem seems related to wakeup settings. >>> >>> Could you please try to answer the below questions, hopefully it helps >>> me to better understand. >>> >>> 1) >>> While starting the system suspend sequence, under what circumstances >>> are you expecting the vdd_gpu and pd_gpu to be powered on? >>> >> >> I don't want to power on the vdd_gpu and pd_gpu during the system suspend >> sequence. >> I hope the pd_gpu and vdd_gpu power on/off just by gpu device. > > Let me rephrase my question. > > Can the vdd_gpu/pd_gpu ever remain in a powered on state while the > system is suspended? > NO, the vdd_gpu/pd_gpu ever remain in a powered off state while the system is suspended. > If yes, when is that the case? > >> >>> 2) >>> While starting the system suspend sequence, under what circumstances >>> are you expecting the vdd_gpu and the pd_gpu to be powered off? >>> >> >> I don't want to power off the vdd_gpu and pd_gpu during the system suspend >> sequence. >> Because before the system suspend,the vdd_gpu and pd_gpu has been power off >> by gpu device(pm_ruantime_put). > > *Exactly*, how do you guarantee that a pm_runtime_put() for the gpu > device triggers a runtime suspend - before a system suspend sequence > starts? > > For example, userspace may via sysfs prevent runtime suspend for any > device with runtime PM enabled. > Yes, you are right.I did't consider this. Whether on or off pd_gpu, the vdd_gpu is must be enabled.How to deal with the enable/disable the vdd_gpu? our process in devices/platform/ff9a0000.gpu: device init pm_runtime_enable() gpu_power_on regulator_enable(vdd_gpu) pm_runtime_get_sync(pd_gpu) gpu_power_off pm_runtime_put_sync(pd_gpu) regulator_disable(vdd_gpu) device remove pm_runtime_disable() >> >>> 3) >>> What devices are attached to vdd_gpu? >>> >> just pd_gpu >>> >>> 4) >>> What devices are attached to pd_gpu? >>> >> just gpu device(mali driver) >> >> vdd_gpu >> ------- pd_gpu >> ----------------devices/platform/ff9a0000.gpu >>> >>> > > Thanks for these details, very useful! > > [...] > > Kind regards > Uffe > > >