aboutsummaryrefslogtreecommitdiffstats
path: root/common/recipes-kernel/linux/files/0152-drm-amd-powerplay-fix-bug-that-NULL-checks-are-rever.patch
diff options
context:
space:
mode:
Diffstat (limited to 'common/recipes-kernel/linux/files/0152-drm-amd-powerplay-fix-bug-that-NULL-checks-are-rever.patch')
-rw-r--r--common/recipes-kernel/linux/files/0152-drm-amd-powerplay-fix-bug-that-NULL-checks-are-rever.patch68
1 files changed, 68 insertions, 0 deletions
diff --git a/common/recipes-kernel/linux/files/0152-drm-amd-powerplay-fix-bug-that-NULL-checks-are-rever.patch b/common/recipes-kernel/linux/files/0152-drm-amd-powerplay-fix-bug-that-NULL-checks-are-rever.patch
new file mode 100644
index 00000000..397da594
--- /dev/null
+++ b/common/recipes-kernel/linux/files/0152-drm-amd-powerplay-fix-bug-that-NULL-checks-are-rever.patch
@@ -0,0 +1,68 @@
+From 7e79b0a0025c11fc8dc23253eb13accc264abf4e Mon Sep 17 00:00:00 2001
+From: Rex Zhu <Rex.Zhu@amd.com>
+Date: Wed, 6 Jan 2016 16:22:07 +0800
+Subject: [PATCH 0152/1110] drm/amd/powerplay: fix bug that NULL checks are
+ reversed.
+
+&& was used instead of ||.
+
+Signed-off-by: Rex Zhu <Rex.Zhu@amd.com>
+Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
+Reviewed-by: Ken Wang <Qingqing.Wang@amd.com>
+Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
+---
+ drivers/gpu/drm/amd/powerplay/hwmgr/cz_hwmgr.c | 10 +++++-----
+ 1 file changed, 5 insertions(+), 5 deletions(-)
+
+diff --git a/drivers/gpu/drm/amd/powerplay/hwmgr/cz_hwmgr.c b/drivers/gpu/drm/amd/powerplay/hwmgr/cz_hwmgr.c
+index 5bac36b..c0e6aae 100644
+--- a/drivers/gpu/drm/amd/powerplay/hwmgr/cz_hwmgr.c
++++ b/drivers/gpu/drm/amd/powerplay/hwmgr/cz_hwmgr.c
+@@ -579,7 +579,7 @@ static int cz_tf_init_sclk_limit(struct pp_hwmgr *hwmgr, void *input,
+ hwmgr->dyn_state.vddc_dependency_on_sclk;
+ unsigned long clock = 0, level;
+
+- if (NULL == table && table->count <= 0)
++ if (NULL == table || table->count <= 0)
+ return -EINVAL;
+
+ cz_hwmgr->sclk_dpm.soft_min_clk = table->entries[0].clk;
+@@ -606,7 +606,7 @@ static int cz_tf_init_uvd_limit(struct pp_hwmgr *hwmgr, void *input,
+ hwmgr->dyn_state.uvd_clock_voltage_dependency_table;
+ unsigned long clock = 0, level;
+
+- if (NULL == table && table->count <= 0)
++ if (NULL == table || table->count <= 0)
+ return -EINVAL;
+
+ cz_hwmgr->uvd_dpm.soft_min_clk = 0;
+@@ -634,7 +634,7 @@ static int cz_tf_init_vce_limit(struct pp_hwmgr *hwmgr, void *input,
+ hwmgr->dyn_state.vce_clock_voltage_dependency_table;
+ unsigned long clock = 0, level;
+
+- if (NULL == table && table->count <= 0)
++ if (NULL == table || table->count <= 0)
+ return -EINVAL;
+
+ cz_hwmgr->vce_dpm.soft_min_clk = 0;
+@@ -662,7 +662,7 @@ static int cz_tf_init_acp_limit(struct pp_hwmgr *hwmgr, void *input,
+ hwmgr->dyn_state.acp_clock_voltage_dependency_table;
+ unsigned long clock = 0, level;
+
+- if (NULL == table && table->count <= 0)
++ if (NULL == table || table->count <= 0)
+ return -EINVAL;
+
+ cz_hwmgr->acp_dpm.soft_min_clk = 0;
+@@ -1183,7 +1183,7 @@ int cz_phm_unforce_dpm_levels(struct pp_hwmgr *hwmgr)
+ hwmgr->dyn_state.vddc_dependency_on_sclk;
+ unsigned long clock = 0, level;
+
+- if (NULL == table && table->count <= 0)
++ if (NULL == table || table->count <= 0)
+ return -EINVAL;
+
+ cz_hwmgr->sclk_dpm.soft_min_clk = table->entries[0].clk;
+--
+2.7.4
+