[PATCH 00/19] Enable BACO for power savings
Alex Deucher
alexdeucher at gmail.com
Fri Oct 11 01:45:17 UTC 2019
This patch set enables BACO (Bus Active Chip Off) for
power savings on VI+ asics. Similar to PowerXpress
and Hybrid Graphics (PX/HG) laptops, we can disable GPUs
at runtime when they are not in use is they support
BACO. The runtime pm code in amdgpu was originally
developed for PX/HG laptops, so it was pretty entangled
with the vga_switcheroo and ACPI code. Since the GPU
contains an audio codec for HDMI/DP, there is some
interaction with the hda driver. I am by no means an
expert on alsa, so any advice on those patches is much
appreciated. I had to enable runtime pm on the hda
device to allow the GPU to enter runtime pm because
they are linked.
These patches depend on the clean patches and CI/VI
BACO patches I sent out earlier today.
The full tree can be found here:
https://cgit.freedesktop.org/~agd5f/linux/log/?h=baco
TODO:
- Turn off runtime pm when KFD is active
- Make sure audio still works
- Make sure PX/HG still works
Alex Deucher (19):
drm/amdgpu: add asic callback for BACO support
drm/amdgpu: add supports_baco callback for soc15 asics.
drm/amdgpu: add supports_baco callback for SI asics.
drm/amdgpu: add supports_baco callback for CIK asics.
drm/amdgpu: add supports_baco callback for VI asics.
drm/amdgpu: add supports_baco callback for NV asics.
drm/amdgpu: add a amdgpu_device_supports_baco helper
drm/amdgpu: rename amdgpu_device_is_px to amdgpu_device_supports_boco
drm/amdgpu: add additional boco checks to runtime suspend/resume
drm/amdgpu: split swSMU baco_reset into enter and exit
drm/amdgpu: add helpers for baco entry and exit
drm/amdgpu: add baco support to runtime suspend/resume
drm/amdgpu: start to disentangle boco from runtime pm
drm/amdgpu: disentangle runtime pm and vga_switcheroo
drm/amdgpu: enable runtime pm on BACO capable boards if runpm=1
drm/amdgpu/runpm: enable runpm on baco capable VI+ asics
ALSA: hda/hdmi - fix vgaswitcheroo detection for AMD
ALSA: hda/hdmi - enable runtime pm for newer AMD display audio
ALSA: hda/hdmi - enable automatic runtime pm for AMD HDMI codecs by
default
drivers/gpu/drm/amd/amdgpu/amdgpu.h | 12 +-
drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 106 ++++++++++++++++--
drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c | 64 ++++++-----
drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c | 20 +++-
drivers/gpu/drm/amd/amdgpu/cik.c | 18 +++
drivers/gpu/drm/amd/amdgpu/nv.c | 18 ++-
drivers/gpu/drm/amd/amdgpu/si.c | 6 +
drivers/gpu/drm/amd/amdgpu/soc15.c | 37 +++++-
drivers/gpu/drm/amd/amdgpu/vi.c | 22 ++++
.../gpu/drm/amd/powerplay/inc/amdgpu_smu.h | 9 +-
drivers/gpu/drm/amd/powerplay/smu_v11_0.c | 12 +-
sound/pci/hda/hda_intel.c | 74 +++++++++++-
sound/pci/hda/patch_hdmi.c | 1 +
13 files changed, 343 insertions(+), 56 deletions(-)
--
2.20.1
More information about the amd-gfx
mailing list