aboutsummaryrefslogtreecommitdiffstats
path: root/common/recipes-kernel/linux/linux-yocto-4.14.71/5608-drm-amdgpu-gmc8-always-load-MC-firmware-in-the-drive.patch
diff options
context:
space:
mode:
Diffstat (limited to 'common/recipes-kernel/linux/linux-yocto-4.14.71/5608-drm-amdgpu-gmc8-always-load-MC-firmware-in-the-drive.patch')
-rw-r--r--common/recipes-kernel/linux/linux-yocto-4.14.71/5608-drm-amdgpu-gmc8-always-load-MC-firmware-in-the-drive.patch46
1 files changed, 46 insertions, 0 deletions
diff --git a/common/recipes-kernel/linux/linux-yocto-4.14.71/5608-drm-amdgpu-gmc8-always-load-MC-firmware-in-the-drive.patch b/common/recipes-kernel/linux/linux-yocto-4.14.71/5608-drm-amdgpu-gmc8-always-load-MC-firmware-in-the-drive.patch
new file mode 100644
index 00000000..e461abec
--- /dev/null
+++ b/common/recipes-kernel/linux/linux-yocto-4.14.71/5608-drm-amdgpu-gmc8-always-load-MC-firmware-in-the-drive.patch
@@ -0,0 +1,46 @@
+From b7a5a8408361ba9967e10e227a4d007b5926a9e4 Mon Sep 17 00:00:00 2001
+From: Alex Deucher <alexander.deucher@amd.com>
+Date: Wed, 28 Nov 2018 23:28:17 -0500
+Subject: [PATCH 5608/5725] drm/amdgpu/gmc8: always load MC firmware in the
+ driver
+
+Some power features rely on the driver loaded version so always
+load the MC firmware from the driver even if the vbios loaded
+a version already.
+
+Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
+Reviewed-by: Junwei Zhang <Jerry.Zhang@amd.com>
+---
+ drivers/gpu/drm/amd/amdgpu/gmc_v8_0.c | 9 +--------
+ 1 file changed, 1 insertion(+), 8 deletions(-)
+
+diff --git a/drivers/gpu/drm/amd/amdgpu/gmc_v8_0.c b/drivers/gpu/drm/amd/amdgpu/gmc_v8_0.c
+index e729f38..9c1b2d3a 100644
+--- a/drivers/gpu/drm/amd/amdgpu/gmc_v8_0.c
++++ b/drivers/gpu/drm/amd/amdgpu/gmc_v8_0.c
+@@ -365,7 +365,7 @@ static int gmc_v8_0_polaris_mc_load_microcode(struct amdgpu_device *adev)
+ const struct mc_firmware_header_v1_0 *hdr;
+ const __le32 *fw_data = NULL;
+ const __le32 *io_mc_regs = NULL;
+- u32 data, vbios_version;
++ u32 data;
+ int i, ucode_size, regs_size;
+
+ /* Skip MC ucode loading on SR-IOV capable boards.
+@@ -376,13 +376,6 @@ static int gmc_v8_0_polaris_mc_load_microcode(struct amdgpu_device *adev)
+ if (amdgpu_sriov_bios(adev))
+ return 0;
+
+- WREG32(mmMC_SEQ_IO_DEBUG_INDEX, 0x9F);
+- data = RREG32(mmMC_SEQ_IO_DEBUG_DATA);
+- vbios_version = data & 0xf;
+-
+- if (vbios_version == 0)
+- return 0;
+-
+ if (!adev->gmc.fw)
+ return -EINVAL;
+
+--
+2.7.4
+