Skip to content

Commit 8ed79c4

Browse files
Tim Huangalexdeucher
authored andcommitted
drm/amdgpu: move kfd_resume before the ip late init
The kfd_resume needs to touch GC registers to enable the interrupts, it needs to be done before GFXOFF is enabled to ensure that the GFX is not off and GC registers can be touched. So move kfd_resume before the amdgpu_device_ip_late_init which enables the CGPG/GFXOFF. Signed-off-by: Tim Huang <[email protected]> Reviewed-by: Yifan Zhang <[email protected]> Signed-off-by: Alex Deucher <[email protected]>
1 parent e4c44b1 commit 8ed79c4

File tree

1 file changed

+6
-7
lines changed

1 file changed

+6
-7
lines changed

drivers/gpu/drm/amd/amdgpu/amdgpu_device.c

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -4571,19 +4571,18 @@ int amdgpu_device_resume(struct drm_device *dev, bool fbcon)
45714571
}
45724572
amdgpu_fence_driver_hw_init(adev);
45734573

4574-
r = amdgpu_device_ip_late_init(adev);
4575-
if (r)
4576-
goto exit;
4577-
4578-
queue_delayed_work(system_wq, &adev->delayed_init_work,
4579-
msecs_to_jiffies(AMDGPU_RESUME_MS));
4580-
45814574
if (!adev->in_s0ix) {
45824575
r = amdgpu_amdkfd_resume(adev, adev->in_runpm);
45834576
if (r)
45844577
goto exit;
45854578
}
45864579

4580+
r = amdgpu_device_ip_late_init(adev);
4581+
if (r)
4582+
goto exit;
4583+
4584+
queue_delayed_work(system_wq, &adev->delayed_init_work,
4585+
msecs_to_jiffies(AMDGPU_RESUME_MS));
45874586
exit:
45884587
if (amdgpu_sriov_vf(adev)) {
45894588
amdgpu_virt_init_data_exchange(adev);

0 commit comments

Comments
 (0)