[PATCH 00/51] Add amdgpu powerplay support
Alex Deucher
alexdeucher at gmail.com
Wed Nov 11 22:17:50 PST 2015
This patch set adds preliminary powerplay support for amdgpu.
The aim of this patch set is to eventually replace the existing
dpm support for VI parts. Support for Tonga, Fiji, and VI APUs
is included. The same sysfs and debugfs interfaces are supported so
it's configured the same way as previous asics.
You can force it on or off via the powerplay module parameter.
It is enabled by default for Tonga and Fiji.
The patches are also available here:
http://cgit.freedesktop.org/~agd5f/linux/log/?h=amdgpu-powerplay
Alex Deucher (3):
drm/amd/powerplay/tonga: enable pcie and mclk forcing for low
drm/amd/powerplay/fiji: enable pcie and mclk forcing for low
drm/amdgpu: extract pcie helpers to common header
Eric Huang (5):
drm/amd/powerplay: add/update headers for Fiji SMU and DPM
drm/amd/powerplay: update atomctrl for fiji
drm/amd/powerplay: add Fiji SMU support.
drm/amd/powerplay: add Fiji DPM support.
drm/amd/amdgpu: enable powerplay and smc firmware loading for Fiji.
Jammy Zhou (7):
drm/amd/powerplay: add SMU manager sub-component
drm/amd/powerplay: add hardware manager sub-component
drm/amd/powerplay: add Carrizo smu support
drm/amd/powerplay: add Carrizo dpm support
drm/amd/powerplay: Add Tonga SMU support
drm/amdgpu: add amdgpu.powerplay module option
drm/amdgpu: support per device powerplay enablement (v2)
Rex Zhu (32):
drm/amdgpu: share struct amdgpu_pm_state_type with powerplay module
drm/amdgpu: mv some definition from amdgpu_acpi.c to amdgpu_acpi.h
drm/amdgpu: mv amdgpu_acpi.h to amd/include/amd_acpi.h
drm/amdgpu: implement new cgs interface for acpi function
drm/amdgpu: implement cgs interface to query system info
drm/amdgpu: add new cgs interface to get display info (v2)
drm/amd/powerplay: add basic powerplay framework
drm/amdgpu: disable legacy path of firmware check if powerplay is
enabled
drm/amdgpu: export amd_powerplay_func to amdgpu and other ip block
drm/amd/powerplay: add CG and PG support for carrizo
drm/amd/powerplay: add event manager sub-component
drm/amd/powerplay: implement functions of amd_powerplay_func
drm/amdgpu/powerplay: add function point in hwmgr_funcs for program
display gap
drm/amdgpu/poweprlay: export program display gap function to eventmgr
drm/amdgpu/powerplay: implement pem_task for
display_configuration_change
drm/amdgpu/powerplay: program display gap for tonga.
drm/amdgpu: enable powerplay module by default for tonga.
drm/amdgpu: enable powerplay module by default for fiji.
drm/amdgpu/powerplay: add some definition for other ip block to update
cg pg.
drm/amd/powerplay: add new function point in hwmgr_func for CG/PG.
drm/amd/powerplay: Add CG and PG support for tonga
drm/amdgpu/powerplay: add new function point in hwmgr_funcs for
thermal control
drm/amdgpu/powerplay: mv ppinterrupt.h to inc folder to share with
other submodule.
drm/amdgpu/powerplay: add thermal control interface in hwmgr.
drm/amdgpu/powerplay: enable thermal interrupt task in eventmgr.
drm/amdgpu/powerplay: implement thermal control for tonga.
drm/amdgpu/powerplay: implement fan control interface in
amd_powerplay_funcs
drm/amdgpu: export fan control functions to amdgpu
drm/amdgpu: enable sysfs interface for powerplay
drm/amd/powerplay: add and export hwmgr interface to eventmgr to check
hw states.
drm/amd/powerplay: implement new funcs to check current states for
tonga.
drm/amd/powerplay: refine the logic of whether need to update power
state.
yanyang1 (4):
drm/amd/powerplay: Add ixSWRST_COMMAND_1 in bif_5_0_d.h
drm/amd/powerplay: Move smu7*.h from amdgpu to powerplay.
drm/amd/powerplay: add header file for tonga smu and dpm
drm/amd/powerplay: add Tonga dpm support (v3)
drivers/gpu/drm/Kconfig | 1 +
drivers/gpu/drm/amd/amdgpu/Makefile | 12 +-
drivers/gpu/drm/amd/amdgpu/amdgpu.h | 110 +-
drivers/gpu/drm/amd/amdgpu/amdgpu_acpi.c | 58 +-
drivers/gpu/drm/amd/amdgpu/amdgpu_acpi.h | 445 -
drivers/gpu/drm/amd/amdgpu/amdgpu_atpx_handler.c | 2 +-
drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c | 286 +-
drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c | 6 +
drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c | 233 +-
drivers/gpu/drm/amd/amdgpu/amdgpu_powerplay.c | 297 +
drivers/gpu/drm/amd/amdgpu/amdgpu_powerplay.h | 33 +
drivers/gpu/drm/amd/amdgpu/cik.c | 11 +-
drivers/gpu/drm/amd/amdgpu/cz_ppsmc.h | 185 -
drivers/gpu/drm/amd/amdgpu/fiji_ppsmc.h | 182 -
drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c | 80 +-
drivers/gpu/drm/amd/amdgpu/sdma_v3_0.c | 24 +-
drivers/gpu/drm/amd/amdgpu/smu7.h | 170 -
drivers/gpu/drm/amd/amdgpu/smu7_discrete.h | 514 -
drivers/gpu/drm/amd/amdgpu/smu7_fusion.h | 300 -
drivers/gpu/drm/amd/amdgpu/smu8.h | 72 -
drivers/gpu/drm/amd/amdgpu/smu8_fusion.h | 127 -
drivers/gpu/drm/amd/amdgpu/smu_ucode_xfer_cz.h | 147 -
drivers/gpu/drm/amd/amdgpu/tonga_ppsmc.h | 198 -
drivers/gpu/drm/amd/amdgpu/vi.c | 9 +-
drivers/gpu/drm/amd/include/amd_acpi.h | 494 +
drivers/gpu/drm/amd/include/amd_pcie.h | 50 +
drivers/gpu/drm/amd/include/amd_pcie_helpers.h | 141 +
drivers/gpu/drm/amd/include/amd_shared.h | 21 +
.../gpu/drm/amd/include/asic_reg/bif/bif_5_0_d.h | 1 +
drivers/gpu/drm/amd/include/atombios.h | 79 +
drivers/gpu/drm/amd/include/cgs_common.h | 88 +-
drivers/gpu/drm/amd/powerplay/Kconfig | 6 +
drivers/gpu/drm/amd/powerplay/Makefile | 22 +
drivers/gpu/drm/amd/powerplay/amd_powerplay.c | 605 ++
drivers/gpu/drm/amd/powerplay/eventmgr/Makefile | 11 +
.../drm/amd/powerplay/eventmgr/eventactionchains.c | 288 +
.../drm/amd/powerplay/eventmgr/eventactionchains.h | 62 +
drivers/gpu/drm/amd/powerplay/eventmgr/eventinit.c | 195 +
drivers/gpu/drm/amd/powerplay/eventmgr/eventinit.h | 34 +
.../drm/amd/powerplay/eventmgr/eventmanagement.c | 215 +
.../drm/amd/powerplay/eventmgr/eventmanagement.h | 59 +
drivers/gpu/drm/amd/powerplay/eventmgr/eventmgr.c | 114 +
.../drm/amd/powerplay/eventmgr/eventsubchains.c | 405 +
.../drm/amd/powerplay/eventmgr/eventsubchains.h | 99 +
.../gpu/drm/amd/powerplay/eventmgr/eventtasks.c | 431 +
.../gpu/drm/amd/powerplay/eventmgr/eventtasks.h | 88 +
drivers/gpu/drm/amd/powerplay/eventmgr/psm.c | 118 +
drivers/gpu/drm/amd/powerplay/eventmgr/psm.h | 38 +
drivers/gpu/drm/amd/powerplay/hwmgr/Makefile | 14 +
.../drm/amd/powerplay/hwmgr/cz_clockpowergating.c | 252 +
.../drm/amd/powerplay/hwmgr/cz_clockpowergating.h | 37 +
drivers/gpu/drm/amd/powerplay/hwmgr/cz_hwmgr.c | 1417 +++
drivers/gpu/drm/amd/powerplay/hwmgr/cz_hwmgr.h | 317 +
.../drm/amd/powerplay/hwmgr/fiji_dyn_defaults.h | 105 +
drivers/gpu/drm/amd/powerplay/hwmgr/fiji_hwmgr.c | 4749 +++++++++
drivers/gpu/drm/amd/powerplay/hwmgr/fiji_hwmgr.h | 354 +
.../gpu/drm/amd/powerplay/hwmgr/fiji_powertune.c | 553 +
.../gpu/drm/amd/powerplay/hwmgr/fiji_powertune.h | 66 +
.../gpu/drm/amd/powerplay/hwmgr/functiontables.c | 154 +
.../gpu/drm/amd/powerplay/hwmgr/hardwaremanager.c | 246 +
drivers/gpu/drm/amd/powerplay/hwmgr/hwmgr.c | 228 +
drivers/gpu/drm/amd/powerplay/hwmgr/hwmgr_ppt.h | 105 +
drivers/gpu/drm/amd/powerplay/hwmgr/pp_acpi.c | 76 +
drivers/gpu/drm/amd/powerplay/hwmgr/ppatomctrl.c | 1185 +++
drivers/gpu/drm/amd/powerplay/hwmgr/ppatomctrl.h | 243 +
drivers/gpu/drm/amd/powerplay/hwmgr/ppevvmath.h | 617 ++
drivers/gpu/drm/amd/powerplay/hwmgr/pppcielanes.c | 64 +
drivers/gpu/drm/amd/powerplay/hwmgr/pppcielanes.h | 31 +
.../gpu/drm/amd/powerplay/hwmgr/processpptables.c | 1661 +++
.../gpu/drm/amd/powerplay/hwmgr/processpptables.h | 47 +
.../amd/powerplay/hwmgr/tonga_clockpowergating.c | 350 +
.../amd/powerplay/hwmgr/tonga_clockpowergating.h | 36 +
.../drm/amd/powerplay/hwmgr/tonga_dyn_defaults.h | 107 +
drivers/gpu/drm/amd/powerplay/hwmgr/tonga_hwmgr.c | 5966 +++++++++++
drivers/gpu/drm/amd/powerplay/hwmgr/tonga_hwmgr.h | 408 +
.../gpu/drm/amd/powerplay/hwmgr/tonga_powertune.h | 66 +
.../gpu/drm/amd/powerplay/hwmgr/tonga_pptable.h | 406 +
.../amd/powerplay/hwmgr/tonga_processpptables.c | 1129 ++
.../amd/powerplay/hwmgr/tonga_processpptables.h | 35 +
.../gpu/drm/amd/powerplay/hwmgr/tonga_thermal.c | 587 ++
.../gpu/drm/amd/powerplay/hwmgr/tonga_thermal.h | 60 +
drivers/gpu/drm/amd/powerplay/inc/amd_powerplay.h | 206 +
drivers/gpu/drm/amd/powerplay/inc/cz_ppsmc.h | 185 +
drivers/gpu/drm/amd/powerplay/inc/eventmanager.h | 109 +
drivers/gpu/drm/amd/powerplay/inc/eventmgr.h | 125 +
drivers/gpu/drm/amd/powerplay/inc/fiji_ppsmc.h | 412 +
drivers/gpu/drm/amd/powerplay/inc/fiji_pwrvirus.h | 10299 +++++++++++++++++++
.../gpu/drm/amd/powerplay/inc/hardwaremanager.h | 357 +
drivers/gpu/drm/amd/powerplay/inc/hwmgr.h | 765 ++
drivers/gpu/drm/amd/powerplay/inc/power_state.h | 200 +
drivers/gpu/drm/amd/powerplay/inc/pp_acpi.h | 28 +
drivers/gpu/drm/amd/powerplay/inc/pp_asicblocks.h | 47 +
drivers/gpu/drm/amd/powerplay/inc/pp_debug.h | 40 +
drivers/gpu/drm/amd/powerplay/inc/pp_feature.h | 67 +
drivers/gpu/drm/amd/powerplay/inc/pp_instance.h | 36 +
.../gpu/drm/amd/powerplay/inc/pp_power_source.h | 36 +
drivers/gpu/drm/amd/powerplay/inc/ppinterrupt.h | 46 +
drivers/gpu/drm/amd/powerplay/inc/smu7.h | 170 +
drivers/gpu/drm/amd/powerplay/inc/smu72.h | 664 ++
drivers/gpu/drm/amd/powerplay/inc/smu72_discrete.h | 760 ++
drivers/gpu/drm/amd/powerplay/inc/smu73.h | 720 ++
drivers/gpu/drm/amd/powerplay/inc/smu73_discrete.h | 799 ++
drivers/gpu/drm/amd/powerplay/inc/smu7_discrete.h | 514 +
drivers/gpu/drm/amd/powerplay/inc/smu7_fusion.h | 300 +
drivers/gpu/drm/amd/powerplay/inc/smu8.h | 72 +
drivers/gpu/drm/amd/powerplay/inc/smu8_fusion.h | 127 +
.../gpu/drm/amd/powerplay/inc/smu_ucode_xfer_cz.h | 147 +
.../gpu/drm/amd/powerplay/inc/smu_ucode_xfer_vi.h | 100 +
drivers/gpu/drm/amd/powerplay/inc/smumgr.h | 182 +
drivers/gpu/drm/amd/powerplay/inc/tonga_ppsmc.h | 420 +
drivers/gpu/drm/amd/powerplay/smumgr/Makefile | 9 +
drivers/gpu/drm/amd/powerplay/smumgr/cz_smumgr.c | 858 ++
drivers/gpu/drm/amd/powerplay/smumgr/cz_smumgr.h | 102 +
drivers/gpu/drm/amd/powerplay/smumgr/fiji_smumgr.c | 1035 ++
drivers/gpu/drm/amd/powerplay/smumgr/fiji_smumgr.h | 77 +
drivers/gpu/drm/amd/powerplay/smumgr/smumgr.c | 263 +
.../gpu/drm/amd/powerplay/smumgr/tonga_smumgr.c | 819 ++
.../gpu/drm/amd/powerplay/smumgr/tonga_smumgr.h | 53 +
118 files changed, 47406 insertions(+), 2580 deletions(-)
delete mode 100644 drivers/gpu/drm/amd/amdgpu/amdgpu_acpi.h
create mode 100644 drivers/gpu/drm/amd/amdgpu/amdgpu_powerplay.c
create mode 100644 drivers/gpu/drm/amd/amdgpu/amdgpu_powerplay.h
delete mode 100644 drivers/gpu/drm/amd/amdgpu/cz_ppsmc.h
delete mode 100644 drivers/gpu/drm/amd/amdgpu/fiji_ppsmc.h
delete mode 100644 drivers/gpu/drm/amd/amdgpu/smu7.h
delete mode 100644 drivers/gpu/drm/amd/amdgpu/smu7_discrete.h
delete mode 100644 drivers/gpu/drm/amd/amdgpu/smu7_fusion.h
delete mode 100644 drivers/gpu/drm/amd/amdgpu/smu8.h
delete mode 100644 drivers/gpu/drm/amd/amdgpu/smu8_fusion.h
delete mode 100644 drivers/gpu/drm/amd/amdgpu/smu_ucode_xfer_cz.h
delete mode 100644 drivers/gpu/drm/amd/amdgpu/tonga_ppsmc.h
create mode 100644 drivers/gpu/drm/amd/include/amd_acpi.h
create mode 100644 drivers/gpu/drm/amd/include/amd_pcie.h
create mode 100644 drivers/gpu/drm/amd/include/amd_pcie_helpers.h
create mode 100644 drivers/gpu/drm/amd/powerplay/Kconfig
create mode 100644 drivers/gpu/drm/amd/powerplay/Makefile
create mode 100644 drivers/gpu/drm/amd/powerplay/amd_powerplay.c
create mode 100644 drivers/gpu/drm/amd/powerplay/eventmgr/Makefile
create mode 100644 drivers/gpu/drm/amd/powerplay/eventmgr/eventactionchains.c
create mode 100644 drivers/gpu/drm/amd/powerplay/eventmgr/eventactionchains.h
create mode 100644 drivers/gpu/drm/amd/powerplay/eventmgr/eventinit.c
create mode 100644 drivers/gpu/drm/amd/powerplay/eventmgr/eventinit.h
create mode 100644 drivers/gpu/drm/amd/powerplay/eventmgr/eventmanagement.c
create mode 100644 drivers/gpu/drm/amd/powerplay/eventmgr/eventmanagement.h
create mode 100644 drivers/gpu/drm/amd/powerplay/eventmgr/eventmgr.c
create mode 100644 drivers/gpu/drm/amd/powerplay/eventmgr/eventsubchains.c
create mode 100644 drivers/gpu/drm/amd/powerplay/eventmgr/eventsubchains.h
create mode 100644 drivers/gpu/drm/amd/powerplay/eventmgr/eventtasks.c
create mode 100644 drivers/gpu/drm/amd/powerplay/eventmgr/eventtasks.h
create mode 100644 drivers/gpu/drm/amd/powerplay/eventmgr/psm.c
create mode 100644 drivers/gpu/drm/amd/powerplay/eventmgr/psm.h
create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/Makefile
create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/cz_clockpowergating.c
create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/cz_clockpowergating.h
create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/cz_hwmgr.c
create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/cz_hwmgr.h
create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/fiji_dyn_defaults.h
create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/fiji_hwmgr.c
create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/fiji_hwmgr.h
create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/fiji_powertune.c
create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/fiji_powertune.h
create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/functiontables.c
create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/hardwaremanager.c
create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/hwmgr.c
create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/hwmgr_ppt.h
create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/pp_acpi.c
create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/ppatomctrl.c
create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/ppatomctrl.h
create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/ppevvmath.h
create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/pppcielanes.c
create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/pppcielanes.h
create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/processpptables.c
create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/processpptables.h
create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/tonga_clockpowergating.c
create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/tonga_clockpowergating.h
create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/tonga_dyn_defaults.h
create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/tonga_hwmgr.c
create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/tonga_hwmgr.h
create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/tonga_powertune.h
create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/tonga_pptable.h
create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/tonga_processpptables.c
create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/tonga_processpptables.h
create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/tonga_thermal.c
create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/tonga_thermal.h
create mode 100644 drivers/gpu/drm/amd/powerplay/inc/amd_powerplay.h
create mode 100644 drivers/gpu/drm/amd/powerplay/inc/cz_ppsmc.h
create mode 100644 drivers/gpu/drm/amd/powerplay/inc/eventmanager.h
create mode 100644 drivers/gpu/drm/amd/powerplay/inc/eventmgr.h
create mode 100644 drivers/gpu/drm/amd/powerplay/inc/fiji_ppsmc.h
create mode 100644 drivers/gpu/drm/amd/powerplay/inc/fiji_pwrvirus.h
create mode 100644 drivers/gpu/drm/amd/powerplay/inc/hardwaremanager.h
create mode 100644 drivers/gpu/drm/amd/powerplay/inc/hwmgr.h
create mode 100644 drivers/gpu/drm/amd/powerplay/inc/power_state.h
create mode 100644 drivers/gpu/drm/amd/powerplay/inc/pp_acpi.h
create mode 100644 drivers/gpu/drm/amd/powerplay/inc/pp_asicblocks.h
create mode 100644 drivers/gpu/drm/amd/powerplay/inc/pp_debug.h
create mode 100644 drivers/gpu/drm/amd/powerplay/inc/pp_feature.h
create mode 100644 drivers/gpu/drm/amd/powerplay/inc/pp_instance.h
create mode 100644 drivers/gpu/drm/amd/powerplay/inc/pp_power_source.h
create mode 100644 drivers/gpu/drm/amd/powerplay/inc/ppinterrupt.h
create mode 100644 drivers/gpu/drm/amd/powerplay/inc/smu7.h
create mode 100644 drivers/gpu/drm/amd/powerplay/inc/smu72.h
create mode 100644 drivers/gpu/drm/amd/powerplay/inc/smu72_discrete.h
create mode 100644 drivers/gpu/drm/amd/powerplay/inc/smu73.h
create mode 100644 drivers/gpu/drm/amd/powerplay/inc/smu73_discrete.h
create mode 100644 drivers/gpu/drm/amd/powerplay/inc/smu7_discrete.h
create mode 100644 drivers/gpu/drm/amd/powerplay/inc/smu7_fusion.h
create mode 100644 drivers/gpu/drm/amd/powerplay/inc/smu8.h
create mode 100644 drivers/gpu/drm/amd/powerplay/inc/smu8_fusion.h
create mode 100644 drivers/gpu/drm/amd/powerplay/inc/smu_ucode_xfer_cz.h
create mode 100644 drivers/gpu/drm/amd/powerplay/inc/smu_ucode_xfer_vi.h
create mode 100644 drivers/gpu/drm/amd/powerplay/inc/smumgr.h
create mode 100644 drivers/gpu/drm/amd/powerplay/inc/tonga_ppsmc.h
create mode 100644 drivers/gpu/drm/amd/powerplay/smumgr/Makefile
create mode 100644 drivers/gpu/drm/amd/powerplay/smumgr/cz_smumgr.c
create mode 100644 drivers/gpu/drm/amd/powerplay/smumgr/cz_smumgr.h
create mode 100644 drivers/gpu/drm/amd/powerplay/smumgr/fiji_smumgr.c
create mode 100644 drivers/gpu/drm/amd/powerplay/smumgr/fiji_smumgr.h
create mode 100644 drivers/gpu/drm/amd/powerplay/smumgr/smumgr.c
create mode 100644 drivers/gpu/drm/amd/powerplay/smumgr/tonga_smumgr.c
create mode 100644 drivers/gpu/drm/amd/powerplay/smumgr/tonga_smumgr.h
--
1.8.3.1
More information about the dri-devel
mailing list