diff options
author | Alex Deucher <alexdeucher@gmail.com> | 2009-04-01 16:22:02 -0400 |
---|---|---|
committer | Alex Deucher <alexdeucher@gmail.com> | 2009-04-15 11:45:52 -0400 |
commit | 63cb57c5eb0d6bc083f54eb100cb972b0e7bca69 (patch) | |
tree | cccada8790b2cd91d4b2ab52c6450fad400d3a51 /src/radeon.h | |
parent | a34a8b37afbea6ed4bf8ca42364195e174250c48 (diff) |
Add DynamicPM Option
Dyanmically switch between power states. Switch to a low
power state when the system is idle (DPMS off).
Diffstat (limited to 'src/radeon.h')
-rw-r--r-- | src/radeon.h | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/src/radeon.h b/src/radeon.h index 3a9130cb..c1ad2c3e 100644 --- a/src/radeon.h +++ b/src/radeon.h @@ -208,7 +208,8 @@ typedef enum { OPTION_EXA_VSYNC, OPTION_ATOM_TVOUT, OPTION_R4XX_ATOM, - OPTION_FORCE_LOW_POWER + OPTION_FORCE_LOW_POWER, + OPTION_DYNAMIC_PM } RADEONOpts; @@ -412,6 +413,12 @@ typedef enum { CARD_PCIE } RADEONCardType; +typedef enum { + POWER_MODE_NONE, + POWER_MODE_STATIC, + POWER_MODE_DYNAMIC +} RADEONPowerMode; + typedef struct _atomBiosHandle *atomBiosHandlePtr; typedef struct { @@ -893,7 +900,8 @@ typedef struct { Bool r4xx_atom; /* pm */ - Bool low_power_mode; + RADEONPowerMode power_mode; + Bool low_power_active; } RADEONInfoRec, *RADEONInfoPtr; @@ -1077,6 +1085,8 @@ extern void RADEONRestoreMemMapRegisters(ScrnInfoPtr pScrn, /* radeon_pm.c */ extern void RADEONSetClockGating(ScrnInfoPtr pScrn, Bool enable); extern void RADEONStaticLowPowerMode(ScrnInfoPtr pScrn, Bool enable); +extern void RADEONPMBlockHandler(ScrnInfoPtr pScrn); +extern void RADEONDynamicLowPowerMode(ScrnInfoPtr pScrn, Bool enable); #ifdef USE_EXA /* radeon_exa.c */ |