Revert "drm/amd/pm: resolve reboot exception for si oland"
This reverts commit e490d60a2f
.
This causes hangs on SI when DC is enabled and errors on driver
reboot and power off cycles.
Closes: https://gitlab.freedesktop.org/drm/amd/-/issues/3216
Closes: https://gitlab.freedesktop.org/drm/amd/-/issues/2755
Reviewed-by: Yang Wang <kevinyang.wang@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
@ -6925,6 +6925,23 @@ static int si_dpm_enable(struct amdgpu_device *adev)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static int si_set_temperature_range(struct amdgpu_device *adev)
|
||||||
|
{
|
||||||
|
int ret;
|
||||||
|
|
||||||
|
ret = si_thermal_enable_alert(adev, false);
|
||||||
|
if (ret)
|
||||||
|
return ret;
|
||||||
|
ret = si_thermal_set_temperature_range(adev, R600_TEMP_RANGE_MIN, R600_TEMP_RANGE_MAX);
|
||||||
|
if (ret)
|
||||||
|
return ret;
|
||||||
|
ret = si_thermal_enable_alert(adev, true);
|
||||||
|
if (ret)
|
||||||
|
return ret;
|
||||||
|
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
static void si_dpm_disable(struct amdgpu_device *adev)
|
static void si_dpm_disable(struct amdgpu_device *adev)
|
||||||
{
|
{
|
||||||
struct rv7xx_power_info *pi = rv770_get_pi(adev);
|
struct rv7xx_power_info *pi = rv770_get_pi(adev);
|
||||||
@ -7608,6 +7625,18 @@ static int si_dpm_process_interrupt(struct amdgpu_device *adev,
|
|||||||
|
|
||||||
static int si_dpm_late_init(void *handle)
|
static int si_dpm_late_init(void *handle)
|
||||||
{
|
{
|
||||||
|
int ret;
|
||||||
|
struct amdgpu_device *adev = (struct amdgpu_device *)handle;
|
||||||
|
|
||||||
|
if (!adev->pm.dpm_enabled)
|
||||||
|
return 0;
|
||||||
|
|
||||||
|
ret = si_set_temperature_range(adev);
|
||||||
|
if (ret)
|
||||||
|
return ret;
|
||||||
|
#if 0 //TODO ?
|
||||||
|
si_dpm_powergate_uvd(adev, true);
|
||||||
|
#endif
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user