]> git.proxmox.com Git - mirror_ubuntu-kernels.git/commitdiff
drm/amdgpu/sriov: Remove clear vf fw support
authorVictor Zhao <Victor.Zhao@amd.com>
Thu, 22 Apr 2021 09:38:09 +0000 (17:38 +0800)
committerAlex Deucher <alexander.deucher@amd.com>
Thu, 29 Apr 2021 03:35:51 +0000 (23:35 -0400)
PSP clear_vf_fw feature is outdated and has been removed.
Remove the related functions.

Signed-off-by: Victor Zhao <Victor.Zhao@amd.com>
Reviewed-by: Emily Deng <Emily.Deng@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c
drivers/gpu/drm/amd/amdgpu/psp_gfx_if.h

index 9311dcc94cb6ebc96a94d43779887275efd1025c..623044414bb5f8d7db3cde480cb081efd43bbbc4 100644 (file)
@@ -417,26 +417,6 @@ static int psp_tmr_init(struct psp_context *psp)
        return ret;
 }
 
-static int psp_clear_vf_fw(struct psp_context *psp)
-{
-       int ret;
-       struct psp_gfx_cmd_resp *cmd;
-
-       if (!amdgpu_sriov_vf(psp->adev) || psp->adev->asic_type != CHIP_NAVI12)
-               return 0;
-
-       cmd = kzalloc(sizeof(struct psp_gfx_cmd_resp), GFP_KERNEL);
-       if (!cmd)
-               return -ENOMEM;
-
-       cmd->cmd_id = GFX_CMD_ID_CLEAR_VF_FW;
-
-       ret = psp_cmd_submit_buf(psp, NULL, cmd, psp->fence_buf_mc_addr);
-       kfree(cmd);
-
-       return ret;
-}
-
 static bool psp_skip_tmr(struct psp_context *psp)
 {
        switch (psp->adev->asic_type) {
@@ -1925,12 +1905,6 @@ static int psp_hw_start(struct psp_context *psp)
                return ret;
        }
 
-       ret = psp_clear_vf_fw(psp);
-       if (ret) {
-               DRM_ERROR("PSP clear vf fw!\n");
-               return ret;
-       }
-
        ret = psp_boot_config_set(adev);
        if (ret) {
                DRM_WARN("PSP set boot config@\n");
@@ -2439,7 +2413,6 @@ static int psp_hw_fini(void *handle)
 {
        struct amdgpu_device *adev = (struct amdgpu_device *)handle;
        struct psp_context *psp = &adev->psp;
-       int ret;
 
        if (psp->adev->psp.ta_fw) {
                psp_ras_terminate(psp);
@@ -2450,11 +2423,6 @@ static int psp_hw_fini(void *handle)
        }
 
        psp_asd_unload(psp);
-       ret = psp_clear_vf_fw(psp);
-       if (ret) {
-               DRM_ERROR("PSP clear vf fw!\n");
-               return ret;
-       }
 
        psp_tmr_terminate(psp);
        psp_ring_destroy(psp, PSP_RING_TYPE__KM);
index 96064c34316341e25dece6f51a1fd8c89305d4c2..f6d3180febc457f73f24afa08ffc5cd8b418ae01 100644 (file)
@@ -97,7 +97,6 @@ enum psp_gfx_cmd_id
     GFX_CMD_ID_SETUP_VMR          = 0x00000009,   /* setup VMR region */
     GFX_CMD_ID_DESTROY_VMR        = 0x0000000A,   /* destroy VMR region */
     GFX_CMD_ID_PROG_REG           = 0x0000000B,   /* program regs */
-    GFX_CMD_ID_CLEAR_VF_FW        = 0x0000000D,   /* Clear VF FW, to be used on VF shutdown. */
     GFX_CMD_ID_GET_FW_ATTESTATION = 0x0000000F,   /* Query GPUVA of the Fw Attestation DB */
     /* IDs upto 0x1F are reserved for older programs (Raven, Vega 10/12/20) */
     GFX_CMD_ID_LOAD_TOC           = 0x00000020,   /* Load TOC and obtain TMR size */