diff options
author | Dave Airlie <airlied@redhat.com> | 2024-02-22 10:08:22 +1000 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2024-02-22 13:21:19 +1000 |
commit | 40d47c5fb4f2a7c1ef168598f01bdcbd31ba4038 (patch) | |
tree | b215e566f3b6229a8bdb4f7b8bd5b2e53bc29e0c /drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c | |
parent | 9ac4beb7578a88baa4f7e6a59eeb5be79d7b011a (diff) | |
parent | 31e0a586f3385134bcad00d8194eb0728cb1a17d (diff) | |
download | linux-40d47c5fb4f2a7c1ef168598f01bdcbd31ba4038.tar.gz linux-40d47c5fb4f2a7c1ef168598f01bdcbd31ba4038.tar.bz2 linux-40d47c5fb4f2a7c1ef168598f01bdcbd31ba4038.zip |
Merge tag 'amd-drm-next-6.9-2024-02-19' of https://gitlab.freedesktop.org/agd5f/linux into drm-next
amd-drm-next-6.9-2024-02-19:
amdgpu:
- ATHUB 4.1 support
- EEPROM support updates
- RAS updates
- LSDMA 7.0 support
- JPEG DPG support
- IH 7.0 support
- HDP 7.0 support
- VCN 5.0 support
- Misc display fixes
- Retimer fixes
- DCN 3.5 fixes
- VCN 4.x fixes
- PSR fixes
- PSP 14.0 support
- VA_RESERVED cleanup
- SMU 13.0.6 updates
- NBIO 7.11 updates
- SDMA 6.1 updates
- MMHUB 3.3 updates
- Suspend/resume fixes
- DMUB updates
amdkfd:
- Trap handler enhancements
- Fix cache size reporting
- Relocate the trap handler
radeon:
- fix typo in print statement
Signed-off-by: Dave Airlie <airlied@redhat.com>
From: Alex Deucher <alexander.deucher@amd.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20240219214810.4911-1-alexander.deucher@amd.com
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 78229b61c233..f04803a44b44 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c @@ -724,8 +724,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) { |