Set up APUs to follow similar policies as dGPUs in that they can
potentially runtime suspend.  If an APU is runtime suspended then
prepare it for the matching system state (s0ix or s3) so that steps
can be skipped when runtime suspended.

The thought with this series is that if the compositor has turned
off displays and no other work is running an APU's GPU can enter
runtime PM. If the system later enters system suspend the GPU steps
can be skipped because the GPU is already in the runtime PM state
to match the intended system state.

It's important to note that default runtime PM policy will prevent
entering runtime PM when displays are connected. This can be changed
by setting amdgpu.runpm=-2.

This series isn't yet tested, I just share it for feedback on
the approach. If anyone wants to test it as well, please feel free.

Cc: Antheas Kapenekakis <[email protected]>

Mario Limonciello (AMD) (1):
  drm/amd: Expand runtime suspend to APUs

 drivers/gpu/drm/amd/amdgpu/amdgpu_device.c |  6 ++++++
 drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c    | 17 +++++++++++++++--
 drivers/gpu/drm/amd/pm/inc/amdgpu_dpm.h    |  1 +
 3 files changed, 22 insertions(+), 2 deletions(-)

-- 
2.43.0

Reply via email to