aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/radeon/radeon_pm.c
diff options
context:
space:
mode:
authorAlex Deucher <alexander.deucher@amd.com>2013-01-16 14:40:26 -0500
committerAlex Deucher <alexander.deucher@amd.com>2013-06-27 19:16:21 -0400
commit89c9bc565138ba7801e4ac1925ec9f013a8b4a57 (patch)
tree186e76b2aa6057e841b1901b48e4d5a6e1bcf70c /drivers/gpu/drm/radeon/radeon_pm.c
parentfee3d744bf3a0484f2f3ece587cccdffe33f2a15 (diff)
drm/radeon/dpm: remove broken dyn state remnants
Now that the proper fix has been implemented I can remove the last remnants of the initial implementation. Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu/drm/radeon/radeon_pm.c')
-rw-r--r--drivers/gpu/drm/radeon/radeon_pm.c24
1 files changed, 5 insertions, 19 deletions
diff --git a/drivers/gpu/drm/radeon/radeon_pm.c b/drivers/gpu/drm/radeon/radeon_pm.c
index 4e2ccc6b75fb..2f70c1b195d9 100644
--- a/drivers/gpu/drm/radeon/radeon_pm.c
+++ b/drivers/gpu/drm/radeon/radeon_pm.c
@@ -684,17 +684,6 @@ restart_search:
684 return NULL; 684 return NULL;
685} 685}
686 686
687static void radeon_dpm_update_requested_ps(struct radeon_device *rdev,
688 struct radeon_ps *ps)
689{
690 /* copy the ps to the hw ps and point the requested ps
691 * at the hw state in case the driver wants to modify
692 * the state dynamically.
693 */
694 rdev->pm.dpm.hw_ps = *ps;
695 rdev->pm.dpm.requested_ps = &rdev->pm.dpm.hw_ps;
696}
697
698static void radeon_dpm_change_power_state_locked(struct radeon_device *rdev) 687static void radeon_dpm_change_power_state_locked(struct radeon_device *rdev)
699{ 688{
700 int i; 689 int i;
@@ -716,7 +705,7 @@ static void radeon_dpm_change_power_state_locked(struct radeon_device *rdev)
716 705
717 ps = radeon_dpm_pick_power_state(rdev, dpm_state); 706 ps = radeon_dpm_pick_power_state(rdev, dpm_state);
718 if (ps) 707 if (ps)
719 radeon_dpm_update_requested_ps(rdev, ps); 708 rdev->pm.dpm.requested_ps = ps;
720 else 709 else
721 return; 710 return;
722 711
@@ -767,11 +756,9 @@ static void radeon_dpm_change_power_state_locked(struct radeon_device *rdev)
767 down_write(&rdev->pm.mclk_lock); 756 down_write(&rdev->pm.mclk_lock);
768 mutex_lock(&rdev->ring_lock); 757 mutex_lock(&rdev->ring_lock);
769 758
770 if (rdev->asic->dpm.pre_set_power_state) { 759 ret = radeon_dpm_pre_set_power_state(rdev);
771 ret = radeon_dpm_pre_set_power_state(rdev); 760 if (ret)
772 if (ret) 761 goto done;
773 goto done;
774 }
775 762
776 /* update display watermarks based on new power state */ 763 /* update display watermarks based on new power state */
777 radeon_bandwidth_update(rdev); 764 radeon_bandwidth_update(rdev);
@@ -794,8 +781,7 @@ static void radeon_dpm_change_power_state_locked(struct radeon_device *rdev)
794 /* update current power state */ 781 /* update current power state */
795 rdev->pm.dpm.current_ps = rdev->pm.dpm.requested_ps; 782 rdev->pm.dpm.current_ps = rdev->pm.dpm.requested_ps;
796 783
797 if (rdev->asic->dpm.post_set_power_state) 784 radeon_dpm_post_set_power_state(rdev);
798 radeon_dpm_post_set_power_state(rdev);
799 785
800done: 786done:
801 mutex_unlock(&rdev->ring_lock); 787 mutex_unlock(&rdev->ring_lock);