summaryrefslogtreecommitdiff
path: root/src/i830_randr.c
diff options
context:
space:
mode:
authorKeith Packard <keithp@neko.keithp.com>2006-09-23 12:00:43 +0100
committerKeith Packard <keithp@neko.keithp.com>2006-09-23 12:00:43 +0100
commitc34490bbda6604a21809d15c798607806fa6c725 (patch)
tree9cfa22244e8f86da8bf3ab7159b1ed3ae41471cd /src/i830_randr.c
parent4820caf46e050761d9b347b8a440381e1b1f4727 (diff)
Construct default monitor description for hotplug non-DDC monitor.
When detecting a monitor that doesn't support DDC, construct a default monitor with "sensible" values instead of using whatever the builtin LCD screen uses. Clearly we need a way to set the monitor parameters when we cannot detect them.
Diffstat (limited to 'src/i830_randr.c')
-rw-r--r--src/i830_randr.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/i830_randr.c b/src/i830_randr.c
index 7c67aea2..d86911ce 100644
--- a/src/i830_randr.c
+++ b/src/i830_randr.c
@@ -773,7 +773,15 @@ static Bool
I830RandRGetInfo12 (ScreenPtr pScreen, Rotation *rotations)
{
ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum];
+ I830Ptr pI830 = I830PTR(pScrn);
+ int found_crt;
+
/* Re-probe the outputs for new monitors or modes */
+ pI830->operatingDevices = pI830->operatingDevices & ~PIPE_CRT;
+ found_crt = i830DetectCRT(pScrn, FALSE);
+ if (found_crt)
+ pI830->operatingDevices = pI830->operatingDevices | PIPE_CRT;
+
I830ValidateXF86ModeList(pScrn, FALSE);
return I830RandRSetInfo12 (pScreen);
}