[PATCH 00/15] Add BACO support for CI/VI asics
Alex Deucher
alexdeucher at gmail.com
Fri Oct 11 01:21:20 UTC 2019
This patch set enables BACO CI and VI asics. BACO is
Bus Active Chip Off. It allows us to turn off the GPU
while still keeping the bus interface up, so the device
does not disappear from the system. PowerXpress and
Hybrid Graphics laptops support BOCO (Bus Off Chip Off)
which is controlled by ACPI. BACO was conceived as
a power saving feature, but we also use it for reset
since the chip gets powered down. These patches are
a pre-requisite for using BACO as a power saving
feature which will follow in another patch set.
BACO is working well on VI parts. I haven't gotten
it working yet on CI parts, but I'm including the
code for reference if anyone wants to play with it.
Alex Deucher (15):
drm/amdgpu: add new BIF 4.1 register for BACO
drm/amdgpu: add new BIF 5.0 register for BACO
drm/amdgpu: add new SMU 7.0.1 registers for BACO
drm/amdgpu: add new SMU 7.1.2 registers for BACO
drm/amdgpu: add new SMU 7.1.3 registers for BACO
drm/amdgpu/powerplay: add core support for pre-SOC15 baco
drm/amdgpu/powerplay: add support for BACO on tonga
drm/amdgpu/powerplay: add support for BACO on Iceland
drm/amdgpu/powerplay: add support for BACO on polaris
drm/amdgpu/powerplay: add support for BACO on VegaM
drm/amdgpu/powerplay: add support for BACO on Fiji
drm/amdgpu/powerplay: add support for BACO on CI
drm/amdgpu/powerplay: split out common smu7 BACO code
drm/amdgpu/powerplay: wire up BACO to powerplay API for smu7
drm/amdgpu: enable BACO reset for SMU7 based dGPUs (v2)
drivers/gpu/drm/amd/amdgpu/cik.c | 48 +++-
drivers/gpu/drm/amd/amdgpu/cik.h | 3 +
drivers/gpu/drm/amd/amdgpu/vi.c | 84 ++++++-
drivers/gpu/drm/amd/amdgpu/vi.h | 3 +
.../drm/amd/include/asic_reg/bif/bif_4_1_d.h | 1 +
.../include/asic_reg/bif/bif_4_1_sh_mask.h | 2 +
.../drm/amd/include/asic_reg/bif/bif_5_0_d.h | 1 +
.../include/asic_reg/bif/bif_5_0_sh_mask.h | 2 +
.../amd/include/asic_reg/smu/smu_7_0_1_d.h | 1 +
.../include/asic_reg/smu/smu_7_0_1_sh_mask.h | 2 +
.../amd/include/asic_reg/smu/smu_7_1_2_d.h | 1 +
.../include/asic_reg/smu/smu_7_1_2_sh_mask.h | 2 +
.../amd/include/asic_reg/smu/smu_7_1_3_d.h | 1 +
.../include/asic_reg/smu/smu_7_1_3_sh_mask.h | 2 +
drivers/gpu/drm/amd/powerplay/hwmgr/Makefile | 3 +-
drivers/gpu/drm/amd/powerplay/hwmgr/ci_baco.c | 195 +++++++++++++++
drivers/gpu/drm/amd/powerplay/hwmgr/ci_baco.h | 29 +++
.../gpu/drm/amd/powerplay/hwmgr/common_baco.c | 19 ++
.../gpu/drm/amd/powerplay/hwmgr/common_baco.h | 13 +
.../gpu/drm/amd/powerplay/hwmgr/fiji_baco.c | 196 +++++++++++++++
.../gpu/drm/amd/powerplay/hwmgr/fiji_baco.h | 29 +++
.../drm/amd/powerplay/hwmgr/polaris_baco.c | 222 +++++++++++++++++
.../drm/amd/powerplay/hwmgr/polaris_baco.h | 29 +++
.../gpu/drm/amd/powerplay/hwmgr/smu7_baco.c | 91 +++++++
.../gpu/drm/amd/powerplay/hwmgr/smu7_baco.h | 32 +++
.../gpu/drm/amd/powerplay/hwmgr/smu7_hwmgr.c | 4 +
.../gpu/drm/amd/powerplay/hwmgr/tonga_baco.c | 231 ++++++++++++++++++
.../gpu/drm/amd/powerplay/hwmgr/tonga_baco.h | 29 +++
28 files changed, 1264 insertions(+), 11 deletions(-)
create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/ci_baco.c
create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/ci_baco.h
create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/fiji_baco.c
create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/fiji_baco.h
create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/polaris_baco.c
create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/polaris_baco.h
create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/smu7_baco.c
create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/smu7_baco.h
create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/tonga_baco.c
create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/tonga_baco.h
--
2.20.1
More information about the amd-gfx
mailing list