aboutsummaryrefslogtreecommitdiffstats
path: root/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.19.8/4623-amd-amdgpu-sriov-swSMU-disable-for-sriov.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.19.8/4623-amd-amdgpu-sriov-swSMU-disable-for-sriov.patch')
-rw-r--r--meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.19.8/4623-amd-amdgpu-sriov-swSMU-disable-for-sriov.patch47
1 files changed, 47 insertions, 0 deletions
diff --git a/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.19.8/4623-amd-amdgpu-sriov-swSMU-disable-for-sriov.patch b/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.19.8/4623-amd-amdgpu-sriov-swSMU-disable-for-sriov.patch
new file mode 100644
index 00000000..c8cda30d
--- /dev/null
+++ b/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.19.8/4623-amd-amdgpu-sriov-swSMU-disable-for-sriov.patch
@@ -0,0 +1,47 @@
+From daae5be7cdfd04391cb447f0ec09f4ddc9feb1f9 Mon Sep 17 00:00:00 2001
+From: Jack Zhang <Jack.Zhang1@amd.com>
+Date: Mon, 2 Dec 2019 18:41:36 +0800
+Subject: [PATCH 4623/4736] amd/amdgpu/sriov swSMU disable for sriov
+
+For boards greater than ARCTURUS, and under sriov platform,
+swSMU is not supported because smu ip block is commented at
+guest driver.
+
+Generally for sriov, initialization of smu is moved to host driver.
+Thus, smu sw_init and hw_init will not be executed at guest driver.
+
+Without sw structure being initialized in guest driver, swSMU cannot
+declare to be supported.
+
+Change-Id: Idb1c577d0dc2fc67cb6e83352aba83c9a987875f
+Signed-off-by: Jack Zhang <Jack.Zhang1@amd.com>
+Reviewed-by: Kevin Wang <kevin1.wang@amd.com>
+---
+ drivers/gpu/drm/amd/powerplay/amdgpu_smu.c | 11 +++++++----
+ 1 file changed, 7 insertions(+), 4 deletions(-)
+
+diff --git a/drivers/gpu/drm/amd/powerplay/amdgpu_smu.c b/drivers/gpu/drm/amd/powerplay/amdgpu_smu.c
+index acbbafeea01c..b57239d2228b 100644
+--- a/drivers/gpu/drm/amd/powerplay/amdgpu_smu.c
++++ b/drivers/gpu/drm/amd/powerplay/amdgpu_smu.c
+@@ -529,10 +529,13 @@ int smu_update_table(struct smu_context *smu, enum smu_table_id table_index, int
+ bool is_support_sw_smu(struct amdgpu_device *adev)
+ {
+ if (adev->asic_type == CHIP_VEGA20)
+- return (amdgpu_dpm == 2) ? true: false;
+- else if (adev->asic_type >= CHIP_ARCTURUS)
+- return true;
+- else
++ return (amdgpu_dpm == 2) ? true : false;
++ else if (adev->asic_type >= CHIP_ARCTURUS) {
++ if (amdgpu_sriov_vf(adev))
++ return false;
++ else
++ return true;
++ } else
+ return false;
+ }
+
+--
+2.17.1
+