]> git.dujemihanovic.xyz Git - linux.git/commitdiff
drm/amdgpu: add VCN4_0_3 firmware
authorJames Zhu <James.Zhu@amd.com>
Thu, 6 Jan 2022 19:41:33 +0000 (14:41 -0500)
committerAlex Deucher <alexander.deucher@amd.com>
Fri, 9 Jun 2023 13:40:53 +0000 (09:40 -0400)
Add VCN4_0_3 firmware.

v2: fix fw name (Alex)

Signed-off-by: James Zhu <James.Zhu@amd.com>
Reviewed-by: Leo Liu <leo.liu@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c

index e63fcc58e8e0622f90599733b862a3953f902622..72eb12aa2e8d475013d30fc7bbb1b496909c819a 100644 (file)
@@ -56,6 +56,7 @@
 #define FIRMWARE_VCN_3_1_2             "amdgpu/vcn_3_1_2.bin"
 #define FIRMWARE_VCN4_0_0              "amdgpu/vcn_4_0_0.bin"
 #define FIRMWARE_VCN4_0_2              "amdgpu/vcn_4_0_2.bin"
+#define FIRMWARE_VCN4_0_3              "amdgpu/vcn_4_0_3.bin"
 #define FIRMWARE_VCN4_0_4              "amdgpu/vcn_4_0_4.bin"
 
 MODULE_FIRMWARE(FIRMWARE_RAVEN);
@@ -77,6 +78,7 @@ MODULE_FIRMWARE(FIRMWARE_YELLOW_CARP);
 MODULE_FIRMWARE(FIRMWARE_VCN_3_1_2);
 MODULE_FIRMWARE(FIRMWARE_VCN4_0_0);
 MODULE_FIRMWARE(FIRMWARE_VCN4_0_2);
+MODULE_FIRMWARE(FIRMWARE_VCN4_0_3);
 MODULE_FIRMWARE(FIRMWARE_VCN4_0_4);
 
 static void amdgpu_vcn_idle_work_handler(struct work_struct *work);
@@ -111,9 +113,18 @@ int amdgpu_vcn_sw_init(struct amdgpu_device *adev)
        for (i = 0; i < adev->vcn.num_vcn_inst; i++)
                atomic_set(&adev->vcn.inst[i].dpg_enc_submission_cnt, 0);
 
-       if ((adev->firmware.load_type == AMDGPU_FW_LOAD_PSP) &&
-           (adev->pg_flags & AMD_PG_SUPPORT_VCN_DPG))
-               adev->vcn.indirect_sram = true;
+       switch (adev->ip_versions[UVD_HWIP][0]) {
+       case IP_VERSION(4, 0, 3):
+               if ((adev->firmware.load_type == AMDGPU_FW_LOAD_PSP) &&
+                   (adev->pg_flags & AMD_PG_SUPPORT_VCN_DPG))
+                       adev->vcn.indirect_sram = false;
+               break;
+       default:
+               if ((adev->firmware.load_type == AMDGPU_FW_LOAD_PSP) &&
+                   (adev->pg_flags & AMD_PG_SUPPORT_VCN_DPG))
+                       adev->vcn.indirect_sram = true;
+               break;
+       }
 
        /*
         * Some Steam Deck's BIOS versions are incompatible with the