From 59fe9957e49038c1e4e0d47ec74cdcb13388a93f Mon Sep 17 00:00:00 2001 From: "Justin M. Forbes" Date: Wed, 2 Oct 2013 17:01:10 -0500 Subject: [PATCH] drm/radeon: don't set default clocks for SI when DPM is disabled (rhbz 1013814) --- ...t-clocks-for-SI-when-DPM-is-disabled.patch | 58 +++++++++++++++++++ kernel.spec | 11 +++- 2 files changed, 68 insertions(+), 1 deletion(-) create mode 100644 drm-radeon-dont-set-default-clocks-for-SI-when-DPM-is-disabled.patch diff --git a/drm-radeon-dont-set-default-clocks-for-SI-when-DPM-is-disabled.patch b/drm-radeon-dont-set-default-clocks-for-SI-when-DPM-is-disabled.patch new file mode 100644 index 000000000..b7516b794 --- /dev/null +++ b/drm-radeon-dont-set-default-clocks-for-SI-when-DPM-is-disabled.patch @@ -0,0 +1,58 @@ +commit 360991867d83e10827d907ef67206986a98953b3 +Author: Alex Deucher +Date: Sat Sep 21 14:37:49 2013 -0400 + + drm/radeon: don't set default clocks for SI when DPM is disabled + + This is a partial revert of c6cf7777a32da874fabec4fd1c2a579f0ba4e4dd. + + We need to take into account the clk voltage dependencies of the + board. Not doing so can lead to stability issues on certain + boards if the clks exceed the levels in the dep tables. + + DPM already takes that into account, so for optimal performance, + use DPM. + + Signed-off-by: Alex Deucher + Cc: stable@vger.kernel.org + +diff --git a/drivers/gpu/drm/radeon/radeon_pm.c b/drivers/gpu/drm/radeon/radeon_pm.c +index 87e1d69..ac07ad1 100644 +--- a/drivers/gpu/drm/radeon/radeon_pm.c ++++ b/drivers/gpu/drm/radeon/radeon_pm.c +@@ -1002,7 +1002,7 @@ static void radeon_pm_resume_old(struct radeon_device *rdev) + { + /* set up the default clocks if the MC ucode is loaded */ + if ((rdev->family >= CHIP_BARTS) && +- (rdev->family <= CHIP_HAINAN) && ++ (rdev->family <= CHIP_CAYMAN) && + rdev->mc_fw) { + if (rdev->pm.default_vddc) + radeon_atom_set_voltage(rdev, rdev->pm.default_vddc, +@@ -1046,7 +1046,7 @@ static void radeon_pm_resume_dpm(struct radeon_device *rdev) + if (ret) { + DRM_ERROR("radeon: dpm resume failed\n"); + if ((rdev->family >= CHIP_BARTS) && +- (rdev->family <= CHIP_HAINAN) && ++ (rdev->family <= CHIP_CAYMAN) && + rdev->mc_fw) { + if (rdev->pm.default_vddc) + radeon_atom_set_voltage(rdev, rdev->pm.default_vddc, +@@ -1097,7 +1097,7 @@ static int radeon_pm_init_old(struct radeon_device *rdev) + radeon_pm_init_profile(rdev); + /* set up the default clocks if the MC ucode is loaded */ + if ((rdev->family >= CHIP_BARTS) && +- (rdev->family <= CHIP_HAINAN) && ++ (rdev->family <= CHIP_CAYMAN) && + rdev->mc_fw) { + if (rdev->pm.default_vddc) + radeon_atom_set_voltage(rdev, rdev->pm.default_vddc, +@@ -1183,7 +1183,7 @@ static int radeon_pm_init_dpm(struct radeon_device *rdev) + if (ret) { + rdev->pm.dpm_enabled = false; + if ((rdev->family >= CHIP_BARTS) && +- (rdev->family <= CHIP_HAINAN) && ++ (rdev->family <= CHIP_CAYMAN) && + rdev->mc_fw) { + if (rdev->pm.default_vddc) + radeon_atom_set_voltage(rdev, rdev->pm.default_vddc, diff --git a/kernel.spec b/kernel.spec index eb8c1203b..1873bbe51 100644 --- a/kernel.spec +++ b/kernel.spec @@ -62,7 +62,7 @@ Summary: The Linux kernel # For non-released -rc kernels, this will be appended after the rcX and # gitX tags, so a 3 here would become part of release "0.rcX.gitX.3" # -%global baserelease 300 +%global baserelease 301 %global fedora_build %{baserelease} # base_sublevel is the kernel version we're starting with and patching @@ -800,6 +800,9 @@ Patch25117: rt2800-add-support-for-rf3070.patch #rhbz 1005567 Patch25118: bonding-driver-promisc.patch +#rhbz 1013814 +Patch25119: drm-radeon-dont-set-default-clocks-for-SI-when-DPM-is-disabled.patch + # END OF PATCH DEFINITIONS %endif @@ -1558,6 +1561,9 @@ ApplyPatch rt2800-add-support-for-rf3070.patch #rhbz 1005567 ApplyPatch bonding-driver-promisc.patch +#rhbz 1013814 +ApplyPatch drm-radeon-dont-set-default-clocks-for-SI-when-DPM-is-disabled.patch + # END OF PATCH APPLICATIONS %endif @@ -2360,6 +2366,9 @@ fi # ||----w | # || || %changelog +* Wed Oct 2 2013 Justin M. Forbes +- drm/radeon: don't set default clocks for SI when DPM is disabled (rhbz 1013814) + * Wed Oct 02 2013 Josh Boyer - Enable options for Intel Low Power Subsystem Support