drm/amdgpu: do not init mec2 jt for renoir
authorHawking Zhang <Hawking.Zhang@amd.com>
Tue, 17 Sep 2019 22:46:54 +0000 (06:46 +0800)
committerAlex Deucher <alexander.deucher@amd.com>
Thu, 3 Oct 2019 14:10:59 +0000 (09:10 -0500)
For ASICs like renoir/arct, driver doesn't need to load mec2 jt.
when mec1 jt is loaded, mec2 jt will be loaded automatically
since the write is actaully broadcasted to both.

We need to more time to test other gfx9 asic. but for now we should
be able to draw conclusion that mec2 jt is not needed for renoir and
arct.

Signed-off-by: Hawking Zhang <Hawking.Zhang@amd.com>
Reviewed-by: Feifei Xu <Feifei.Xu@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c
drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c

index bc46a42..17af26e 100644 (file)
@@ -1396,10 +1396,6 @@ out:
                     ucode->ucode_id == AMDGPU_UCODE_ID_CP_MEC2_JT))
                        /* skip mec JT when autoload is enabled */
                        continue;
-               /* Renoir only needs to load mec jump table one time */
-               if (adev->asic_type == CHIP_RENOIR &&
-                   ucode->ucode_id == AMDGPU_UCODE_ID_CP_MEC2_JT)
-                       continue;
 
                psp_print_fw_hdr(psp, ucode);
 
index f4e19b2..2cb1efa 100644 (file)
@@ -1324,7 +1324,8 @@ static int gfx_v9_0_init_cp_compute_microcode(struct amdgpu_device *adev,
 
                        /* TODO: Determine if MEC2 JT FW loading can be removed
                                 for all GFX V9 asic and above */
-                       if (adev->asic_type != CHIP_ARCTURUS) {
+                       if (adev->asic_type != CHIP_ARCTURUS &&
+                           adev->asic_type != CHIP_RENOIR) {
                                info = &adev->firmware.ucode[AMDGPU_UCODE_ID_CP_MEC2_JT];
                                info->ucode_id = AMDGPU_UCODE_ID_CP_MEC2_JT;
                                info->fw = adev->gfx.mec2_fw;