aboutsummaryrefslogtreecommitdiffstats
path: root/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.19.8/3467-drm-amdgpu-gfx9-update-pg_flags-after-determining-if.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.19.8/3467-drm-amdgpu-gfx9-update-pg_flags-after-determining-if.patch')
-rw-r--r--meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.19.8/3467-drm-amdgpu-gfx9-update-pg_flags-after-determining-if.patch56
1 files changed, 56 insertions, 0 deletions
diff --git a/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.19.8/3467-drm-amdgpu-gfx9-update-pg_flags-after-determining-if.patch b/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.19.8/3467-drm-amdgpu-gfx9-update-pg_flags-after-determining-if.patch
new file mode 100644
index 00000000..5d580f7c
--- /dev/null
+++ b/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.19.8/3467-drm-amdgpu-gfx9-update-pg_flags-after-determining-if.patch
@@ -0,0 +1,56 @@
+From 0dd6f0b7dbf79233a263b6d0e2493e978cc253a7 Mon Sep 17 00:00:00 2001
+From: Alex Deucher <alexander.deucher@amd.com>
+Date: Thu, 15 Aug 2019 08:27:09 -0500
+Subject: [PATCH 3467/4256] drm/amdgpu/gfx9: update pg_flags after determining
+ if gfx off is possible
+
+We need to set certain power gating flags after we determine
+if the firmware version is sufficient to support gfxoff.
+Previously we set the pg flags in early init, but we later
+we might have disabled gfxoff if the firmware versions didn't
+support it. Move adding the additional pg flags after we
+determine whether or not to support gfxoff.
+
+Fixes: 005440066f92 ("drm/amdgpu: enable gfxoff again on raven series (v2)")
+Tested-by: Kai-Heng Feng <kai.heng.feng@canonical.com>
+Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
+Cc: Kai-Heng Feng <kai.heng.feng@canonical.com>
+---
+ drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c | 4 ++++
+ drivers/gpu/drm/amd/amdgpu/soc15.c | 5 -----
+ 2 files changed, 4 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 5c8107dc8803..155a8699adb8 100644
+--- a/drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c
++++ b/drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c
+@@ -1037,6 +1037,10 @@ static void gfx_v9_0_check_if_need_gfxoff(struct amdgpu_device *adev)
+ (adev->gfx.rlc_feature_version < 1) ||
+ !adev->gfx.rlc.is_rlc_v2_1)
+ adev->pm.pp_feature &= ~PP_GFXOFF_MASK;
++ if (adev->pm.pp_feature & PP_GFXOFF_MASK)
++ adev->pg_flags |= AMD_PG_SUPPORT_GFX_PG |
++ AMD_PG_SUPPORT_CP |
++ AMD_PG_SUPPORT_RLC_SMU_HS;
+ break;
+ default:
+ break;
+diff --git a/drivers/gpu/drm/amd/amdgpu/soc15.c b/drivers/gpu/drm/amd/amdgpu/soc15.c
+index 77e679920c1c..2cf61946f3f1 100644
+--- a/drivers/gpu/drm/amd/amdgpu/soc15.c
++++ b/drivers/gpu/drm/amd/amdgpu/soc15.c
+@@ -1133,11 +1133,6 @@ static int soc15_common_early_init(void *handle)
+
+ adev->pg_flags = AMD_PG_SUPPORT_SDMA | AMD_PG_SUPPORT_VCN;
+ }
+-
+- if (adev->pm.pp_feature & PP_GFXOFF_MASK)
+- adev->pg_flags |= AMD_PG_SUPPORT_GFX_PG |
+- AMD_PG_SUPPORT_CP |
+- AMD_PG_SUPPORT_RLC_SMU_HS;
+ break;
+ case CHIP_ARCTURUS:
+ adev->asic_funcs = &vega20_asic_funcs;
+--
+2.17.1
+