Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

drm/amdgpu: add ras fini for nbio

add a common nbio ras fini implementation to cleanup nbio ras framework

Signed-off-by: Tao Zhou <tao.zhou1@amd.com>
Reviewed-by: Guchun Chen <guchun.chen@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>

authored by

Tao Zhou and committed by
Alex Deucher
de9bbd52 0771b0bf

+16 -1
+14
drivers/gpu/drm/amd/amdgpu/amdgpu_nbio.c
··· 68 68 adev->nbio.ras_if = NULL; 69 69 return r; 70 70 } 71 + 72 + void amdgpu_nbio_ras_fini(struct amdgpu_device *adev) 73 + { 74 + if (amdgpu_ras_is_supported(adev, AMDGPU_RAS_BLOCK__PCIE_BIF) && 75 + adev->nbio.ras_if) { 76 + struct ras_common_if *ras_if = adev->nbio.ras_if; 77 + struct ras_ih_if ih_info = { 78 + .cb = NULL, 79 + }; 80 + 81 + amdgpu_ras_late_fini(adev, ras_if, &ih_info); 82 + kfree(ras_if); 83 + } 84 + }
+1 -1
drivers/gpu/drm/amd/amdgpu/amdgpu_nbio.h
··· 95 95 }; 96 96 97 97 int amdgpu_nbio_ras_late_init(struct amdgpu_device *adev); 98 - 98 + void amdgpu_nbio_ras_fini(struct amdgpu_device *adev); 99 99 #endif
+1
drivers/gpu/drm/amd/amdgpu/soc15.c
··· 1248 1248 { 1249 1249 struct amdgpu_device *adev = (struct amdgpu_device *)handle; 1250 1250 1251 + amdgpu_nbio_ras_fini(adev); 1251 1252 adev->df_funcs->sw_fini(adev); 1252 1253 return 0; 1253 1254 }