drm/amdgpu: rework psp firmware name
authorLikun Gao <Likun.Gao@amd.com>
Wed, 8 Dec 2021 08:19:52 +0000 (16:19 +0800)
committerAlex Deucher <alexander.deucher@amd.com>
Wed, 4 May 2022 13:55:30 +0000 (09:55 -0400)
Use the new helper for deriving the fw name from
the IP version.

Signed-off-by: Likun Gao <Likun.Gao@amd.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/amdgpu/psp_v13_0.c

index 024853eb1cd72dec79c278db9d720c032d0d4d77..8d3cdfe17f567f8b3c8e2043ae61255cdb28f489 100644 (file)
@@ -53,6 +53,7 @@ static int psp_v13_0_init_microcode(struct psp_context *psp)
 {
        struct amdgpu_device *adev = psp->adev;
        const char *chip_name;
+       char ucode_prefix[30];
        int err = 0;
 
        switch (adev->ip_versions[MP0_HWIP][0]) {
@@ -63,18 +64,12 @@ static int psp_v13_0_init_microcode(struct psp_context *psp)
        case IP_VERSION(13, 0, 3):
                chip_name = "yellow_carp";
                break;
-       case IP_VERSION(13, 0, 5):
-               chip_name = "psp_13_0_5";
-               break;
-       case IP_VERSION(13, 0, 8):
-               chip_name = "psp_13_0_8";
-               break;
-       case IP_VERSION(13, 0, 0):
-               chip_name = "psp_13_0_0";
-               break;
        default:
-               BUG();
+               amdgpu_ucode_ip_version_decode(adev, MP0_HWIP, ucode_prefix, sizeof(ucode_prefix));
+               chip_name = ucode_prefix;
+               break;
        }
+
        switch (adev->ip_versions[MP0_HWIP][0]) {
        case IP_VERSION(13, 0, 2):
                err = psp_init_sos_microcode(psp, chip_name);