diff options
Diffstat (limited to 'meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.19.8/2954-drm-amd-powerplay-get-smc-firmware-and-pptable.patch')
-rw-r--r-- | meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.19.8/2954-drm-amd-powerplay-get-smc-firmware-and-pptable.patch | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.19.8/2954-drm-amd-powerplay-get-smc-firmware-and-pptable.patch b/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.19.8/2954-drm-amd-powerplay-get-smc-firmware-and-pptable.patch new file mode 100644 index 00000000..9868da98 --- /dev/null +++ b/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.19.8/2954-drm-amd-powerplay-get-smc-firmware-and-pptable.patch @@ -0,0 +1,67 @@ +From 4f366a0aecd72fe950d4231fc2755ace32ac4d19 Mon Sep 17 00:00:00 2001 +From: Chengming Gui <Jack.Gui@amd.com> +Date: Tue, 9 Jul 2019 11:04:17 -0500 +Subject: [PATCH 2954/4256] drm/amd/powerplay: get smc firmware and pptable + +get smc firmware and pptable for arcturus + +Signed-off-by: Chengming Gui <Jack.Gui@amd.com> +Reviewed-by: Kevin Wang <kevin1.wang@amd.com> +Signed-off-by: Alex Deucher <alexander.deucher@amd.com> +--- + drivers/gpu/drm/amd/powerplay/smu_v11_0.c | 11 ++++++++--- + 1 file changed, 8 insertions(+), 3 deletions(-) + +diff --git a/drivers/gpu/drm/amd/powerplay/smu_v11_0.c b/drivers/gpu/drm/amd/powerplay/smu_v11_0.c +index d0764ba2705c..7d723a5e4135 100644 +--- a/drivers/gpu/drm/amd/powerplay/smu_v11_0.c ++++ b/drivers/gpu/drm/amd/powerplay/smu_v11_0.c +@@ -43,6 +43,7 @@ + #include "asic_reg/smuio/smuio_11_0_0_sh_mask.h" + + MODULE_FIRMWARE("amdgpu/vega20_smc.bin"); ++MODULE_FIRMWARE("amdgpu/arcturus_smc.bin"); + MODULE_FIRMWARE("amdgpu/navi10_smc.bin"); + MODULE_FIRMWARE("amdgpu/navi14_smc.bin"); + +@@ -153,6 +154,9 @@ static int smu_v11_0_init_microcode(struct smu_context *smu) + case CHIP_VEGA20: + chip_name = "vega20"; + break; ++ case CHIP_ARCTURUS: ++ chip_name = "arcturus"; ++ break; + case CHIP_NAVI10: + chip_name = "navi10"; + break; +@@ -204,7 +208,7 @@ static int smu_v11_0_load_microcode(struct smu_context *smu) + uint32_t i; + uint32_t mp1_fw_flags; + +- hdr = (const struct smc_firmware_header_v1_0 *) adev->pm.fw->data; ++ hdr = (const struct smc_firmware_header_v1_0 *) adev->pm.fw->data; + src = (const uint32_t *)(adev->pm.fw->data + + le32_to_cpu(hdr->header.ucode_array_offset_bytes)); + +@@ -291,7 +295,8 @@ static int smu_v11_0_set_pptable_v2_0(struct smu_context *smu, void **table, uin + return 0; + } + +-static int smu_v11_0_set_pptable_v2_1(struct smu_context *smu, void **table, uint32_t *size, uint32_t pptable_id) ++static int smu_v11_0_set_pptable_v2_1(struct smu_context *smu, void **table, ++ uint32_t *size, uint32_t pptable_id) + { + struct amdgpu_device *adev = smu->adev; + const struct smc_firmware_header_v2_1 *v2_1; +@@ -1739,7 +1744,7 @@ static const struct smu_funcs smu_v11_0_funcs = { + .send_smc_msg = smu_v11_0_send_msg, + .send_smc_msg_with_param = smu_v11_0_send_msg_with_param, + .read_smc_arg = smu_v11_0_read_arg, +- .setup_pptable= smu_v11_0_setup_pptable, ++ .setup_pptable = smu_v11_0_setup_pptable, + .init_smc_tables = smu_v11_0_init_smc_tables, + .fini_smc_tables = smu_v11_0_fini_smc_tables, + .init_power = smu_v11_0_init_power, +-- +2.17.1 + |