Commit d4d3278c authored by Alex Deucher's avatar Alex Deucher

drm/radeon/dpm: use performance state if no UVD state

Newer asics don't have specific UVD states.
Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
parent edcd26e8
...@@ -695,7 +695,10 @@ static struct radeon_ps *radeon_dpm_pick_power_state(struct radeon_device *rdev, ...@@ -695,7 +695,10 @@ static struct radeon_ps *radeon_dpm_pick_power_state(struct radeon_device *rdev,
break; break;
/* internal states */ /* internal states */
case POWER_STATE_TYPE_INTERNAL_UVD: case POWER_STATE_TYPE_INTERNAL_UVD:
return rdev->pm.dpm.uvd_ps; if (rdev->pm.dpm.uvd_ps)
return rdev->pm.dpm.uvd_ps;
else
break;
case POWER_STATE_TYPE_INTERNAL_UVD_SD: case POWER_STATE_TYPE_INTERNAL_UVD_SD:
if (ps->class & ATOM_PPLIB_CLASSIFICATION_SDSTATE) if (ps->class & ATOM_PPLIB_CLASSIFICATION_SDSTATE)
return ps; return ps;
...@@ -742,7 +745,12 @@ static struct radeon_ps *radeon_dpm_pick_power_state(struct radeon_device *rdev, ...@@ -742,7 +745,12 @@ static struct radeon_ps *radeon_dpm_pick_power_state(struct radeon_device *rdev,
case POWER_STATE_TYPE_INTERNAL_UVD_HD: case POWER_STATE_TYPE_INTERNAL_UVD_HD:
case POWER_STATE_TYPE_INTERNAL_UVD_HD2: case POWER_STATE_TYPE_INTERNAL_UVD_HD2:
case POWER_STATE_TYPE_INTERNAL_UVD_MVC: case POWER_STATE_TYPE_INTERNAL_UVD_MVC:
return rdev->pm.dpm.uvd_ps; if (rdev->pm.dpm.uvd_ps) {
return rdev->pm.dpm.uvd_ps;
} else {
dpm_state = POWER_STATE_TYPE_PERFORMANCE;
goto restart_search;
}
case POWER_STATE_TYPE_INTERNAL_THERMAL: case POWER_STATE_TYPE_INTERNAL_THERMAL:
dpm_state = POWER_STATE_TYPE_INTERNAL_ACPI; dpm_state = POWER_STATE_TYPE_INTERNAL_ACPI;
goto restart_search; goto restart_search;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment