1. Jul 10, 2018
  2. Jul 07, 2018
  3. Jul 06, 2018
  4. Jul 05, 2018
    • Ayan Kumar Halder's avatar
      drm/arm/malidp: Added the late system pm functions · e368fc75
      Ayan Kumar Halder authored
      
      
      malidp_pm_suspend_late checks if the runtime status is not suspended
      and if so, invokes malidp_runtime_pm_suspend which disables the
      display engine/core interrupts and the clocks. It sets the runtime status
      as suspended.
      
      The difference between suspend() and suspend_late() is as follows:-
      1. suspend() makes the device quiescent. In our case, we invoke the DRM
      helper which disables the CRTC. This would have invoked runtime pm
      suspend but the system suspend process disables runtime pm.
      2. suspend_late() It continues the suspend operations of the drm device
      which was started by suspend(). In our case, it performs the same functionality
      as runtime_suspend().
      
      The complimentary functions are resume() and resume_early(). In the case of
      resume_early(), we invoke malidp_runtime_pm_resume() which enables the clocks
      and the interrupts. It sets the runtime status as active. If the device was
      in runtime suspend mode before system suspend was called, pm_runtime_work()
      will put the device back in runtime suspended mode( after the complete system
      has been resumed).
      
      Signed-off-by: default avatarAyan Kumar Halder <ayan.halder@arm.com>
      Acked-by: default avatarLiviu Dudau <liviu.dudau@arm.com>
      Signed-off-by: default avatarLiviu Dudau <liviu.dudau@arm.com>
      e368fc75