From ff930483af93753cc3ba252e13f3cd92e505f0f0 Mon Sep 17 00:00:00 2001
From: Xiang Liu <xiang.liu@amd.com>
Date: Mon, 24 Feb 2025 23:01:06 +0800
Subject: [PATCH 2235/5403] drm/amdgpu: Set CPER enabled flag after ring
 initiailized

Setting cper.enabled to be true only after cper ring is successfully
created.

Signed-off-by: Xiang Liu <xiang.liu@amd.com>
Reviewed-by: Tao Zhou <tao.zhou1@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
---
 drivers/gpu/drm/amd/amdgpu/amdgpu_cper.c | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_cper.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_cper.c
index 20c474a32852..5b6bdabb8012 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_cper.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_cper.c
@@ -538,15 +538,23 @@ static int amdgpu_cper_ring_init(struct amdgpu_device *adev)
 
 int amdgpu_cper_init(struct amdgpu_device *adev)
 {
+	int r;
+
 	if (!amdgpu_aca_is_enabled(adev))
 		return 0;
 
+	r = amdgpu_cper_ring_init(adev);
+	if (r) {
+		dev_err(adev->dev, "fail to initiailize cper ring, r = %d\n", r);
+		return r;
+	}
+
 	mutex_init(&adev->cper.cper_lock);
 
 	adev->cper.enabled = true;
 	adev->cper.max_count = CPER_MAX_ALLOWED_COUNT;
 
-	return amdgpu_cper_ring_init(adev);
+	return 0;
 }
 
 int amdgpu_cper_fini(struct amdgpu_device *adev)
-- 
2.54.0

