Skip to content

Commit 1cb96a8

Browse files
committed
Revert "drm/amd/pm: resolve reboot exception for si oland"
This reverts commit e490d60. 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>
1 parent eb4f139 commit 1cb96a8

1 file changed

Lines changed: 29 additions & 0 deletions

File tree

  • drivers/gpu/drm/amd/pm/legacy-dpm

drivers/gpu/drm/amd/pm/legacy-dpm/si_dpm.c

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6925,6 +6925,23 @@ static int si_dpm_enable(struct amdgpu_device *adev)
69256925
return 0;
69266926
}
69276927

6928+
static int si_set_temperature_range(struct amdgpu_device *adev)
6929+
{
6930+
int ret;
6931+
6932+
ret = si_thermal_enable_alert(adev, false);
6933+
if (ret)
6934+
return ret;
6935+
ret = si_thermal_set_temperature_range(adev, R600_TEMP_RANGE_MIN, R600_TEMP_RANGE_MAX);
6936+
if (ret)
6937+
return ret;
6938+
ret = si_thermal_enable_alert(adev, true);
6939+
if (ret)
6940+
return ret;
6941+
6942+
return ret;
6943+
}
6944+
69286945
static void si_dpm_disable(struct amdgpu_device *adev)
69296946
{
69306947
struct rv7xx_power_info *pi = rv770_get_pi(adev);
@@ -7608,6 +7625,18 @@ static int si_dpm_process_interrupt(struct amdgpu_device *adev,
76087625

76097626
static int si_dpm_late_init(void *handle)
76107627
{
7628+
int ret;
7629+
struct amdgpu_device *adev = (struct amdgpu_device *)handle;
7630+
7631+
if (!adev->pm.dpm_enabled)
7632+
return 0;
7633+
7634+
ret = si_set_temperature_range(adev);
7635+
if (ret)
7636+
return ret;
7637+
#if 0 //TODO ?
7638+
si_dpm_powergate_uvd(adev, true);
7639+
#endif
76117640
return 0;
76127641
}
76137642

0 commit comments

Comments
 (0)