diff options
Diffstat (limited to 'meta-steppeeagle/recipes-kernel/linux/linux-yocto/0031-yocto-amd-drm-radeon-dpm-move-platform-caps-fetching-to-a-sepa.patch')
-rw-r--r-- | meta-steppeeagle/recipes-kernel/linux/linux-yocto/0031-yocto-amd-drm-radeon-dpm-move-platform-caps-fetching-to-a-sepa.patch | 330 |
1 files changed, 0 insertions, 330 deletions
diff --git a/meta-steppeeagle/recipes-kernel/linux/linux-yocto/0031-yocto-amd-drm-radeon-dpm-move-platform-caps-fetching-to-a-sepa.patch b/meta-steppeeagle/recipes-kernel/linux/linux-yocto/0031-yocto-amd-drm-radeon-dpm-move-platform-caps-fetching-to-a-sepa.patch deleted file mode 100644 index 9dab9dcc..00000000 --- a/meta-steppeeagle/recipes-kernel/linux/linux-yocto/0031-yocto-amd-drm-radeon-dpm-move-platform-caps-fetching-to-a-sepa.patch +++ /dev/null @@ -1,330 +0,0 @@ -From d57ea9870d87db49132b6cd8067d512fb2810e24 Mon Sep 17 00:00:00 2001 -From: Alex Deucher <alexander.deucher@amd.com> -Date: Wed, 21 Aug 2013 10:02:32 -0400 -Subject: [PATCH 31/44] drm/radeon/dpm: move platform caps fetching to a - separate function - -It's needed by by both the asic specific functions and the -extended table parser. - -Signed-off-by: Alex Deucher <alexander.deucher@amd.com> ---- - drivers/gpu/drm/radeon/btc_dpm.c | 4 ++++ - drivers/gpu/drm/radeon/ci_dpm.c | 9 ++++++--- - drivers/gpu/drm/radeon/cypress_dpm.c | 4 ++++ - drivers/gpu/drm/radeon/kv_dpm.c | 7 ++++--- - drivers/gpu/drm/radeon/ni_dpm.c | 7 ++++--- - drivers/gpu/drm/radeon/r600_dpm.c | 20 ++++++++++++++++++++ - drivers/gpu/drm/radeon/r600_dpm.h | 2 ++ - drivers/gpu/drm/radeon/rs780_dpm.c | 7 ++++--- - drivers/gpu/drm/radeon/rv6xx_dpm.c | 7 ++++--- - drivers/gpu/drm/radeon/rv770_dpm.c | 7 ++++--- - drivers/gpu/drm/radeon/si_dpm.c | 7 ++++--- - drivers/gpu/drm/radeon/sumo_dpm.c | 7 ++++--- - drivers/gpu/drm/radeon/trinity_dpm.c | 7 ++++--- - 13 files changed, 68 insertions(+), 27 deletions(-) - -diff --git a/drivers/gpu/drm/radeon/btc_dpm.c b/drivers/gpu/drm/radeon/btc_dpm.c -index 9b6950d..e910299 100644 ---- a/drivers/gpu/drm/radeon/btc_dpm.c -+++ b/drivers/gpu/drm/radeon/btc_dpm.c -@@ -2610,6 +2610,10 @@ int btc_dpm_init(struct radeon_device *rdev) - pi->min_vddc_in_table = 0; - pi->max_vddc_in_table = 0; - -+ ret = r600_get_platform_caps(rdev); -+ if (ret) -+ return ret; -+ - ret = rv7xx_parse_power_table(rdev); - if (ret) - return ret; -diff --git a/drivers/gpu/drm/radeon/ci_dpm.c b/drivers/gpu/drm/radeon/ci_dpm.c -index 51e947a..b90834a 100644 ---- a/drivers/gpu/drm/radeon/ci_dpm.c -+++ b/drivers/gpu/drm/radeon/ci_dpm.c -@@ -4951,9 +4951,6 @@ static int ci_parse_power_table(struct radeon_device *rdev) - if (!rdev->pm.dpm.ps) - return -ENOMEM; - power_state_offset = (u8 *)state_array->states; -- rdev->pm.dpm.platform_caps = le32_to_cpu(power_info->pplib.ulPlatformCaps); -- rdev->pm.dpm.backbias_response_time = le16_to_cpu(power_info->pplib.usBackbiasTime); -- rdev->pm.dpm.voltage_response_time = le16_to_cpu(power_info->pplib.usVoltageTime); - for (i = 0; i < state_array->ucNumEntries; i++) { - u8 *idx; - power_state = (union pplib_power_state *)power_state_offset; -@@ -5069,6 +5066,12 @@ int ci_dpm_init(struct radeon_device *rdev) - ci_dpm_fini(rdev); - return ret; - } -+ -+ ret = r600_get_platform_caps(rdev); -+ if (ret) { -+ ci_dpm_fini(rdev); -+ return ret; -+ } - ret = ci_parse_power_table(rdev); - if (ret) { - ci_dpm_fini(rdev); -diff --git a/drivers/gpu/drm/radeon/cypress_dpm.c b/drivers/gpu/drm/radeon/cypress_dpm.c -index 91bb470..db1f391 100644 ---- a/drivers/gpu/drm/radeon/cypress_dpm.c -+++ b/drivers/gpu/drm/radeon/cypress_dpm.c -@@ -2049,6 +2049,10 @@ int cypress_dpm_init(struct radeon_device *rdev) - pi->min_vddc_in_table = 0; - pi->max_vddc_in_table = 0; - -+ ret = r600_get_platform_caps(rdev); -+ if (ret) -+ return ret; -+ - ret = rv7xx_parse_power_table(rdev); - if (ret) - return ret; -diff --git a/drivers/gpu/drm/radeon/kv_dpm.c b/drivers/gpu/drm/radeon/kv_dpm.c -index b419055..58b5a5d 100644 ---- a/drivers/gpu/drm/radeon/kv_dpm.c -+++ b/drivers/gpu/drm/radeon/kv_dpm.c -@@ -2556,9 +2556,6 @@ static int kv_parse_power_table(struct radeon_device *rdev) - if (!rdev->pm.dpm.ps) - return -ENOMEM; - power_state_offset = (u8 *)state_array->states; -- rdev->pm.dpm.platform_caps = le32_to_cpu(power_info->pplib.ulPlatformCaps); -- rdev->pm.dpm.backbias_response_time = le16_to_cpu(power_info->pplib.usBackbiasTime); -- rdev->pm.dpm.voltage_response_time = le16_to_cpu(power_info->pplib.usVoltageTime); - for (i = 0; i < state_array->ucNumEntries; i++) { - u8 *idx; - power_state = (union pplib_power_state *)power_state_offset; -@@ -2608,6 +2605,10 @@ int kv_dpm_init(struct radeon_device *rdev) - return -ENOMEM; - rdev->pm.dpm.priv = pi; - -+ ret = r600_get_platform_caps(rdev); -+ if (ret) -+ return ret; -+ - ret = r600_parse_extended_power_table(rdev); - if (ret) - return ret; -diff --git a/drivers/gpu/drm/radeon/ni_dpm.c b/drivers/gpu/drm/radeon/ni_dpm.c -index f263390..76bcc1e 100644 ---- a/drivers/gpu/drm/radeon/ni_dpm.c -+++ b/drivers/gpu/drm/radeon/ni_dpm.c -@@ -4041,9 +4041,6 @@ static int ni_parse_power_table(struct radeon_device *rdev) - power_info->pplib.ucNumStates, GFP_KERNEL); - if (!rdev->pm.dpm.ps) - return -ENOMEM; -- rdev->pm.dpm.platform_caps = le32_to_cpu(power_info->pplib.ulPlatformCaps); -- rdev->pm.dpm.backbias_response_time = le16_to_cpu(power_info->pplib.usBackbiasTime); -- rdev->pm.dpm.voltage_response_time = le16_to_cpu(power_info->pplib.usVoltageTime); - - for (i = 0; i < power_info->pplib.ucNumStates; i++) { - power_state = (union pplib_power_state *) -@@ -4105,6 +4102,10 @@ int ni_dpm_init(struct radeon_device *rdev) - pi->min_vddc_in_table = 0; - pi->max_vddc_in_table = 0; - -+ ret = r600_get_platform_caps(rdev); -+ if (ret) -+ return ret; -+ - ret = ni_parse_power_table(rdev); - if (ret) - return ret; -diff --git a/drivers/gpu/drm/radeon/r600_dpm.c b/drivers/gpu/drm/radeon/r600_dpm.c -index 5513d8f..d57cde7 100644 ---- a/drivers/gpu/drm/radeon/r600_dpm.c -+++ b/drivers/gpu/drm/radeon/r600_dpm.c -@@ -818,6 +818,26 @@ static int r600_parse_clk_voltage_dep_table(struct radeon_clock_voltage_dependen - return 0; - } - -+int r600_get_platform_caps(struct radeon_device *rdev) -+{ -+ struct radeon_mode_info *mode_info = &rdev->mode_info; -+ union power_info *power_info; -+ int index = GetIndexIntoMasterTable(DATA, PowerPlayInfo); -+ u16 data_offset; -+ u8 frev, crev; -+ -+ if (!atom_parse_data_header(mode_info->atom_context, index, NULL, -+ &frev, &crev, &data_offset)) -+ return -EINVAL; -+ power_info = (union power_info *)(mode_info->atom_context->bios + data_offset); -+ -+ rdev->pm.dpm.platform_caps = le32_to_cpu(power_info->pplib.ulPlatformCaps); -+ rdev->pm.dpm.backbias_response_time = le16_to_cpu(power_info->pplib.usBackbiasTime); -+ rdev->pm.dpm.voltage_response_time = le16_to_cpu(power_info->pplib.usVoltageTime); -+ -+ return 0; -+} -+ - /* sizeof(ATOM_PPLIB_EXTENDEDHEADER) */ - #define SIZE_OF_ATOM_PPLIB_EXTENDEDHEADER_V2 12 - #define SIZE_OF_ATOM_PPLIB_EXTENDEDHEADER_V3 14 -diff --git a/drivers/gpu/drm/radeon/r600_dpm.h b/drivers/gpu/drm/radeon/r600_dpm.h -index 1000bf9..7e5d2c2 100644 ---- a/drivers/gpu/drm/radeon/r600_dpm.h -+++ b/drivers/gpu/drm/radeon/r600_dpm.h -@@ -217,6 +217,8 @@ int r600_set_thermal_temperature_range(struct radeon_device *rdev, - int min_temp, int max_temp); - bool r600_is_internal_thermal_sensor(enum radeon_int_thermal_type sensor); - -+int r600_get_platform_caps(struct radeon_device *rdev); -+ - int r600_parse_extended_power_table(struct radeon_device *rdev); - void r600_free_extended_power_table(struct radeon_device *rdev); - -diff --git a/drivers/gpu/drm/radeon/rs780_dpm.c b/drivers/gpu/drm/radeon/rs780_dpm.c -index 6af8505..f3143c0 100644 ---- a/drivers/gpu/drm/radeon/rs780_dpm.c -+++ b/drivers/gpu/drm/radeon/rs780_dpm.c -@@ -815,9 +815,6 @@ static int rs780_parse_power_table(struct radeon_device *rdev) - power_info->pplib.ucNumStates, GFP_KERNEL); - if (!rdev->pm.dpm.ps) - return -ENOMEM; -- rdev->pm.dpm.platform_caps = le32_to_cpu(power_info->pplib.ulPlatformCaps); -- rdev->pm.dpm.backbias_response_time = le16_to_cpu(power_info->pplib.usBackbiasTime); -- rdev->pm.dpm.voltage_response_time = le16_to_cpu(power_info->pplib.usVoltageTime); - - for (i = 0; i < power_info->pplib.ucNumStates; i++) { - power_state = (union pplib_power_state *) -@@ -867,6 +864,10 @@ int rs780_dpm_init(struct radeon_device *rdev) - return -ENOMEM; - rdev->pm.dpm.priv = pi; - -+ ret = r600_get_platform_caps(rdev); -+ if (ret) -+ return ret; -+ - ret = rs780_parse_power_table(rdev); - if (ret) - return ret; -diff --git a/drivers/gpu/drm/radeon/rv6xx_dpm.c b/drivers/gpu/drm/radeon/rv6xx_dpm.c -index 5811d27..3aa0a8c 100644 ---- a/drivers/gpu/drm/radeon/rv6xx_dpm.c -+++ b/drivers/gpu/drm/radeon/rv6xx_dpm.c -@@ -1901,9 +1901,6 @@ static int rv6xx_parse_power_table(struct radeon_device *rdev) - power_info->pplib.ucNumStates, GFP_KERNEL); - if (!rdev->pm.dpm.ps) - return -ENOMEM; -- rdev->pm.dpm.platform_caps = le32_to_cpu(power_info->pplib.ulPlatformCaps); -- rdev->pm.dpm.backbias_response_time = le16_to_cpu(power_info->pplib.usBackbiasTime); -- rdev->pm.dpm.voltage_response_time = le16_to_cpu(power_info->pplib.usVoltageTime); - - for (i = 0; i < power_info->pplib.ucNumStates; i++) { - power_state = (union pplib_power_state *) -@@ -1953,6 +1950,10 @@ int rv6xx_dpm_init(struct radeon_device *rdev) - return -ENOMEM; - rdev->pm.dpm.priv = pi; - -+ ret = r600_get_platform_caps(rdev); -+ if (ret) -+ return ret; -+ - ret = rv6xx_parse_power_table(rdev); - if (ret) - return ret; -diff --git a/drivers/gpu/drm/radeon/rv770_dpm.c b/drivers/gpu/drm/radeon/rv770_dpm.c -index 374499d..4bcbacb 100644 ---- a/drivers/gpu/drm/radeon/rv770_dpm.c -+++ b/drivers/gpu/drm/radeon/rv770_dpm.c -@@ -2277,9 +2277,6 @@ int rv7xx_parse_power_table(struct radeon_device *rdev) - power_info->pplib.ucNumStates, GFP_KERNEL); - if (!rdev->pm.dpm.ps) - return -ENOMEM; -- rdev->pm.dpm.platform_caps = le32_to_cpu(power_info->pplib.ulPlatformCaps); -- rdev->pm.dpm.backbias_response_time = le16_to_cpu(power_info->pplib.usBackbiasTime); -- rdev->pm.dpm.voltage_response_time = le16_to_cpu(power_info->pplib.usVoltageTime); - - for (i = 0; i < power_info->pplib.ucNumStates; i++) { - power_state = (union pplib_power_state *) -@@ -2357,6 +2354,10 @@ int rv770_dpm_init(struct radeon_device *rdev) - pi->min_vddc_in_table = 0; - pi->max_vddc_in_table = 0; - -+ ret = r600_get_platform_caps(rdev); -+ if (ret) -+ return ret; -+ - ret = rv7xx_parse_power_table(rdev); - if (ret) - return ret; -diff --git a/drivers/gpu/drm/radeon/si_dpm.c b/drivers/gpu/drm/radeon/si_dpm.c -index 2332aa1..749c45c 100644 ---- a/drivers/gpu/drm/radeon/si_dpm.c -+++ b/drivers/gpu/drm/radeon/si_dpm.c -@@ -6291,9 +6291,6 @@ static int si_parse_power_table(struct radeon_device *rdev) - if (!rdev->pm.dpm.ps) - return -ENOMEM; - power_state_offset = (u8 *)state_array->states; -- rdev->pm.dpm.platform_caps = le32_to_cpu(power_info->pplib.ulPlatformCaps); -- rdev->pm.dpm.backbias_response_time = le16_to_cpu(power_info->pplib.usBackbiasTime); -- rdev->pm.dpm.voltage_response_time = le16_to_cpu(power_info->pplib.usVoltageTime); - for (i = 0; i < state_array->ucNumEntries; i++) { - u8 *idx; - power_state = (union pplib_power_state *)power_state_offset; -@@ -6370,6 +6367,10 @@ int si_dpm_init(struct radeon_device *rdev) - pi->min_vddc_in_table = 0; - pi->max_vddc_in_table = 0; - -+ ret = r600_get_platform_caps(rdev); -+ if (ret) -+ return ret; -+ - ret = si_parse_power_table(rdev); - if (ret) - return ret; -diff --git a/drivers/gpu/drm/radeon/sumo_dpm.c b/drivers/gpu/drm/radeon/sumo_dpm.c -index 96ea6db8..485d006 100644 ---- a/drivers/gpu/drm/radeon/sumo_dpm.c -+++ b/drivers/gpu/drm/radeon/sumo_dpm.c -@@ -1477,9 +1477,6 @@ static int sumo_parse_power_table(struct radeon_device *rdev) - if (!rdev->pm.dpm.ps) - return -ENOMEM; - power_state_offset = (u8 *)state_array->states; -- rdev->pm.dpm.platform_caps = le32_to_cpu(power_info->pplib.ulPlatformCaps); -- rdev->pm.dpm.backbias_response_time = le16_to_cpu(power_info->pplib.usBackbiasTime); -- rdev->pm.dpm.voltage_response_time = le16_to_cpu(power_info->pplib.usVoltageTime); - for (i = 0; i < state_array->ucNumEntries; i++) { - u8 *idx; - power_state = (union pplib_power_state *)power_state_offset; -@@ -1765,6 +1762,10 @@ int sumo_dpm_init(struct radeon_device *rdev) - - sumo_construct_boot_and_acpi_state(rdev); - -+ ret = r600_get_platform_caps(rdev); -+ if (ret) -+ return ret; -+ - ret = sumo_parse_power_table(rdev); - if (ret) - return ret; -diff --git a/drivers/gpu/drm/radeon/trinity_dpm.c b/drivers/gpu/drm/radeon/trinity_dpm.c -index d700698..ab32576 100644 ---- a/drivers/gpu/drm/radeon/trinity_dpm.c -+++ b/drivers/gpu/drm/radeon/trinity_dpm.c -@@ -1685,9 +1685,6 @@ static int trinity_parse_power_table(struct radeon_device *rdev) - if (!rdev->pm.dpm.ps) - return -ENOMEM; - power_state_offset = (u8 *)state_array->states; -- rdev->pm.dpm.platform_caps = le32_to_cpu(power_info->pplib.ulPlatformCaps); -- rdev->pm.dpm.backbias_response_time = le16_to_cpu(power_info->pplib.usBackbiasTime); -- rdev->pm.dpm.voltage_response_time = le16_to_cpu(power_info->pplib.usVoltageTime); - for (i = 0; i < state_array->ucNumEntries; i++) { - u8 *idx; - power_state = (union pplib_power_state *)power_state_offset; -@@ -1886,6 +1883,10 @@ int trinity_dpm_init(struct radeon_device *rdev) - - trinity_construct_boot_state(rdev); - -+ ret = r600_get_platform_caps(rdev); -+ if (ret) -+ return ret; -+ - ret = trinity_parse_power_table(rdev); - if (ret) - return ret; --- -1.7.9.5 - |