diff options
| author | Mark Brown <broonie@kernel.org> | 2024-03-18 17:30:46 +0000 |
|---|---|---|
| committer | Mark Brown <broonie@kernel.org> | 2024-03-18 17:30:46 +0000 |
| commit | 5bd249aec71d75f0088357e4aba27fde0610f823 (patch) | |
| tree | ed63b21b48b711430492734564775758a39eb94c /drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c | |
| parent | 7397175cb7b48f7a3fc699083aa46f1234904c7e (diff) | |
| parent | e8f897f4afef0031fe618a8e94127a0934896aba (diff) | |
spi: Merge up v6.8 release
An i.MX fix depends on other fixes that were sent to v6.8.
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c')
| -rw-r--r-- | drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c index b9674c57c436..6ddc8e3360e2 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c @@ -723,8 +723,15 @@ void amdgpu_gfx_off_ctrl(struct amdgpu_device *adev, bool enable) if (adev->gfx.gfx_off_req_count == 0 && !adev->gfx.gfx_off_state) { - schedule_delayed_work(&adev->gfx.gfx_off_delay_work, + /* If going to s2idle, no need to wait */ + if (adev->in_s0ix) { + if (!amdgpu_dpm_set_powergating_by_smu(adev, + AMD_IP_BLOCK_TYPE_GFX, true)) + adev->gfx.gfx_off_state = true; + } else { + schedule_delayed_work(&adev->gfx.gfx_off_delay_work, delay); + } } } else { if (adev->gfx.gfx_off_req_count == 0) { |