summaryrefslogtreecommitdiff
path: root/drivers/gpu/drm
diff options
context:
space:
mode:
authorYiPeng Chai <YiPeng.Chai@amd.com>2025-11-05 15:12:11 +0800
committerAlex Deucher <alexander.deucher@amd.com>2025-12-08 13:56:33 -0500
commitc174a6317be0aac7e1953eefd680af6b9be91bc2 (patch)
tree8c9294bb506cbcb80c8951c23bf8edee6299d602 /drivers/gpu/drm
parent1855fc6b09bc8f42c29cc4b6bf576dd08d2a6564 (diff)
downloadlinux-next-c174a6317be0aac7e1953eefd680af6b9be91bc2.tar.gz
linux-next-c174a6317be0aac7e1953eefd680af6b9be91bc2.zip
drm/amd/ras: Support sriov uniras to obtain cper data
Support sriov uniras to obtain cper data. Signed-off-by: YiPeng Chai <YiPeng.Chai@amd.com> Reviewed-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')
-rw-r--r--drivers/gpu/drm/amd/amdgpu/amdgpu_cper.c6
-rw-r--r--drivers/gpu/drm/amd/amdgpu/amdgpu_device.c3
2 files changed, 6 insertions, 3 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_cper.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_cper.c
index 425a3e564360..c72c345334d0 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_cper.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_cper.c
@@ -23,6 +23,7 @@
*/
#include <linux/list.h>
#include "amdgpu.h"
+#include "amdgpu_ras_mgr.h"
static const guid_t MCE = CPER_NOTIFY_MCE;
static const guid_t CMC = CPER_NOTIFY_CMC;
@@ -559,7 +560,10 @@ int amdgpu_cper_init(struct amdgpu_device *adev)
{
int r;
- if (!amdgpu_aca_is_enabled(adev) && !amdgpu_sriov_ras_cper_en(adev))
+ if (amdgpu_sriov_vf(adev) && !amdgpu_sriov_ras_cper_en(adev))
+ return 0;
+ else if (!amdgpu_sriov_vf(adev) && !amdgpu_uniras_enabled(adev) &&
+ !amdgpu_aca_is_enabled(adev))
return 0;
r = amdgpu_cper_ring_init(adev);
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
index c8d1e5565c31..6fb82d6c9a1a 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
@@ -3323,8 +3323,7 @@ static int amdgpu_device_ip_init(struct amdgpu_device *adev)
amdgpu_fru_get_product_info(adev);
- if (!amdgpu_sriov_vf(adev) || amdgpu_sriov_ras_cper_en(adev))
- r = amdgpu_cper_init(adev);
+ r = amdgpu_cper_init(adev);
init_failed: