summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKeith Packard <keithp@neko.keithp.com>2006-11-26 19:44:38 -0800
committerKeith Packard <keithp@neko.keithp.com>2006-11-26 19:44:38 -0800
commita0518f5a440630365b1d935b7c2d0725f326ad51 (patch)
treed4923fe2aacfe5054a8c2849412193a66e6441ea
parenta47c549df036990e29f05bc3df80e1a2ab9f3b3c (diff)
Remove mode setting from load detect CRTC allocation.
To share load-detect CRTC allocation with TV driver, move it to the output driver
-rw-r--r--src/i830_crt.c22
-rw-r--r--src/i830_display.c15
2 files changed, 21 insertions, 16 deletions
diff --git a/src/i830_crt.c b/src/i830_crt.c
index 3d755876..716afbc8 100644
--- a/src/i830_crt.c
+++ b/src/i830_crt.c
@@ -296,7 +296,27 @@ i830_crt_detect(I830_xf86OutputPtr output)
if (crtc)
{
- Bool connected = i830_crt_detect_load(crtc, output);
+ /* VESA 640x480x72Hz mode to set on the pipe */
+ static DisplayModeRec mode = {
+ NULL, NULL, "640x480", MODE_OK, M_T_DEFAULT,
+ 31500,
+ 640, 664, 704, 832, 0,
+ 480, 489, 491, 520, 0,
+ V_NHSYNC | V_NVSYNC,
+ 0, 0,
+ 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0,
+ FALSE, FALSE, 0, NULL, 0, 0.0, 0.0
+ };
+ Bool connected;
+ I830OutputPrivatePtr intel_output = output->driver_private;
+
+ if (intel_output->load_detect_temp)
+ {
+ I830xf86SetModeCrtc (&mode, INTERLACE_HALVE_V);
+ i830PipeSetMode (crtc, &mode, FALSE);
+ }
+ connected = i830_crt_detect_load (crtc, output);
i830ReleaseLoadDetectPipe (output);
if (connected)
diff --git a/src/i830_display.c b/src/i830_display.c
index 9baa39ba..ba59f56b 100644
--- a/src/i830_display.c
+++ b/src/i830_display.c
@@ -930,18 +930,6 @@ i830GetLoadDetectPipe(I830_xf86OutputPtr output)
I830OutputPrivatePtr intel_output = output->driver_private;
I830_xf86CrtcPtr crtc;
int i;
- /* VESA 640x480x72Hz mode to set on the pipe */
- static DisplayModeRec mode = {
- NULL, NULL, "640x480", MODE_OK, M_T_DEFAULT,
- 31500,
- 640, 664, 704, 832, 0,
- 480, 489, 491, 520, 0,
- V_NHSYNC | V_NVSYNC,
- 0, 0,
- 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0,
- FALSE, FALSE, 0, NULL, 0, 0.0, 0.0
- };
if (output->crtc)
return output->crtc;
@@ -958,9 +946,6 @@ i830GetLoadDetectPipe(I830_xf86OutputPtr output)
output->crtc = crtc;
intel_output->load_detect_temp = TRUE;
- I830xf86SetModeCrtc(&mode, INTERLACE_HALVE_V);
- i830PipeSetMode(crtc, &mode, FALSE);
-
return crtc;
}