[Bug 96487] Cannot force power_dpm_force_performance_level to high

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Mon Jun 13 16:08:52 UTC 2016


https://bugs.freedesktop.org/show_bug.cgi?id=96487

--- Comment #6 from Alex Deucher <alexdeucher at gmail.com> ---
The hardware automatically adjusts the clock speeds on demand based on GPU load
when in auto mode.  Trinity/richland chips do not support forcing to high.

>From the driver code in trinity_dpm.c:

int trinity_dpm_force_performance_level(struct radeon_device *rdev,
                                        enum radeon_dpm_forced_level level)
{
        struct trinity_power_info *pi = trinity_get_pi(rdev);
        struct radeon_ps *rps = &pi->current_rps;
        struct trinity_ps *ps = trinity_get_ps(rps);
        int i, ret;

        if (ps->num_levels <= 1)
                return 0;

        if (level == RADEON_DPM_FORCED_LEVEL_HIGH) {
                /* not supported by the hw */
                return -EINVAL;
        } else if (level == RADEON_DPM_FORCED_LEVEL_LOW) {
                ret = trinity_dpm_n_levels_disabled(rdev, ps->num_levels - 1);
                if (ret)
                        return ret;
        } else {
                for (i = 0; i < ps->num_levels; i++) {
                        ret = trinity_dpm_n_levels_disabled(rdev, 0);
                        if (ret)
                                return ret;
                }
        }

        rdev->pm.dpm.forced_level = level;

        return 0;
}

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/dri-devel/attachments/20160613/30c1c874/attachment.html>


More information about the dri-devel mailing list