diff options
Diffstat (limited to 'meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/3802-drm-amdgpu-Call-amdgpu_ucode_fini_bo-in-amd_powerpla.patch')
-rw-r--r-- | meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/3802-drm-amdgpu-Call-amdgpu_ucode_fini_bo-in-amd_powerpla.patch | 62 |
1 files changed, 62 insertions, 0 deletions
diff --git a/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/3802-drm-amdgpu-Call-amdgpu_ucode_fini_bo-in-amd_powerpla.patch b/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/3802-drm-amdgpu-Call-amdgpu_ucode_fini_bo-in-amd_powerpla.patch new file mode 100644 index 00000000..2ddd3750 --- /dev/null +++ b/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/3802-drm-amdgpu-Call-amdgpu_ucode_fini_bo-in-amd_powerpla.patch @@ -0,0 +1,62 @@ +From 89282b31e6f19ffc4763151440403a4d30641414 Mon Sep 17 00:00:00 2001 +From: Rex Zhu <Rex.Zhu@amd.com> +Date: Mon, 12 Mar 2018 19:53:01 +0800 +Subject: [PATCH 3802/4131] drm/amdgpu: Call amdgpu_ucode_fini_bo in + amd_powerplay.c + +make it symmetric with amdgpu_ucode_init_bo in amd_powerplay.c + +refine the "commit b22558bb4ff8fc9fe925222f90297d7a03a5fb20" + +Change-Id: I4553a6201557a40ebed21a56827b4134aefa8534 +Reviewed-by: Alex Deucher <alexander.deucher@amd.com> +Reviewed-by: Evan Quan <evan.quan@amd.com> +Signed-off-by: Rex Zhu <Rex.Zhu@amd.com> +--- + drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 3 --- + drivers/gpu/drm/amd/powerplay/amd_powerplay.c | 8 +++++++- + 2 files changed, 7 insertions(+), 4 deletions(-) + +diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c +index 0a0c3df..cf36eca 100644 +--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c ++++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c +@@ -1533,9 +1533,6 @@ static int amdgpu_device_ip_fini(struct amdgpu_device *adev) + } + + for (i = adev->num_ip_blocks - 1; i >= 0; i--) { +- if (adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_SMC && +- adev->firmware.load_type == AMDGPU_FW_LOAD_SMU) +- amdgpu_ucode_fini_bo(adev); + if (!adev->ip_blocks[i].status.hw) + continue; + +diff --git a/drivers/gpu/drm/amd/powerplay/amd_powerplay.c b/drivers/gpu/drm/amd/powerplay/amd_powerplay.c +index ed8eb0d..482115b 100644 +--- a/drivers/gpu/drm/amd/powerplay/amd_powerplay.c ++++ b/drivers/gpu/drm/amd/powerplay/amd_powerplay.c +@@ -134,6 +134,10 @@ static int pp_sw_fini(void *handle) + if (hwmgr->smumgr_funcs->smu_fini != NULL) + hwmgr->smumgr_funcs->smu_fini(hwmgr); + } ++ ++ if (adev->firmware.load_type == AMDGPU_FW_LOAD_SMU) ++ amdgpu_ucode_fini_bo(adev); ++ + return 0; + } + +@@ -201,7 +205,9 @@ static int pp_late_init(void *handle) + + static void pp_late_fini(void *handle) + { +- amd_powerplay_destroy(handle); ++ struct amdgpu_device *adev = handle; ++ ++ amd_powerplay_destroy(adev); + } + + +-- +2.7.4 + |