aboutsummaryrefslogtreecommitdiffstats
path: root/common/recipes-kernel/linux/files/0034-drm-amdgpu-share-struct-amdgpu_pm_state_type-with-po.patch
diff options
context:
space:
mode:
Diffstat (limited to 'common/recipes-kernel/linux/files/0034-drm-amdgpu-share-struct-amdgpu_pm_state_type-with-po.patch')
-rw-r--r--common/recipes-kernel/linux/files/0034-drm-amdgpu-share-struct-amdgpu_pm_state_type-with-po.patch139
1 files changed, 139 insertions, 0 deletions
diff --git a/common/recipes-kernel/linux/files/0034-drm-amdgpu-share-struct-amdgpu_pm_state_type-with-po.patch b/common/recipes-kernel/linux/files/0034-drm-amdgpu-share-struct-amdgpu_pm_state_type-with-po.patch
new file mode 100644
index 00000000..aa2849ca
--- /dev/null
+++ b/common/recipes-kernel/linux/files/0034-drm-amdgpu-share-struct-amdgpu_pm_state_type-with-po.patch
@@ -0,0 +1,139 @@
+From 18fb4fa3bf16be2c4482ba3f82df55c36d6c669b Mon Sep 17 00:00:00 2001
+From: Rex Zhu <Rex.Zhu@amd.com>
+Date: Tue, 25 Aug 2015 15:57:43 +0800
+Subject: [PATCH 0034/1110] drm/amdgpu: share struct amdgpu_pm_state_type with
+ powerplay module
+
+rename amdgpu_pm_state_type to amd_pm_state_type
+
+Signed-off-by: Rex Zhu <Rex.Zhu@amd.com>
+Acked-by: Jammy Zhou <Jammy.Zhou@amd.com>
+Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
+---
+ drivers/gpu/drm/amd/amdgpu/amdgpu.h | 28 ++--------------------------
+ drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c | 8 ++++----
+ drivers/gpu/drm/amd/include/amd_shared.h | 21 +++++++++++++++++++++
+ 3 files changed, 27 insertions(+), 30 deletions(-)
+
+diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu.h b/drivers/gpu/drm/amd/amdgpu/amdgpu.h
+index 41bee9e..a10f421 100644
+--- a/drivers/gpu/drm/amd/amdgpu/amdgpu.h
++++ b/drivers/gpu/drm/amd/amdgpu/amdgpu.h
+@@ -1307,31 +1307,7 @@ struct amdgpu_wb {
+ int amdgpu_wb_get(struct amdgpu_device *adev, u32 *wb);
+ void amdgpu_wb_free(struct amdgpu_device *adev, u32 wb);
+
+-/**
+- * struct amdgpu_pm - power management datas
+- * It keeps track of various data needed to take powermanagement decision.
+- */
+
+-enum amdgpu_pm_state_type {
+- /* not used for dpm */
+- POWER_STATE_TYPE_DEFAULT,
+- POWER_STATE_TYPE_POWERSAVE,
+- /* user selectable states */
+- POWER_STATE_TYPE_BATTERY,
+- POWER_STATE_TYPE_BALANCED,
+- POWER_STATE_TYPE_PERFORMANCE,
+- /* internal states */
+- POWER_STATE_TYPE_INTERNAL_UVD,
+- POWER_STATE_TYPE_INTERNAL_UVD_SD,
+- POWER_STATE_TYPE_INTERNAL_UVD_HD,
+- POWER_STATE_TYPE_INTERNAL_UVD_HD2,
+- POWER_STATE_TYPE_INTERNAL_UVD_MVC,
+- POWER_STATE_TYPE_INTERNAL_BOOT,
+- POWER_STATE_TYPE_INTERNAL_THERMAL,
+- POWER_STATE_TYPE_INTERNAL_ACPI,
+- POWER_STATE_TYPE_INTERNAL_ULV,
+- POWER_STATE_TYPE_INTERNAL_3DPERF,
+-};
+
+ enum amdgpu_int_thermal_type {
+ THERMAL_TYPE_NONE,
+@@ -1613,8 +1589,8 @@ struct amdgpu_dpm {
+ /* vce requirements */
+ struct amdgpu_vce_state vce_states[AMDGPU_MAX_VCE_LEVELS];
+ enum amdgpu_vce_level vce_level;
+- enum amdgpu_pm_state_type state;
+- enum amdgpu_pm_state_type user_state;
++ enum amd_pm_state_type state;
++ enum amd_pm_state_type user_state;
+ u32 platform_caps;
+ u32 voltage_response_time;
+ u32 backbias_response_time;
+diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c
+index 7ae15fa..feb247d 100644
+--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c
++++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c
+@@ -52,7 +52,7 @@ static ssize_t amdgpu_get_dpm_state(struct device *dev,
+ {
+ struct drm_device *ddev = dev_get_drvdata(dev);
+ struct amdgpu_device *adev = ddev->dev_private;
+- enum amdgpu_pm_state_type pm = adev->pm.dpm.user_state;
++ enum amd_pm_state_type pm = adev->pm.dpm.user_state;
+
+ return snprintf(buf, PAGE_SIZE, "%s\n",
+ (pm == POWER_STATE_TYPE_BATTERY) ? "battery" :
+@@ -351,7 +351,7 @@ void amdgpu_dpm_thermal_work_handler(struct work_struct *work)
+ container_of(work, struct amdgpu_device,
+ pm.dpm.thermal.work);
+ /* switch to the thermal state */
+- enum amdgpu_pm_state_type dpm_state = POWER_STATE_TYPE_INTERNAL_THERMAL;
++ enum amd_pm_state_type dpm_state = POWER_STATE_TYPE_INTERNAL_THERMAL;
+
+ if (!adev->pm.dpm_enabled)
+ return;
+@@ -379,7 +379,7 @@ void amdgpu_dpm_thermal_work_handler(struct work_struct *work)
+ }
+
+ static struct amdgpu_ps *amdgpu_dpm_pick_power_state(struct amdgpu_device *adev,
+- enum amdgpu_pm_state_type dpm_state)
++ enum amd_pm_state_type dpm_state)
+ {
+ int i;
+ struct amdgpu_ps *ps;
+@@ -516,7 +516,7 @@ static void amdgpu_dpm_change_power_state_locked(struct amdgpu_device *adev)
+ {
+ int i;
+ struct amdgpu_ps *ps;
+- enum amdgpu_pm_state_type dpm_state;
++ enum amd_pm_state_type dpm_state;
+ int ret;
+
+ /* if dpm init failed */
+diff --git a/drivers/gpu/drm/amd/include/amd_shared.h b/drivers/gpu/drm/amd/include/amd_shared.h
+index fe28fb3..1195d06 100644
+--- a/drivers/gpu/drm/amd/include/amd_shared.h
++++ b/drivers/gpu/drm/amd/include/amd_shared.h
+@@ -85,6 +85,27 @@ enum amd_powergating_state {
+ AMD_PG_STATE_UNGATE,
+ };
+
++enum amd_pm_state_type {
++ /* not used for dpm */
++ POWER_STATE_TYPE_DEFAULT,
++ POWER_STATE_TYPE_POWERSAVE,
++ /* user selectable states */
++ POWER_STATE_TYPE_BATTERY,
++ POWER_STATE_TYPE_BALANCED,
++ POWER_STATE_TYPE_PERFORMANCE,
++ /* internal states */
++ POWER_STATE_TYPE_INTERNAL_UVD,
++ POWER_STATE_TYPE_INTERNAL_UVD_SD,
++ POWER_STATE_TYPE_INTERNAL_UVD_HD,
++ POWER_STATE_TYPE_INTERNAL_UVD_HD2,
++ POWER_STATE_TYPE_INTERNAL_UVD_MVC,
++ POWER_STATE_TYPE_INTERNAL_BOOT,
++ POWER_STATE_TYPE_INTERNAL_THERMAL,
++ POWER_STATE_TYPE_INTERNAL_ACPI,
++ POWER_STATE_TYPE_INTERNAL_ULV,
++ POWER_STATE_TYPE_INTERNAL_3DPERF,
++};
++
+ struct amd_ip_funcs {
+ /* sets up early driver state (pre sw_init), does not configure hw - Optional */
+ int (*early_init)(void *handle);
+--
+2.7.4
+