v2: - Add patch 0003 to check whether vbios can support OD - Add patch 0004 to disable OD feature on CI/Iceland temporary - Check clk against OverDrive limits from VBIOS - Check voltage between level0 - 2000mV - Set OD flag when user commit the setting - Print the right clk/voltage range when user's setting out of range - refine OD flag's update when set power state OD feature is disabled by default. can be enabled by module parameter ppfeaturemask=0x7fff (ppfeaturemask default value is 0x3fff) Add new sysfs pp_od_clk_voltage. cat pp_od_clk_voltage output as OD_SCLK: 0: 300Mhz 800 mV 1: 466Mhz 818 mV 2: 751Mhz 824 mV 3: 1019Mhz 987 mV 4: 1074Mhz 1037 mV 5: 1126Mhz 1087 mV 6: 1169Mhz 1137 mV 7: 1206Mhz 1150 mV OD_MCLK: 0: 300Mhz 800 mV 1: 1650Mhz 1000 mV user can change clock/voltage by echo "s/m level clock voltage">pp_od_clk_voltage to change the sclk/mclk clock/voltage value in od dpm table. and echo "c" to commit the user's setting when need to reset to default dpm table, echo "r" to restore the od dpm table echo "c" to commit the setting. the clock's range is level0-level7*1.2 the voltage range is level0-level7*1.2 Rex Zhu (7): drm/amd/pp: Add hwmgr interface for edit dpm table drm/amd/pp: Add edit/commit/show OD clock/voltage support in sysfs drm/amd/pp: Disable OD feature if VBIOS limits drm/amd/pp: Disable OD feature on CI/Iceland. drm/amd/pp: Implement edit_dpm_table on smu7 drm/amd/pp: Update smu7 dpm table with OD clock/voltage drm/amd/pp: Add update_avfs call when set_power_state drivers/gpu/drm/amd/amdgpu/amdgpu_dpm.h | 4 + drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c | 98 +++++- drivers/gpu/drm/amd/include/kgd_pp_interface.h | 8 + drivers/gpu/drm/amd/powerplay/amd_powerplay.c | 19 ++ drivers/gpu/drm/amd/powerplay/hwmgr/hwmgr.c | 2 + .../amd/powerplay/hwmgr/process_pptables_v1_0.c | 8 +- .../gpu/drm/amd/powerplay/hwmgr/processpptables.c | 11 +- drivers/gpu/drm/amd/powerplay/hwmgr/smu7_hwmgr.c | 366 ++++++++++++++------- .../amd/powerplay/hwmgr/vega10_processpptables.c | 8 +- drivers/gpu/drm/amd/powerplay/inc/hwmgr.h | 3 + drivers/gpu/drm/amd/powerplay/smumgr/fiji_smumgr.c | 18 +- .../drm/amd/powerplay/smumgr/polaris10_smumgr.c | 18 +- .../gpu/drm/amd/powerplay/smumgr/tonga_smumgr.c | 18 +- 13 files changed, 434 insertions(+), 147 deletions(-) -- 1.9.1