aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/radeon/radeon_combios.c
diff options
context:
space:
mode:
authorAlex Deucher <alexdeucher@gmail.com>2009-12-23 13:21:58 -0500
committerDave Airlie <airlied@redhat.com>2010-02-08 18:32:28 -0500
commit0ec0e74f784ca08eab0354ab1dada46924c39b73 (patch)
treedc2a3d67fc5009f385b43bf9198427ff9050e39c /drivers/gpu/drm/radeon/radeon_combios.c
parent845db70da0bd285813b25bb522a0281f28efbf89 (diff)
drm/radeon/kms: add a power state type based on power state flags
The idea is to flag a power state with a certain type and use that type to decide on what state to select. On r6xx+, we select a state and then transition between clock modes in that state. On pre-r6xx, we transition between states directly. Signed-off-by: Alex Deucher <alexdeucher@gmail.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
Diffstat (limited to 'drivers/gpu/drm/radeon/radeon_combios.c')
-rw-r--r--drivers/gpu/drm/radeon/radeon_combios.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/gpu/drm/radeon/radeon_combios.c b/drivers/gpu/drm/radeon/radeon_combios.c
index eac2174abc5b..a4d40de50434 100644
--- a/drivers/gpu/drm/radeon/radeon_combios.c
+++ b/drivers/gpu/drm/radeon/radeon_combios.c
@@ -2406,6 +2406,8 @@ void radeon_combios_get_power_modes(struct radeon_device *rdev)
2406 (rdev->pm.power_state[state_index].clock_info[0].sclk > 2406 (rdev->pm.power_state[state_index].clock_info[0].sclk >
2407 rdev->clock.default_sclk)) 2407 rdev->clock.default_sclk))
2408 goto default_mode; 2408 goto default_mode;
2409 rdev->pm.power_state[state_index].type =
2410 POWER_STATE_TYPE_BATTERY;
2409 misc = RBIOS16(offset + 0x5 + 0x0); 2411 misc = RBIOS16(offset + 0x5 + 0x0);
2410 if (rev > 4) 2412 if (rev > 4)
2411 misc2 = RBIOS16(offset + 0x5 + 0xe); 2413 misc2 = RBIOS16(offset + 0x5 + 0xe);
@@ -2467,6 +2469,8 @@ void radeon_combios_get_power_modes(struct radeon_device *rdev)
2467 2469
2468default_mode: 2470default_mode:
2469 /* add the default mode */ 2471 /* add the default mode */
2472 rdev->pm.power_state[state_index].type =
2473 POWER_STATE_TYPE_DEFAULT;
2470 rdev->pm.power_state[state_index].num_clock_modes = 1; 2474 rdev->pm.power_state[state_index].num_clock_modes = 1;
2471 rdev->pm.power_state[state_index].clock_info[0].mclk = rdev->clock.default_mclk; 2475 rdev->pm.power_state[state_index].clock_info[0].mclk = rdev->clock.default_mclk;
2472 rdev->pm.power_state[state_index].clock_info[0].sclk = rdev->clock.default_sclk; 2476 rdev->pm.power_state[state_index].clock_info[0].sclk = rdev->clock.default_sclk;