+++ /dev/null
-From c6f8c440441029d5621ee5153676243234a4b76e Mon Sep 17 00:00:00 2001
-From: Bhawanpreet Lakha <Bhawanpreet.Lakha@amd.com>
-Date: Fri, 7 Feb 2020 10:41:20 -0500
-Subject: drm/amd/display: fix dtm unloading
-
-From: Bhawanpreet Lakha <Bhawanpreet.Lakha@amd.com>
-
-commit c6f8c440441029d5621ee5153676243234a4b76e upstream.
-
-there was a type in the terminate command.
-
-We should be calling psp_dtm_unload() instead of psp_hdcp_unload()
-
-Fixes: 143f23053333 ("drm/amdgpu: psp DTM init")
-Signed-off-by: Bhawanpreet Lakha <Bhawanpreet.Lakha@amd.com>
-Reviewed-by: Feifei Xu <Feifei.Xu@amd.com>
-Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
-Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-
----
- drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c | 26 +++++++++++++++++++++++++-
- 1 file changed, 25 insertions(+), 1 deletion(-)
-
---- a/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c
-+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c
-@@ -1112,6 +1112,30 @@ static void psp_prep_dtm_ta_invoke_cmd_b
- /* Note: cmd_invoke_cmd.buf is not used for now */
- }
-
-+static int psp_dtm_unload(struct psp_context *psp)
-+{
-+ int ret;
-+ struct psp_gfx_cmd_resp *cmd;
-+
-+ /*
-+ * TODO: bypass the unloading in sriov for now
-+ */
-+ if (amdgpu_sriov_vf(psp->adev))
-+ return 0;
-+
-+ cmd = kzalloc(sizeof(struct psp_gfx_cmd_resp), GFP_KERNEL);
-+ if (!cmd)
-+ return -ENOMEM;
-+
-+ psp_prep_ta_unload_cmd_buf(cmd, psp->dtm_context.session_id);
-+
-+ ret = psp_cmd_submit_buf(psp, NULL, cmd, psp->fence_buf_mc_addr);
-+
-+ kfree(cmd);
-+
-+ return ret;
-+}
-+
- int psp_dtm_invoke(struct psp_context *psp, uint32_t ta_cmd_id)
- {
- int ret;
-@@ -1150,7 +1174,7 @@ static int psp_dtm_terminate(struct psp_
- if (!psp->dtm_context.dtm_initialized)
- return 0;
-
-- ret = psp_hdcp_unload(psp);
-+ ret = psp_dtm_unload(psp);
- if (ret)
- return ret;
-