aboutsummaryrefslogtreecommitdiffstats
path: root/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.19.8/3945-drm-amdgpu-move-mmhub-ras-fini-to-mmhub-block.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.19.8/3945-drm-amdgpu-move-mmhub-ras-fini-to-mmhub-block.patch')
-rw-r--r--meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.19.8/3945-drm-amdgpu-move-mmhub-ras-fini-to-mmhub-block.patch75
1 files changed, 75 insertions, 0 deletions
diff --git a/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.19.8/3945-drm-amdgpu-move-mmhub-ras-fini-to-mmhub-block.patch b/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.19.8/3945-drm-amdgpu-move-mmhub-ras-fini-to-mmhub-block.patch
new file mode 100644
index 00000000..3d5af4ce
--- /dev/null
+++ b/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.19.8/3945-drm-amdgpu-move-mmhub-ras-fini-to-mmhub-block.patch
@@ -0,0 +1,75 @@
+From 0d45e36b2b4094885fc5c2d4bdfb138413c2e989 Mon Sep 17 00:00:00 2001
+From: Tao Zhou <tao.zhou1@amd.com>
+Date: Wed, 18 Sep 2019 17:51:20 +0800
+Subject: [PATCH 3945/4256] drm/amdgpu: move mmhub ras fini to mmhub block
+
+it's more suitable to put mmhub ras fini in mmhub block
+
+Signed-off-by: Tao Zhou <tao.zhou1@amd.com>
+Reviewed-by: Guchun Chen <guchun.chen@amd.com>
+---
+ drivers/gpu/drm/amd/amdgpu/amdgpu_gmc.c | 12 +-----------
+ drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.c | 14 ++++++++++++++
+ drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.h | 2 +-
+ 3 files changed, 16 insertions(+), 12 deletions(-)
+
+diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_gmc.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_gmc.c
+index bf8084deb028..d35669e0dbac 100644
+--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_gmc.c
++++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_gmc.c
+@@ -308,17 +308,7 @@ bool amdgpu_gmc_filter_faults(struct amdgpu_device *adev, uint64_t addr,
+ void amdgpu_gmc_ras_fini(struct amdgpu_device *adev)
+ {
+ amdgpu_umc_ras_fini(adev);
+-
+- if (amdgpu_ras_is_supported(adev, AMDGPU_RAS_BLOCK__MMHUB) &&
+- adev->mmhub.ras_if) {
+- struct ras_common_if *ras_if = adev->mmhub.ras_if;
+- struct ras_ih_if ih_info = {
+- .cb = NULL,
+- };
+-
+- amdgpu_ras_late_fini(adev, ras_if, &ih_info);
+- kfree(ras_if);
+- }
++ amdgpu_mmhub_ras_fini(adev);
+
+ if (amdgpu_ras_is_supported(adev, AMDGPU_RAS_BLOCK__XGMI_WAFL) &&
+ adev->gmc.xgmi.ras_if) {
+diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.c
+index fe1709ee8f4b..676c48c02d77 100644
+--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.c
++++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.c
+@@ -54,3 +54,17 @@ int amdgpu_mmhub_ras_late_init(struct amdgpu_device *adev)
+
+ return r;
+ }
++
++void amdgpu_mmhub_ras_fini(struct amdgpu_device *adev)
++{
++ if (amdgpu_ras_is_supported(adev, AMDGPU_RAS_BLOCK__MMHUB) &&
++ adev->mmhub.ras_if) {
++ struct ras_common_if *ras_if = adev->mmhub.ras_if;
++ struct ras_ih_if ih_info = {
++ .cb = NULL,
++ };
++
++ amdgpu_ras_late_fini(adev, ras_if, &ih_info);
++ kfree(ras_if);
++ }
++}
+diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.h b/drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.h
+index a733898c7d55..1cd78940cf82 100644
+--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.h
++++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.h
+@@ -34,6 +34,6 @@ struct amdgpu_mmhub {
+ };
+
+ int amdgpu_mmhub_ras_late_init(struct amdgpu_device *adev);
+-
++void amdgpu_mmhub_ras_fini(struct amdgpu_device *adev);
+ #endif
+
+--
+2.17.1
+