Some ASIC support low-power functionality for the whole ASIC or just an IP block. When in such low-power mode, some sysfs interfaces would report a frequency of 0, e.g., $cat /sys/class/drm/card0/device/pp_dpm_sclk 0: 500Mhz 1: 0Mhz * 2: 2200Mhz $_ An operating frequency of 0 MHz doesn't make sense, and this interface is designed to report only operating clock frequencies, i.e. non-zero, and possibly the current one. When in this low-power state, round to the smallest operating frequency, for this interface, as follows, $cat /sys/class/drm/card0/device/pp_dpm_sclk 0: 500Mhz * 1: 2200Mhz $_ Luben Tuikov (5): drm/amd/pm: Slight function rename drm/amd/pm: Rename cur_value to curr_value drm/amd/pm: Rename freq_values --> freq_value dpm/amd/pm: Sienna: 0 MHz is not a current clock frequency dpm/amd/pm: Navi10: 0 MHz is not a current clock frequency .../gpu/drm/amd/pm/swsmu/smu11/navi10_ppt.c | 60 +++++++++------ .../amd/pm/swsmu/smu11/sienna_cichlid_ppt.c | 73 ++++++++++++------- 2 files changed, 86 insertions(+), 47 deletions(-) -- 2.33.1.558.g2bd2f258f4