diff options
author | Tao Zhou <tao.zhou1@amd.com> | 2022-09-26 08:49:10 +0200 |
---|---|---|
committer | Alex Deucher <alexander.deucher@amd.com> | 2022-12-15 18:18:19 +0100 |
commit | 6a822b7acefa80e3b11f3d547f2380f1a4808aba (patch) | |
tree | 5cd3e76d3a30fc699a8b9aae6a22a87bdf23566d /drivers/gpu/drm/amd | |
parent | drm/amdgpu: add RAS poison consumption handler for SRIOV (diff) | |
download | linux-6a822b7acefa80e3b11f3d547f2380f1a4808aba.tar.xz linux-6a822b7acefa80e3b11f3d547f2380f1a4808aba.zip |
drm/amdgpu: add VCN poison consumption handler for SRIOV
Inform host and let host handle consumption interrupt.
Signed-off-by: Tao Zhou <tao.zhou1@amd.com>
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu/drm/amd')
-rw-r--r-- | drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c index b1622ac9949f..c9cee1c90339 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c @@ -1250,8 +1250,16 @@ int amdgpu_vcn_process_poison_irq(struct amdgpu_device *adev, if (!ras_if) return 0; - ih_data.head = *ras_if; - amdgpu_ras_interrupt_dispatch(adev, &ih_data); + if (!amdgpu_sriov_vf(adev)) { + ih_data.head = *ras_if; + amdgpu_ras_interrupt_dispatch(adev, &ih_data); + } else { + if (adev->virt.ops && adev->virt.ops->ras_poison_handler) + adev->virt.ops->ras_poison_handler(adev); + else + dev_warn(adev->dev, + "No ras_poison_handler interface in SRIOV for VCN!\n"); + } return 0; } |