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 _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/dri-devel