summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/radeon_display.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/radeon_display.c b/src/radeon_display.c
index 391922e2..15e25ebc 100644
--- a/src/radeon_display.c
+++ b/src/radeon_display.c
@@ -2592,6 +2592,8 @@ radeon_get_modes(xf86OutputPtr output)
static void
radeon_destroy (xf86OutputPtr output)
{
+ if(output->driver_private)
+ xfree(output->driver_private);
}
static const xf86OutputFuncsRec radeon_output_funcs = {
@@ -2719,8 +2721,12 @@ Bool RADEONAllocateConnectors(ScrnInfoPtr pScrn)
pRADEONEnt->pOutput[i]->driver_private = pRADEONEnt->PortInfo[i];
pRADEONEnt->PortInfo[i]->num = i;
-
- pRADEONEnt->pOutput[i]->possible_crtcs = (1<<0) | (1<<1);
+
+ pRADEONEnt->pOutput[i]->possible_crtcs = (1<<0);
+ if (pRADEONEnt->PortInfo[i]->type != OUTPUT_LVDS)
+ pRADEONEnt->pOutput[i]->possible_crtcs |= (1<<1);
+
+ pRADEONEnt->pOutput[i]->possible_clones = 0;
}