rpms/xorg-x11-drv-ati/F-9 radeon-initial-cloning.patch, NONE, 1.1 xorg-x11-drv-ati.spec, 1.94, 1.95

Dave Airlie (airlied) fedora-extras-commits at redhat.com
Mon May 12 00:37:34 UTC 2008


Author: airlied

Update of /cvs/pkgs/rpms/xorg-x11-drv-ati/F-9
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv23153

Modified Files:
	xorg-x11-drv-ati.spec 
Added Files:
	radeon-initial-cloning.patch 
Log Message:
* Mon May 12 2008 Dave Airlie <airlied at redhat.com> 6.8.0-14
- add initial cloning support for RN50 (#439879)


radeon-initial-cloning.patch:

--- NEW FILE radeon-initial-cloning.patch ---
>From 25e0c3945a51ae8c14b3a847ec75a256e1397f24 Mon Sep 17 00:00:00 2001
From: Alex Deucher <alexdeucher at gmail.com>
Date: Mon, 12 May 2008 10:28:33 +1000
Subject: [PATCH] radeon: add initial support for cloning outputs. (single-CRTC cards only)

airlied - This code was originally written by Alex, and I've modified it to
only run on single-CRTC cards for now until we can test it some more.
---
 src/radeon_output.c |   44 ++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 44 insertions(+), 0 deletions(-)

diff --git a/src/radeon_output.c b/src/radeon_output.c
index 907d824..9b2494b 100644
--- a/src/radeon_output.c
+++ b/src/radeon_output.c
@@ -2676,10 +2676,48 @@ static RADEONMacModel RADEONDetectMacModel(ScrnInfoPtr pScrn)
 
 #endif /* __powerpc__ */
 
+static int
+radeon_output_clones (ScrnInfoPtr pScrn, xf86OutputPtr output)
+{
+    RADEONOutputPrivatePtr radeon_output = output->driver_private;
+    RADEONEntPtr pRADEONEnt = RADEONEntPriv(output->scrn);
+    xf86CrtcConfigPtr	config = XF86_CRTC_CONFIG_PTR (pScrn);
+    int			o;
+    int			index_mask = 0;
+
+    /*
+     * cards without a CRTC2 really need cloning enabled
+     * for cards with 2 CRTC this may need more testing
+     */
+    if (pRADEONEnt->HasCRTC2)
+	return index_mask;
+
+    /* LVDS is too wacky */
+    if (radeon_output->type == OUTPUT_LVDS)
+	return index_mask;
+
+    for (o = 0; o < config->num_output; o++) {
+	xf86OutputPtr clone = config->output[o];
+	RADEONOutputPrivatePtr radeon_clone = clone->driver_private;
+	if (output == clone) /* don't clone yourself */
+	    continue;
+	else if (radeon_clone->type == OUTPUT_LVDS) /* LVDS */
+	    continue;
+	else if ((radeon_output->DACType == DAC_TVDAC) &&
+		 (radeon_clone->DACType == DAC_TVDAC)) /* shared tvdac */
+	    continue;
+	else
+	    index_mask |= (1 << o);
+    }
+
+    return index_mask;
+}
+
 /*
  * initialise the static data sos we don't have to re-do at randr change */
 Bool RADEONSetupConnectors(ScrnInfoPtr pScrn)
 {
+    xf86CrtcConfigPtr   xf86_config = XF86_CRTC_CONFIG_PTR(pScrn);
     RADEONInfoPtr info       = RADEONPTR(pScrn);
     RADEONEntPtr pRADEONEnt  = RADEONEntPriv(pScrn);
     xf86OutputPtr output;
@@ -2881,6 +2919,12 @@ Bool RADEONSetupConnectors(ScrnInfoPtr pScrn)
 	}
     }
 
+    for (i = 0; i < xf86_config->num_output; i++) {
+	xf86OutputPtr output = xf86_config->output[i];
+
+	output->possible_clones = radeon_output_clones(pScrn, output);
+    }
+
     return TRUE;
 }
 
-- 
1.5.3.7



Index: xorg-x11-drv-ati.spec
===================================================================
RCS file: /cvs/pkgs/rpms/xorg-x11-drv-ati/F-9/xorg-x11-drv-ati.spec,v
retrieving revision 1.94
retrieving revision 1.95
diff -u -r1.94 -r1.95
--- xorg-x11-drv-ati.spec	7 May 2008 00:43:17 -0000	1.94
+++ xorg-x11-drv-ati.spec	12 May 2008 00:36:56 -0000	1.95
@@ -5,7 +5,7 @@
 Summary:   Xorg X11 ati video driver
 Name:      xorg-x11-drv-ati
 Version:   6.8.0
-Release:   13%{?dist}
+Release:   14%{?dist}
 URL:       http://www.x.org
 License:   MIT
 Group:     User Interface/X Hardware Support
@@ -20,6 +20,7 @@
 Patch1:     radeon-git-upstream-fixes.patch
 Patch2:     radeon-git-upstream-fixes2.patch
 Patch4:     radeon-6.7.196-faster-ddc.patch
+Patch5:     radeon-initial-cloning.patch
 
 # Rage 128 patches (100-199)
 Patch100: r128-bios-size.patch
@@ -49,6 +50,7 @@
 %patch1 -p1 -b .git
 %patch2 -p1 -b .git2
 #patch4 -p1 -b .ddc
+%patch5 -p1 -b .clone
 
 %patch100 -p1 -b .r128-bios
 %patch200 -p1 -b .mach64-ia64
@@ -91,6 +93,9 @@
 %{_mandir}/man4/radeon.4*
 
 %changelog
+* Mon May 12 2008 Dave Airlie <airlied at redhat.com> 6.8.0-14
+- add initial cloning support for RN50 (#439879)
+
 * Wed May 07 2008 Dave Airlie <airlied at redhat.com> 6.8.0-13
 - more upstream fixes for EXA accel + zaphod mode
 




More information about the fedora-extras-commits mailing list