aboutsummaryrefslogtreecommitdiffstats
path: root/common/recipes-kernel/linux/files/0129-drm-powerplay-add-debugging-output-to-processpptable.patch
diff options
context:
space:
mode:
Diffstat (limited to 'common/recipes-kernel/linux/files/0129-drm-powerplay-add-debugging-output-to-processpptable.patch')
-rw-r--r--common/recipes-kernel/linux/files/0129-drm-powerplay-add-debugging-output-to-processpptable.patch83
1 files changed, 83 insertions, 0 deletions
diff --git a/common/recipes-kernel/linux/files/0129-drm-powerplay-add-debugging-output-to-processpptable.patch b/common/recipes-kernel/linux/files/0129-drm-powerplay-add-debugging-output-to-processpptable.patch
new file mode 100644
index 00000000..60cedcfd
--- /dev/null
+++ b/common/recipes-kernel/linux/files/0129-drm-powerplay-add-debugging-output-to-processpptable.patch
@@ -0,0 +1,83 @@
+From bb4da830a4501d0a4af27db7fa11ed3d763d19bc Mon Sep 17 00:00:00 2001
+From: Alex Deucher <alexander.deucher@amd.com>
+Date: Fri, 11 Dec 2015 12:32:55 -0500
+Subject: [PATCH 0129/1110] drm/powerplay: add debugging output to
+ processpptables.c
+
+To help track down init errors.
+
+Reviewed-by: Tom St Denis <tom.stdenis@amd.com>
+Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
+---
+ .../gpu/drm/amd/powerplay/hwmgr/processpptables.c | 42 +++++++++++++++-------
+ 1 file changed, 29 insertions(+), 13 deletions(-)
+
+diff --git a/drivers/gpu/drm/amd/powerplay/hwmgr/processpptables.c b/drivers/gpu/drm/amd/powerplay/hwmgr/processpptables.c
+index fdda6b4..1d385f4 100644
+--- a/drivers/gpu/drm/amd/powerplay/hwmgr/processpptables.c
++++ b/drivers/gpu/drm/amd/powerplay/hwmgr/processpptables.c
+@@ -27,6 +27,7 @@
+ #include "processpptables.h"
+ #include <atom-types.h>
+ #include <atombios.h>
++#include "pp_debug.h"
+ #include "pptable.h"
+ #include "power_state.h"
+ #include "hwmgr.h"
+@@ -1539,25 +1540,40 @@ static int pp_tables_initialize(struct pp_hwmgr *hwmgr)
+
+ result = init_powerplay_tables(hwmgr, powerplay_table);
+
+- if (0 == result)
+- result = set_platform_caps(hwmgr,
++ PP_ASSERT_WITH_CODE((result == 0),
++ "init_powerplay_tables failed", return result);
++
++ result = set_platform_caps(hwmgr,
+ le32_to_cpu(powerplay_table->ulPlatformCaps));
+
+- if (0 == result)
+- result = init_thermal_controller(hwmgr, powerplay_table);
++ PP_ASSERT_WITH_CODE((result == 0),
++ "set_platform_caps failed", return result);
+
+- if (0 == result)
+- result = init_overdrive_limits(hwmgr, powerplay_table);
++ result = init_thermal_controller(hwmgr, powerplay_table);
+
+- if (0 == result)
+- result = init_clock_voltage_dependency(hwmgr,
+- powerplay_table);
++ PP_ASSERT_WITH_CODE((result == 0),
++ "init_thermal_controller failed", return result);
++
++ result = init_overdrive_limits(hwmgr, powerplay_table);
++
++ PP_ASSERT_WITH_CODE((result == 0),
++ "init_overdrive_limits failed", return result);
++
++ result = init_clock_voltage_dependency(hwmgr,
++ powerplay_table);
++
++ PP_ASSERT_WITH_CODE((result == 0),
++ "init_clock_voltage_dependency failed", return result);
++
++ result = init_dpm2_parameters(hwmgr, powerplay_table);
++
++ PP_ASSERT_WITH_CODE((result == 0),
++ "init_dpm2_parameters failed", return result);
+
+- if (0 == result)
+- result = init_dpm2_parameters(hwmgr, powerplay_table);
++ result = init_phase_shedding_table(hwmgr, powerplay_table);
+
+- if (0 == result)
+- result = init_phase_shedding_table(hwmgr, powerplay_table);
++ PP_ASSERT_WITH_CODE((result == 0),
++ "init_phase_shedding_table failed", return result);
+
+ return result;
+ }
+--
+2.7.4
+