mirror of
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-09-18 22:14:16 +00:00
drm/amdgpu: Add GFXHUB v1.2 XCP funcs
Add functions required for suspend/resume of GFXHUB instances which are part of an XCP. Signed-off-by: Lijo Lazar <lijo.lazar@amd.com> Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
parent
8e7fd19380
commit
dfdd6f89c4
1 changed files with 35 additions and 0 deletions
|
|
@ -21,6 +21,7 @@
|
|||
*
|
||||
*/
|
||||
#include "amdgpu.h"
|
||||
#include "amdgpu_xcp.h"
|
||||
#include "gfxhub_v1_2.h"
|
||||
#include "gfxhub_v1_1.h"
|
||||
|
||||
|
|
@ -638,3 +639,37 @@ const struct amdgpu_gfxhub_funcs gfxhub_v1_2_funcs = {
|
|||
.init = gfxhub_v1_2_init,
|
||||
.get_xgmi_info = gfxhub_v1_2_get_xgmi_info,
|
||||
};
|
||||
|
||||
static int gfxhub_v1_2_xcp_resume(void *handle, uint32_t inst_mask)
|
||||
{
|
||||
struct amdgpu_device *adev = (struct amdgpu_device *)handle;
|
||||
bool value;
|
||||
int ret;
|
||||
|
||||
if (amdgpu_vm_fault_stop == AMDGPU_VM_FAULT_STOP_ALWAYS)
|
||||
value = false;
|
||||
else
|
||||
value = true;
|
||||
|
||||
gfxhub_v1_2_xcc_set_fault_enable_default(adev, value, inst_mask);
|
||||
|
||||
if (!amdgpu_sriov_vf(adev))
|
||||
ret = gfxhub_v1_2_xcc_gart_enable(adev, inst_mask);
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
static int gfxhub_v1_2_xcp_suspend(void *handle, uint32_t inst_mask)
|
||||
{
|
||||
struct amdgpu_device *adev = (struct amdgpu_device *)handle;
|
||||
|
||||
if (!amdgpu_sriov_vf(adev))
|
||||
gfxhub_v1_2_xcc_gart_disable(adev, inst_mask);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
struct amdgpu_xcp_ip_funcs gfxhub_v1_2_xcp_funcs = {
|
||||
.suspend = &gfxhub_v1_2_xcp_suspend,
|
||||
.resume = &gfxhub_v1_2_xcp_resume
|
||||
};
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue