mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2025-01-01 10:53:40 +08:00
drm/amdgpu: Correctly establish the suspend/resume hook for amdkfd
Signed-off-by: Yong Zhao <yong.zhao@amd.com> Reviewed-by: Felix Kuehling <Felix.Kuehling@amd.com> Reviewed-by: Oded Gabbay <oded.gabbay@gmail.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
parent
a667386cb9
commit
ba997709a6
@ -55,6 +55,8 @@
|
||||
#include <linux/firmware.h>
|
||||
#include "amdgpu_vf_error.h"
|
||||
|
||||
#include "amdgpu_amdkfd.h"
|
||||
|
||||
MODULE_FIRMWARE("amdgpu/vega10_gpu_info.bin");
|
||||
MODULE_FIRMWARE("amdgpu/raven_gpu_info.bin");
|
||||
|
||||
@ -2378,6 +2380,8 @@ int amdgpu_device_suspend(struct drm_device *dev, bool suspend, bool fbcon)
|
||||
}
|
||||
drm_modeset_unlock_all(dev);
|
||||
|
||||
amdgpu_amdkfd_suspend(adev);
|
||||
|
||||
/* unpin the front buffers and cursors */
|
||||
list_for_each_entry(crtc, &dev->mode_config.crtc_list, head) {
|
||||
struct amdgpu_crtc *amdgpu_crtc = to_amdgpu_crtc(crtc);
|
||||
@ -2511,6 +2515,9 @@ int amdgpu_device_resume(struct drm_device *dev, bool resume, bool fbcon)
|
||||
}
|
||||
}
|
||||
}
|
||||
r = amdgpu_amdkfd_resume(adev);
|
||||
if (r)
|
||||
return r;
|
||||
|
||||
/* blat the mode back in */
|
||||
if (fbcon) {
|
||||
|
@ -1824,21 +1824,14 @@ static int cik_common_suspend(void *handle)
|
||||
{
|
||||
struct amdgpu_device *adev = (struct amdgpu_device *)handle;
|
||||
|
||||
amdgpu_amdkfd_suspend(adev);
|
||||
|
||||
return cik_common_hw_fini(adev);
|
||||
}
|
||||
|
||||
static int cik_common_resume(void *handle)
|
||||
{
|
||||
int r;
|
||||
struct amdgpu_device *adev = (struct amdgpu_device *)handle;
|
||||
|
||||
r = cik_common_hw_init(adev);
|
||||
if (r)
|
||||
return r;
|
||||
|
||||
return amdgpu_amdkfd_resume(adev);
|
||||
return cik_common_hw_init(adev);
|
||||
}
|
||||
|
||||
static bool cik_common_is_idle(void *handle)
|
||||
|
Loading…
Reference in New Issue
Block a user