aboutsummaryrefslogtreecommitdiffstats
path: root/meta-amd-bsp/recipes-kernel/linux-5.4/linux-yocto-5.4.2/1186-drm-amdgpu-smu-use-unified-variable-smu-is_apu-to-ch.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta-amd-bsp/recipes-kernel/linux-5.4/linux-yocto-5.4.2/1186-drm-amdgpu-smu-use-unified-variable-smu-is_apu-to-ch.patch')
-rw-r--r--meta-amd-bsp/recipes-kernel/linux-5.4/linux-yocto-5.4.2/1186-drm-amdgpu-smu-use-unified-variable-smu-is_apu-to-ch.patch98
1 files changed, 98 insertions, 0 deletions
diff --git a/meta-amd-bsp/recipes-kernel/linux-5.4/linux-yocto-5.4.2/1186-drm-amdgpu-smu-use-unified-variable-smu-is_apu-to-ch.patch b/meta-amd-bsp/recipes-kernel/linux-5.4/linux-yocto-5.4.2/1186-drm-amdgpu-smu-use-unified-variable-smu-is_apu-to-ch.patch
new file mode 100644
index 00000000..4a37f201
--- /dev/null
+++ b/meta-amd-bsp/recipes-kernel/linux-5.4/linux-yocto-5.4.2/1186-drm-amdgpu-smu-use-unified-variable-smu-is_apu-to-ch.patch
@@ -0,0 +1,98 @@
+From 10c15a59e59fad0a43f14b11e23d5a4ebff2cba3 Mon Sep 17 00:00:00 2001
+From: Kevin Wang <kevin1.wang@amd.com>
+Date: Mon, 23 Dec 2019 18:17:36 +0800
+Subject: [PATCH 1186/1453] drm/amdgpu/smu: use unified variable smu->is_apu to
+ check apu asic platform
+
+use unified variable smu->is_apu to check apu asic in smu driver.
+
+related patch:
+drm/amd/powerplay: bypass dpm_context null pointer check guard for some
+smu series
+
+Signed-off-by: Kevin Wang <kevin1.wang@amd.com>
+Reviewed-by: Huang Rui <ray.huang@amd.com>
+---
+ drivers/gpu/drm/amd/powerplay/amdgpu_smu.c | 9 ++++-----
+ drivers/gpu/drm/amd/powerplay/smu_v12_0.c | 6 +++---
+ 2 files changed, 7 insertions(+), 8 deletions(-)
+
+diff --git a/drivers/gpu/drm/amd/powerplay/amdgpu_smu.c b/drivers/gpu/drm/amd/powerplay/amdgpu_smu.c
+index d616a69b5e9f..ce582dd66c19 100644
+--- a/drivers/gpu/drm/amd/powerplay/amdgpu_smu.c
++++ b/drivers/gpu/drm/amd/powerplay/amdgpu_smu.c
+@@ -640,12 +640,11 @@ int smu_feature_init_dpm(struct smu_context *smu)
+
+ int smu_feature_is_enabled(struct smu_context *smu, enum smu_feature_mask mask)
+ {
+- struct amdgpu_device *adev = smu->adev;
+ struct smu_feature *feature = &smu->smu_feature;
+ int feature_id;
+ int ret = 0;
+
+- if (adev->flags & AMD_IS_APU)
++ if (smu->is_apu)
+ return 1;
+
+ feature_id = smu_feature_get_index(smu, mask);
+@@ -1239,7 +1238,7 @@ static int smu_hw_init(void *handle)
+ return ret;
+ }
+
+- if (adev->flags & AMD_IS_APU) {
++ if (smu->is_apu) {
+ smu_powergate_sdma(&adev->smu, false);
+ smu_powergate_vcn(&adev->smu, false);
+ smu_powergate_jpeg(&adev->smu, false);
+@@ -1298,7 +1297,7 @@ static int smu_hw_fini(void *handle)
+ struct smu_table_context *table_context = &smu->smu_table;
+ int ret = 0;
+
+- if (adev->flags & AMD_IS_APU) {
++ if (smu->is_apu) {
+ smu_powergate_sdma(&adev->smu, true);
+ smu_powergate_vcn(&adev->smu, true);
+ smu_powergate_jpeg(&adev->smu, true);
+@@ -1374,7 +1373,7 @@ static int smu_suspend(void *handle)
+ struct smu_context *smu = &adev->smu;
+ bool baco_feature_is_enabled = false;
+
+- if(!(adev->flags & AMD_IS_APU))
++ if(!smu->is_apu)
+ baco_feature_is_enabled = smu_feature_is_enabled(smu, SMU_FEATURE_BACO_BIT);
+
+ ret = smu_system_features_control(smu, false);
+diff --git a/drivers/gpu/drm/amd/powerplay/smu_v12_0.c b/drivers/gpu/drm/amd/powerplay/smu_v12_0.c
+index 2ac7f2f231b6..9e27462d0f4e 100644
+--- a/drivers/gpu/drm/amd/powerplay/smu_v12_0.c
++++ b/drivers/gpu/drm/amd/powerplay/smu_v12_0.c
+@@ -159,7 +159,7 @@ int smu_v12_0_check_fw_version(struct smu_context *smu)
+
+ int smu_v12_0_powergate_sdma(struct smu_context *smu, bool gate)
+ {
+- if (!(smu->adev->flags & AMD_IS_APU))
++ if (!smu->is_apu)
+ return 0;
+
+ if (gate)
+@@ -170,7 +170,7 @@ int smu_v12_0_powergate_sdma(struct smu_context *smu, bool gate)
+
+ int smu_v12_0_powergate_vcn(struct smu_context *smu, bool gate)
+ {
+- if (!(smu->adev->flags & AMD_IS_APU))
++ if (!smu->is_apu)
+ return 0;
+
+ if (gate)
+@@ -181,7 +181,7 @@ int smu_v12_0_powergate_vcn(struct smu_context *smu, bool gate)
+
+ int smu_v12_0_powergate_jpeg(struct smu_context *smu, bool gate)
+ {
+- if (!(smu->adev->flags & AMD_IS_APU))
++ if (!smu->is_apu)
+ return 0;
+
+ if (gate)
+--
+2.17.1
+