• Xiaojian Du's avatar
    drm/amd/pm: modify the fine grain tuning function for Renoir · 08da4fcd
    Xiaojian Du authored
    This patch is to improve the fine grain tuning function for Renoir.
    The fine grain tuning function uses the sysfs node -- pp_od_clk_voltage
    to config gfxclk. Meanwhile, another sysfs
    node -- power_dpm_force_perfomance_level also affects the gfx clk.
    It will cause confusion when these two sysfs nodes works
    together.
    And the flag "od_enabled" is used to control the overdrive function for
    dGPU, like navi10, navi14 and navi21.
    APU like Renior or Vangogh uses this "od_enabled" to configure
    the frequency range of gfx clock, but the max value of frequency
    range will not be higher than the safe limit, it is not "overdrive".
    So this patch adds two new flags -- "fine_grain_enabled" and
    "fine_grain_started" to avoid this confusion, the flag will
    make these two sysfs nodes work separately.
    The flag "fine_grain_enabled" is set as "enabled" by default,
    so the fine grain tuning function will be enabled by default.
    But the flag "fine_grain_started" is set as "false" by default,
    so the fine grain function will not take effect until it is set as
    "true".
    Only when power_dpm_force_perfomance_level is changed to
    "manual" mode, the flag "fine_grain_started" will be set as "true",
    and the fine grain tuning function will be started.
    In other profile modes, including "auto", "high", "low", "profile_peak",
    "profile_standard", "profile_min_sclk", "profile_min_mclk",
    the flag "fine_grain_started" will be set as "false", and the od range of
    fine grain tuning function will be restored default value.
    Signed-off-by: default avatarXiaojian Du <Xiaojian.Du@amd.com>
    Reviewed-by: default avatarHuang Rui <ray.huang@amd.com>
    Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
    08da4fcd
amdgpu_pm.c 105 KB