diff options
Diffstat (limited to 'common/recipes-kernel/linux/linux-yocto-4.19.8/0626-drm-amdgpu-psp-firmware-load-status-check.patch')
-rw-r--r-- | common/recipes-kernel/linux/linux-yocto-4.19.8/0626-drm-amdgpu-psp-firmware-load-status-check.patch | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/common/recipes-kernel/linux/linux-yocto-4.19.8/0626-drm-amdgpu-psp-firmware-load-status-check.patch b/common/recipes-kernel/linux/linux-yocto-4.19.8/0626-drm-amdgpu-psp-firmware-load-status-check.patch new file mode 100644 index 00000000..3df8939e --- /dev/null +++ b/common/recipes-kernel/linux/linux-yocto-4.19.8/0626-drm-amdgpu-psp-firmware-load-status-check.patch @@ -0,0 +1,31 @@ +From 58fc6a5b4da2621444952d850af29768abed5e3f Mon Sep 17 00:00:00 2001 +From: Raveendra Talabattula <raveendra.talabattula@amd.com> +Date: Thu, 7 Feb 2019 11:45:55 +0530 +Subject: [PATCH 0626/2940] drm/amdgpu: psp firmware load status check + +Signed-off-by: Raveendra Talabattula <raveendra.talabattula@amd.com> +--- + drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c | 7 +++++++ + 1 file changed, 7 insertions(+) + +diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c +index 84d7ee97070a..4b74c9ccb0e8 100644 +--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c ++++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c +@@ -133,6 +133,13 @@ psp_cmd_submit_buf(struct psp_context *psp, + while (*((unsigned int *)psp->fence_buf) != index) { + msleep(1); + } ++ ++ /* the status field must be 0 after FW is loaded */ ++ if (ucode && psp->cmd_buf_mem->resp.status) { ++ DRM_ERROR("failed loading with status (%d) and ucode id (%d)\n", ++ psp->cmd_buf_mem->resp.status, ucode->ucode_id); ++ return -EINVAL; ++ } + + if (ucode) { + ucode->tmr_mc_addr_lo = psp->cmd_buf_mem->resp.fw_addr_lo; +-- +2.17.1 + |