答复: [PATCH 1/2] drm/amdgpu: switch firmware path for CIK parts

Qu, Jim Jim.Qu at amd.com
Tue Jul 3 03:55:22 UTC 2018


The patch sounds reasonable.

My concern is : should the patches need to coordinate with the change of installation script (or maybe the FW .deb package)which install relative FW to amdgpu patch?

Thanks
JimQu

________________________________________
发件人: amd-gfx <amd-gfx-bounces at lists.freedesktop.org> 代表 Zhang, Jerry (Junwei) <Jerry.Zhang at amd.com>
发送时间: 2018年7月3日 10:05:37
收件人: Alex Deucher; amd-gfx at lists.freedesktop.org
抄送: Deucher, Alexander
主题: Re: [PATCH 1/2] drm/amdgpu: switch firmware path for CIK parts

On 07/03/2018 03:36 AM, Alex Deucher wrote:
> Use separate firmware path for amdgpu to avoid conflicts
> with radeon on CIK parts.

Does that means firmware will be separated from radeon driver regardless of whether they are same?
In another word, amdgpu/CIK-fw is likely to be identical to radeon/CIK-fw.

Jerry

>
> Signed-off-by: Alex Deucher <alexander.deucher at amd.com>
> ---
>   drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c |  8 ++--
>   drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c | 10 ++---
>   drivers/gpu/drm/amd/amdgpu/amdgpu_vce.c | 10 ++---
>   drivers/gpu/drm/amd/amdgpu/ci_dpm.c     | 10 ++---
>   drivers/gpu/drm/amd/amdgpu/cik_sdma.c   | 24 +++++------
>   drivers/gpu/drm/amd/amdgpu/gfx_v7_0.c   | 72 ++++++++++++++++-----------------
>   drivers/gpu/drm/amd/amdgpu/gmc_v7_0.c   |  6 +--
>   7 files changed, 70 insertions(+), 70 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c
> index e950730f1933..693ec5ea4950 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c
> @@ -314,17 +314,17 @@ static int amdgpu_cgs_get_firmware_info(struct cgs_device *cgs_device,
>                                       (adev->pdev->revision == 0x81) ||
>                                       (adev->pdev->device == 0x665f)) {
>                                       info->is_kicker = true;
> -                                     strcpy(fw_name, "radeon/bonaire_k_smc.bin");
> +                                     strcpy(fw_name, "amdgpu/bonaire_k_smc.bin");
>                               } else {
> -                                     strcpy(fw_name, "radeon/bonaire_smc.bin");
> +                                     strcpy(fw_name, "amdgpu/bonaire_smc.bin");
>                               }
>                               break;
>                       case CHIP_HAWAII:
>                               if (adev->pdev->revision == 0x80) {
>                                       info->is_kicker = true;
> -                                     strcpy(fw_name, "radeon/hawaii_k_smc.bin");
> +                                     strcpy(fw_name, "amdgpu/hawaii_k_smc.bin");
>                               } else {
> -                                     strcpy(fw_name, "radeon/hawaii_smc.bin");
> +                                     strcpy(fw_name, "amdgpu/hawaii_smc.bin");
>                               }
>                               break;
>                       case CHIP_TOPAZ:
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c
> index 0b46ea1c6290..3e70eb61a960 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c
> @@ -53,11 +53,11 @@
>
>   /* Firmware Names */
>   #ifdef CONFIG_DRM_AMDGPU_CIK
> -#define FIRMWARE_BONAIRE     "radeon/bonaire_uvd.bin"
> -#define FIRMWARE_KABINI      "radeon/kabini_uvd.bin"
> -#define FIRMWARE_KAVERI      "radeon/kaveri_uvd.bin"
> -#define FIRMWARE_HAWAII      "radeon/hawaii_uvd.bin"
> -#define FIRMWARE_MULLINS     "radeon/mullins_uvd.bin"
> +#define FIRMWARE_BONAIRE     "amdgpu/bonaire_uvd.bin"
> +#define FIRMWARE_KABINI      "amdgpu/kabini_uvd.bin"
> +#define FIRMWARE_KAVERI      "amdgpu/kaveri_uvd.bin"
> +#define FIRMWARE_HAWAII      "amdgpu/hawaii_uvd.bin"
> +#define FIRMWARE_MULLINS     "amdgpu/mullins_uvd.bin"
>   #endif
>   #define FIRMWARE_TONGA              "amdgpu/tonga_uvd.bin"
>   #define FIRMWARE_CARRIZO    "amdgpu/carrizo_uvd.bin"
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_vce.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_vce.c
> index b0dcdfd85f5b..6ae1ad7e83b3 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_vce.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_vce.c
> @@ -40,11 +40,11 @@
>
>   /* Firmware Names */
>   #ifdef CONFIG_DRM_AMDGPU_CIK
> -#define FIRMWARE_BONAIRE     "radeon/bonaire_vce.bin"
> -#define FIRMWARE_KABINI      "radeon/kabini_vce.bin"
> -#define FIRMWARE_KAVERI      "radeon/kaveri_vce.bin"
> -#define FIRMWARE_HAWAII      "radeon/hawaii_vce.bin"
> -#define FIRMWARE_MULLINS     "radeon/mullins_vce.bin"
> +#define FIRMWARE_BONAIRE     "amdgpu/bonaire_vce.bin"
> +#define FIRMWARE_KABINI      "amdgpu/kabini_vce.bin"
> +#define FIRMWARE_KAVERI      "amdgpu/kaveri_vce.bin"
> +#define FIRMWARE_HAWAII      "amdgpu/hawaii_vce.bin"
> +#define FIRMWARE_MULLINS     "amdgpu/mullins_vce.bin"
>   #endif
>   #define FIRMWARE_TONGA              "amdgpu/tonga_vce.bin"
>   #define FIRMWARE_CARRIZO    "amdgpu/carrizo_vce.bin"
> diff --git a/drivers/gpu/drm/amd/amdgpu/ci_dpm.c b/drivers/gpu/drm/amd/amdgpu/ci_dpm.c
> index 079a5fc9b593..d2469453dca2 100644
> --- a/drivers/gpu/drm/amd/amdgpu/ci_dpm.c
> +++ b/drivers/gpu/drm/amd/amdgpu/ci_dpm.c
> @@ -49,10 +49,10 @@
>   #include "gmc/gmc_7_1_d.h"
>   #include "gmc/gmc_7_1_sh_mask.h"
>
> -MODULE_FIRMWARE("radeon/bonaire_smc.bin");
> -MODULE_FIRMWARE("radeon/bonaire_k_smc.bin");
> -MODULE_FIRMWARE("radeon/hawaii_smc.bin");
> -MODULE_FIRMWARE("radeon/hawaii_k_smc.bin");
> +MODULE_FIRMWARE("amdgpu/bonaire_smc.bin");
> +MODULE_FIRMWARE("amdgpu/bonaire_k_smc.bin");
> +MODULE_FIRMWARE("amdgpu/hawaii_smc.bin");
> +MODULE_FIRMWARE("amdgpu/hawaii_k_smc.bin");
>
>   #define MC_CG_ARB_FREQ_F0           0x0a
>   #define MC_CG_ARB_FREQ_F1           0x0b
> @@ -5815,7 +5815,7 @@ static int ci_dpm_init_microcode(struct amdgpu_device *adev)
>       default: BUG();
>       }
>
> -     snprintf(fw_name, sizeof(fw_name), "radeon/%s_smc.bin", chip_name);
> +     snprintf(fw_name, sizeof(fw_name), "amdgpu/%s_smc.bin", chip_name);
>       err = request_firmware(&adev->pm.fw, fw_name, adev->dev);
>       if (err)
>               goto out;
> diff --git a/drivers/gpu/drm/amd/amdgpu/cik_sdma.c b/drivers/gpu/drm/amd/amdgpu/cik_sdma.c
> index dbd553a8d584..d0fa2aac2388 100644
> --- a/drivers/gpu/drm/amd/amdgpu/cik_sdma.c
> +++ b/drivers/gpu/drm/amd/amdgpu/cik_sdma.c
> @@ -54,16 +54,16 @@ static void cik_sdma_set_buffer_funcs(struct amdgpu_device *adev);
>   static void cik_sdma_set_vm_pte_funcs(struct amdgpu_device *adev);
>   static int cik_sdma_soft_reset(void *handle);
>
> -MODULE_FIRMWARE("radeon/bonaire_sdma.bin");
> -MODULE_FIRMWARE("radeon/bonaire_sdma1.bin");
> -MODULE_FIRMWARE("radeon/hawaii_sdma.bin");
> -MODULE_FIRMWARE("radeon/hawaii_sdma1.bin");
> -MODULE_FIRMWARE("radeon/kaveri_sdma.bin");
> -MODULE_FIRMWARE("radeon/kaveri_sdma1.bin");
> -MODULE_FIRMWARE("radeon/kabini_sdma.bin");
> -MODULE_FIRMWARE("radeon/kabini_sdma1.bin");
> -MODULE_FIRMWARE("radeon/mullins_sdma.bin");
> -MODULE_FIRMWARE("radeon/mullins_sdma1.bin");
> +MODULE_FIRMWARE("amdgpu/bonaire_sdma.bin");
> +MODULE_FIRMWARE("amdgpu/bonaire_sdma1.bin");
> +MODULE_FIRMWARE("amdgpu/hawaii_sdma.bin");
> +MODULE_FIRMWARE("amdgpu/hawaii_sdma1.bin");
> +MODULE_FIRMWARE("amdgpu/kaveri_sdma.bin");
> +MODULE_FIRMWARE("amdgpu/kaveri_sdma1.bin");
> +MODULE_FIRMWARE("amdgpu/kabini_sdma.bin");
> +MODULE_FIRMWARE("amdgpu/kabini_sdma1.bin");
> +MODULE_FIRMWARE("amdgpu/mullins_sdma.bin");
> +MODULE_FIRMWARE("amdgpu/mullins_sdma1.bin");
>
>   u32 amdgpu_cik_gpu_check_soft_reset(struct amdgpu_device *adev);
>
> @@ -132,9 +132,9 @@ static int cik_sdma_init_microcode(struct amdgpu_device *adev)
>
>       for (i = 0; i < adev->sdma.num_instances; i++) {
>               if (i == 0)
> -                     snprintf(fw_name, sizeof(fw_name), "radeon/%s_sdma.bin", chip_name);
> +                     snprintf(fw_name, sizeof(fw_name), "amdgpu/%s_sdma.bin", chip_name);
>               else
> -                     snprintf(fw_name, sizeof(fw_name), "radeon/%s_sdma1.bin", chip_name);
> +                     snprintf(fw_name, sizeof(fw_name), "amdgpu/%s_sdma1.bin", chip_name);
>               err = request_firmware(&adev->sdma.instance[i].fw, fw_name, adev->dev);
>               if (err)
>                       goto out;
> diff --git a/drivers/gpu/drm/amd/amdgpu/gfx_v7_0.c b/drivers/gpu/drm/amd/amdgpu/gfx_v7_0.c
> index 42b6144c1fd5..95452c5a9df6 100644
> --- a/drivers/gpu/drm/amd/amdgpu/gfx_v7_0.c
> +++ b/drivers/gpu/drm/amd/amdgpu/gfx_v7_0.c
> @@ -57,36 +57,36 @@ static void gfx_v7_0_set_ring_funcs(struct amdgpu_device *adev);
>   static void gfx_v7_0_set_irq_funcs(struct amdgpu_device *adev);
>   static void gfx_v7_0_set_gds_init(struct amdgpu_device *adev);
>
> -MODULE_FIRMWARE("radeon/bonaire_pfp.bin");
> -MODULE_FIRMWARE("radeon/bonaire_me.bin");
> -MODULE_FIRMWARE("radeon/bonaire_ce.bin");
> -MODULE_FIRMWARE("radeon/bonaire_rlc.bin");
> -MODULE_FIRMWARE("radeon/bonaire_mec.bin");
> -
> -MODULE_FIRMWARE("radeon/hawaii_pfp.bin");
> -MODULE_FIRMWARE("radeon/hawaii_me.bin");
> -MODULE_FIRMWARE("radeon/hawaii_ce.bin");
> -MODULE_FIRMWARE("radeon/hawaii_rlc.bin");
> -MODULE_FIRMWARE("radeon/hawaii_mec.bin");
> -
> -MODULE_FIRMWARE("radeon/kaveri_pfp.bin");
> -MODULE_FIRMWARE("radeon/kaveri_me.bin");
> -MODULE_FIRMWARE("radeon/kaveri_ce.bin");
> -MODULE_FIRMWARE("radeon/kaveri_rlc.bin");
> -MODULE_FIRMWARE("radeon/kaveri_mec.bin");
> -MODULE_FIRMWARE("radeon/kaveri_mec2.bin");
> -
> -MODULE_FIRMWARE("radeon/kabini_pfp.bin");
> -MODULE_FIRMWARE("radeon/kabini_me.bin");
> -MODULE_FIRMWARE("radeon/kabini_ce.bin");
> -MODULE_FIRMWARE("radeon/kabini_rlc.bin");
> -MODULE_FIRMWARE("radeon/kabini_mec.bin");
> -
> -MODULE_FIRMWARE("radeon/mullins_pfp.bin");
> -MODULE_FIRMWARE("radeon/mullins_me.bin");
> -MODULE_FIRMWARE("radeon/mullins_ce.bin");
> -MODULE_FIRMWARE("radeon/mullins_rlc.bin");
> -MODULE_FIRMWARE("radeon/mullins_mec.bin");
> +MODULE_FIRMWARE("amdgpu/bonaire_pfp.bin");
> +MODULE_FIRMWARE("amdgpu/bonaire_me.bin");
> +MODULE_FIRMWARE("amdgpu/bonaire_ce.bin");
> +MODULE_FIRMWARE("amdgpu/bonaire_rlc.bin");
> +MODULE_FIRMWARE("amdgpu/bonaire_mec.bin");
> +
> +MODULE_FIRMWARE("amdgpu/hawaii_pfp.bin");
> +MODULE_FIRMWARE("amdgpu/hawaii_me.bin");
> +MODULE_FIRMWARE("amdgpu/hawaii_ce.bin");
> +MODULE_FIRMWARE("amdgpu/hawaii_rlc.bin");
> +MODULE_FIRMWARE("amdgpu/hawaii_mec.bin");
> +
> +MODULE_FIRMWARE("amdgpu/kaveri_pfp.bin");
> +MODULE_FIRMWARE("amdgpu/kaveri_me.bin");
> +MODULE_FIRMWARE("amdgpu/kaveri_ce.bin");
> +MODULE_FIRMWARE("amdgpu/kaveri_rlc.bin");
> +MODULE_FIRMWARE("amdgpu/kaveri_mec.bin");
> +MODULE_FIRMWARE("amdgpu/kaveri_mec2.bin");
> +
> +MODULE_FIRMWARE("amdgpu/kabini_pfp.bin");
> +MODULE_FIRMWARE("amdgpu/kabini_me.bin");
> +MODULE_FIRMWARE("amdgpu/kabini_ce.bin");
> +MODULE_FIRMWARE("amdgpu/kabini_rlc.bin");
> +MODULE_FIRMWARE("amdgpu/kabini_mec.bin");
> +
> +MODULE_FIRMWARE("amdgpu/mullins_pfp.bin");
> +MODULE_FIRMWARE("amdgpu/mullins_me.bin");
> +MODULE_FIRMWARE("amdgpu/mullins_ce.bin");
> +MODULE_FIRMWARE("amdgpu/mullins_rlc.bin");
> +MODULE_FIRMWARE("amdgpu/mullins_mec.bin");
>
>   static const struct amdgpu_gds_reg_offset amdgpu_gds_reg_offset[] =
>   {
> @@ -925,7 +925,7 @@ static int gfx_v7_0_init_microcode(struct amdgpu_device *adev)
>       default: BUG();
>       }
>
> -     snprintf(fw_name, sizeof(fw_name), "radeon/%s_pfp.bin", chip_name);
> +     snprintf(fw_name, sizeof(fw_name), "amdgpu/%s_pfp.bin", chip_name);
>       err = request_firmware(&adev->gfx.pfp_fw, fw_name, adev->dev);
>       if (err)
>               goto out;
> @@ -933,7 +933,7 @@ static int gfx_v7_0_init_microcode(struct amdgpu_device *adev)
>       if (err)
>               goto out;
>
> -     snprintf(fw_name, sizeof(fw_name), "radeon/%s_me.bin", chip_name);
> +     snprintf(fw_name, sizeof(fw_name), "amdgpu/%s_me.bin", chip_name);
>       err = request_firmware(&adev->gfx.me_fw, fw_name, adev->dev);
>       if (err)
>               goto out;
> @@ -941,7 +941,7 @@ static int gfx_v7_0_init_microcode(struct amdgpu_device *adev)
>       if (err)
>               goto out;
>
> -     snprintf(fw_name, sizeof(fw_name), "radeon/%s_ce.bin", chip_name);
> +     snprintf(fw_name, sizeof(fw_name), "amdgpu/%s_ce.bin", chip_name);
>       err = request_firmware(&adev->gfx.ce_fw, fw_name, adev->dev);
>       if (err)
>               goto out;
> @@ -949,7 +949,7 @@ static int gfx_v7_0_init_microcode(struct amdgpu_device *adev)
>       if (err)
>               goto out;
>
> -     snprintf(fw_name, sizeof(fw_name), "radeon/%s_mec.bin", chip_name);
> +     snprintf(fw_name, sizeof(fw_name), "amdgpu/%s_mec.bin", chip_name);
>       err = request_firmware(&adev->gfx.mec_fw, fw_name, adev->dev);
>       if (err)
>               goto out;
> @@ -958,7 +958,7 @@ static int gfx_v7_0_init_microcode(struct amdgpu_device *adev)
>               goto out;
>
>       if (adev->asic_type == CHIP_KAVERI) {
> -             snprintf(fw_name, sizeof(fw_name), "radeon/%s_mec2.bin", chip_name);
> +             snprintf(fw_name, sizeof(fw_name), "amdgpu/%s_mec2.bin", chip_name);
>               err = request_firmware(&adev->gfx.mec2_fw, fw_name, adev->dev);
>               if (err)
>                       goto out;
> @@ -967,7 +967,7 @@ static int gfx_v7_0_init_microcode(struct amdgpu_device *adev)
>                       goto out;
>       }
>
> -     snprintf(fw_name, sizeof(fw_name), "radeon/%s_rlc.bin", chip_name);
> +     snprintf(fw_name, sizeof(fw_name), "amdgpu/%s_rlc.bin", chip_name);
>       err = request_firmware(&adev->gfx.rlc_fw, fw_name, adev->dev);
>       if (err)
>               goto out;
> diff --git a/drivers/gpu/drm/amd/amdgpu/gmc_v7_0.c b/drivers/gpu/drm/amd/amdgpu/gmc_v7_0.c
> index 7147bfe25a23..2c2b93d4d63b 100644
> --- a/drivers/gpu/drm/amd/amdgpu/gmc_v7_0.c
> +++ b/drivers/gpu/drm/amd/amdgpu/gmc_v7_0.c
> @@ -47,8 +47,8 @@ static void gmc_v7_0_set_gmc_funcs(struct amdgpu_device *adev);
>   static void gmc_v7_0_set_irq_funcs(struct amdgpu_device *adev);
>   static int gmc_v7_0_wait_for_idle(void *handle);
>
> -MODULE_FIRMWARE("radeon/bonaire_mc.bin");
> -MODULE_FIRMWARE("radeon/hawaii_mc.bin");
> +MODULE_FIRMWARE("amdgpu/bonaire_mc.bin");
> +MODULE_FIRMWARE("amdgpu/hawaii_mc.bin");
>   MODULE_FIRMWARE("amdgpu/topaz_mc.bin");
>
>   static const u32 golden_settings_iceland_a11[] =
> @@ -150,7 +150,7 @@ static int gmc_v7_0_init_microcode(struct amdgpu_device *adev)
>       if (adev->asic_type == CHIP_TOPAZ)
>               snprintf(fw_name, sizeof(fw_name), "amdgpu/%s_mc.bin", chip_name);
>       else
> -             snprintf(fw_name, sizeof(fw_name), "radeon/%s_mc.bin", chip_name);
> +             snprintf(fw_name, sizeof(fw_name), "amdgpu/%s_mc.bin", chip_name);
>
>       err = request_firmware(&adev->gmc.fw, fw_name, adev->dev);
>       if (err)
>
_______________________________________________
amd-gfx mailing list
amd-gfx at lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx


More information about the amd-gfx mailing list