diff options
author | Aaron Plattner <aplattner@nvidia.com> | 2007-07-24 20:36:04 -0700 |
---|---|---|
committer | Aaron Plattner <aaron@weasel.nvidia.com> | 2007-07-24 20:36:04 -0700 |
commit | 08b68473351081fe1ed96ba7e206ed0d301b8a91 (patch) | |
tree | daa06fca777bb68abb66d8b124d0c533edc5109f /src/g80_dac.c | |
parent | f0ebb42ee94eac4b294d12d02f4406a444b347ff (diff) |
G80: Allow DVI scaling.
Revamp how the scaling code works. When a mode is set on a DVI output,
determine the current preferred mode and scale to that. Add a new scaling
option, "off", which disables scaling and scans out the actual timings in the
mode to be set.
Diffstat (limited to 'src/g80_dac.c')
-rw-r--r-- | src/g80_dac.c | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/src/g80_dac.c b/src/g80_dac.c index 7848de2..30413cd 100644 --- a/src/g80_dac.c +++ b/src/g80_dac.c @@ -76,6 +76,13 @@ G80DacDPMSSet(xf86OutputPtr output, int mode) pNv->reg[(0x0061A004+off)/4] = tmp; } +Bool +G80DacModeFixup(xf86OutputPtr output, DisplayModePtr mode, + DisplayModePtr adjusted_mode) +{ + return TRUE; +} + static void G80DacModeSet(xf86OutputPtr output, DisplayModePtr mode, DisplayModePtr adjusted_mode) @@ -99,6 +106,8 @@ G80DacModeSet(xf86OutputPtr output, DisplayModePtr mode, C(0x00000404 + dacOff, (adjusted_mode->Flags & V_NHSYNC) ? 1 : 0 | (adjusted_mode->Flags & V_NVSYNC) ? 2 : 0); + + G80CrtcSetScale(output->crtc, adjusted_mode, G80_SCALE_OFF); } /* @@ -165,7 +174,7 @@ static const xf86OutputFuncsRec G80DacOutputFuncs = { .save = NULL, .restore = NULL, .mode_valid = G80OutputModeValid, - .mode_fixup = G80OutputModeFixup, + .mode_fixup = G80DacModeFixup, .prepare = G80OutputPrepare, .commit = G80OutputCommit, .mode_set = G80DacModeSet, |