aboutsummaryrefslogtreecommitdiffstats
path: root/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.19.8/3263-drm-amdgpu-disable-MEC2-JT-context-init-for-Arcturus.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.19.8/3263-drm-amdgpu-disable-MEC2-JT-context-init-for-Arcturus.patch')
-rw-r--r--meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.19.8/3263-drm-amdgpu-disable-MEC2-JT-context-init-for-Arcturus.patch46
1 files changed, 46 insertions, 0 deletions
diff --git a/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.19.8/3263-drm-amdgpu-disable-MEC2-JT-context-init-for-Arcturus.patch b/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.19.8/3263-drm-amdgpu-disable-MEC2-JT-context-init-for-Arcturus.patch
new file mode 100644
index 00000000..6ef45fb9
--- /dev/null
+++ b/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.19.8/3263-drm-amdgpu-disable-MEC2-JT-context-init-for-Arcturus.patch
@@ -0,0 +1,46 @@
+From 91c47c1e2c9d4c0f929f1ca5d5f26c24725543fc Mon Sep 17 00:00:00 2001
+From: John Clements <John.Clements@amd.com>
+Date: Wed, 31 Jul 2019 16:11:08 +0800
+Subject: [PATCH 3263/4256] drm/amdgpu: disable MEC2 JT context init for
+ Arcturus
+
+We don't need to handle it like other asics.
+
+Change-Id: I01fc3538b4888b58b90826306c6acb32bd0d26f4
+Signed-off-by: John Clements <John.Clements@amd.com>
+Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com>
+Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
+---
+ drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c | 16 +++++++++++-----
+ 1 file changed, 11 insertions(+), 5 deletions(-)
+
+diff --git a/drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c b/drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c
+index bc8f35853196..c04cf92214e1 100644
+--- a/drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c
++++ b/drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c
+@@ -1282,11 +1282,17 @@ static int gfx_v9_0_init_cp_compute_microcode(struct amdgpu_device *adev,
+ cp_hdr = (const struct gfx_firmware_header_v1_0 *)info->fw->data;
+ adev->firmware.fw_size +=
+ ALIGN(le32_to_cpu(header->ucode_size_bytes) - le32_to_cpu(cp_hdr->jt_size) * 4, PAGE_SIZE);
+- info = &adev->firmware.ucode[AMDGPU_UCODE_ID_CP_MEC2_JT];
+- info->ucode_id = AMDGPU_UCODE_ID_CP_MEC2_JT;
+- info->fw = adev->gfx.mec2_fw;
+- adev->firmware.fw_size +=
+- ALIGN(le32_to_cpu(cp_hdr->jt_size) * 4, PAGE_SIZE);
++
++ /* TODO: Determine if MEC2 JT FW loading can be removed
++ for all GFX V9 asic and above */
++ if (adev->asic_type != CHIP_ARCTURUS) {
++ info = &adev->firmware.ucode[AMDGPU_UCODE_ID_CP_MEC2_JT];
++ info->ucode_id = AMDGPU_UCODE_ID_CP_MEC2_JT;
++ info->fw = adev->gfx.mec2_fw;
++ adev->firmware.fw_size +=
++ ALIGN(le32_to_cpu(cp_hdr->jt_size) * 4,
++ PAGE_SIZE);
++ }
+ }
+ }
+
+--
+2.17.1
+