From: Alex Deucher Date: Wed, 23 Oct 2013 21:11:06 +0000 (-0400) Subject: drm/radeon: enable DPM by default on SUMO/PALM APUs X-Git-Tag: v3.13-rc1~76^2~64^2~19 X-Git-Url: https://openfabrics.org/gitweb/?a=commitdiff_plain;h=5a16f7614e33c080bbece39527bde144dcca4ec7;p=~emulex%2Finfiniband.git drm/radeon: enable DPM by default on SUMO/PALM APUs DPM seems to be stable on these asics and it drastically improves performance depending on the boot clocks. Signed-off-by: Alex Deucher --- diff --git a/drivers/gpu/drm/radeon/radeon_pm.c b/drivers/gpu/drm/radeon/radeon_pm.c index cdeb3f8a2a3..bf71862a379 100644 --- a/drivers/gpu/drm/radeon/radeon_pm.c +++ b/drivers/gpu/drm/radeon/radeon_pm.c @@ -1249,9 +1249,6 @@ int radeon_pm_init(struct radeon_device *rdev) case CHIP_JUNIPER: case CHIP_CYPRESS: case CHIP_HEMLOCK: - case CHIP_PALM: - case CHIP_SUMO: - case CHIP_SUMO2: case CHIP_BARTS: case CHIP_TURKS: case CHIP_CAICOS: @@ -1277,6 +1274,21 @@ int radeon_pm_init(struct radeon_device *rdev) else rdev->pm.pm_method = PM_METHOD_PROFILE; break; + case CHIP_PALM: + case CHIP_SUMO: + case CHIP_SUMO2: + /* DPM requires the RLC, RV770+ dGPU requires SMC */ + if (!rdev->rlc_fw) + rdev->pm.pm_method = PM_METHOD_PROFILE; + else if ((rdev->family >= CHIP_RV770) && + (!(rdev->flags & RADEON_IS_IGP)) && + (!rdev->smc_fw)) + rdev->pm.pm_method = PM_METHOD_PROFILE; + else if (radeon_dpm == 0) + rdev->pm.pm_method = PM_METHOD_PROFILE; + else + rdev->pm.pm_method = PM_METHOD_DPM; + break; default: /* default to profile method */ rdev->pm.pm_method = PM_METHOD_PROFILE;