* Thu Feb 25 2010 Dave Airlie <airlied@redhat.com> 1.7.99.901-9.20100223

- fix right-of patch to allow driver to override right-of with clone
This commit is contained in:
Dave Airlie 2010-02-25 02:00:43 +00:00
parent 1ee4dcdb7c
commit add10e2c73
3 changed files with 72 additions and 14 deletions

View File

@ -1 +1 @@
5c195ebdbb8ff91e1e5cded32c4750ec xorg-server-20100215.tar.xz 55513ab7f893cf75c75ffc3186ec1aff xorg-server-20100223.tar.xz

View File

@ -14,12 +14,12 @@
# Fix rhpxl to no longer need vesamodes/extramodes # Fix rhpxl to no longer need vesamodes/extramodes
%define pkgname xorg-server %define pkgname xorg-server
%define gitdate 20100215 %define gitdate 20100223
Summary: X.Org X11 X server Summary: X.Org X11 X server
Name: xorg-x11-server Name: xorg-x11-server
Version: 1.7.99.901 Version: 1.7.99.901
Release: 6.%{gitdate}%{dist} Release: 9.%{gitdate}%{dist}
URL: http://www.x.org URL: http://www.x.org
License: MIT License: MIT
Group: User Interface/X Group: User Interface/X
@ -162,6 +162,7 @@ Requires: xorg-x11-drv-void xorg-x11-drv-evdev >= 2.1.0-3
Requires: xorg-x11-server-common >= %{version}-%{release} Requires: xorg-x11-server-common >= %{version}-%{release}
Requires: libdrm >= 2.4.0 Requires: libdrm >= 2.4.0
Requires: system-setup-keyboard Requires: system-setup-keyboard
Requires: udev >= 148-1
# Dropped from F9 for being broken, uninstall it. # Dropped from F9 for being broken, uninstall it.
Obsoletes: xorg-x11-drv-magictouch <= 1.0.0.5-5.fc8 Obsoletes: xorg-x11-drv-magictouch <= 1.0.0.5-5.fc8
# Dropped from F11, use evdev instead # Dropped from F11, use evdev instead
@ -517,6 +518,20 @@ rm -rf $RPM_BUILD_ROOT
%{xserver_source_dir} %{xserver_source_dir}
%changelog %changelog
* Thu Feb 25 2010 Dave Airlie <airlied@redhat.com> 1.7.99.901-9.20100223
- fix right-of patch to allow driver to override right-of with clone
* Tue Feb 23 2010 Peter Hutterer <peter.hutterer@redhat.com> 1.7.99.901-8.0100215
- Require udev >= 148-1 for xorg-x11-server-Xorg, otherwise we don't see any
input devices (#566396). This requires is just needed now in the
transition period, we still have users with an older udev but newer
server. Also, 148-1 didn't actually exist in Fedora, but whatever next one
will do.
- Update to today's master, re-enables RECORD.
* Mon Feb 22 2010 Ben Skeggs <bskeggs@redhat.com> 1.7.99.901-7.20100215
- exa: fix gnome-panel corruption
* Fri Feb 19 2010 Peter Hutterer <peter.hutterer@redhat.com> 1.7.99.901-6.20100215 * Fri Feb 19 2010 Peter Hutterer <peter.hutterer@redhat.com> 1.7.99.901-6.20100215
- Only match device paths of /dev/input/event* for the evdev classes. - Only match device paths of /dev/input/event* for the evdev classes.
Reduces the number of error messages seen in the log when evdev can't Reduces the number of error messages seen in the log when evdev can't

View File

@ -1,17 +1,57 @@
From 96794b48a3dd37bf0e74b566e5bcba00293836c7 Mon Sep 17 00:00:00 2001 From ba73535b8af8e3540d7fddc0a4b8a85ad2ffa891 Mon Sep 17 00:00:00 2001
From: Adam Jackson <ajax@redhat.com> From: Adam Jackson <ajax@redhat.com>
Date: Tue, 28 Jul 2009 11:07:13 -0400 Date: Tue, 28 Jul 2009 11:07:13 -0400
Subject: [PATCH 12/16] RANDR: right-of placement by default Subject: [PATCH] RANDR: right-of placement by default
[Enhanced to add a new prefer clone option for drivers. This
allows for servers like RN50 where two heads are disjoint. - airlied]
--- ---
hw/xfree86/modes/xf86Crtc.c | 71 ++++++++++++++++++++++++++++++++++++++---- hw/xfree86/common/xf86str.h | 9 ++++-
1 files changed, 64 insertions(+), 7 deletions(-) hw/xfree86/modes/xf86Crtc.c | 74 ++++++++++++++++++++++++++++++++++++++----
2 files changed, 74 insertions(+), 9 deletions(-)
diff --git a/hw/xfree86/common/xf86str.h b/hw/xfree86/common/xf86str.h
index 2b8f998..acc7d07 100644
--- a/hw/xfree86/common/xf86str.h
+++ b/hw/xfree86/common/xf86str.h
@@ -516,10 +516,13 @@ typedef struct _confdrirec {
} confDRIRec, *confDRIPtr;
/* These values should be adjusted when new fields are added to ScrnInfoRec */
-#define NUM_RESERVED_INTS 15
+#define NUM_RESERVED_INTS 14
#define NUM_RESERVED_POINTERS 14
#define NUM_RESERVED_FUNCS 11
+/* let clients know they can use this */
+#define XF86_SCRN_HAS_PREFER_CLONE 1
+
typedef pointer (*funcPointer)(void);
/* flags for depth 24 pixmap options */
@@ -685,7 +688,6 @@ typedef void xf86SetOverscanProc (ScrnInfoPtr, int);
* are to be dependent on compile-time defines.
*/
-
typedef struct _ScrnInfoRec {
int driverVersion;
char * driverName; /* canonical name used in */
@@ -790,6 +792,9 @@ typedef struct _ScrnInfoRec {
/* -nr support */
int canDoBGNoneRoot;
+
+ /* initial rightof support disable */
+ int preferClone;
/*
* These can be used when the minor ABI version is incremented.
diff --git a/hw/xfree86/modes/xf86Crtc.c b/hw/xfree86/modes/xf86Crtc.c diff --git a/hw/xfree86/modes/xf86Crtc.c b/hw/xfree86/modes/xf86Crtc.c
index 2ee109b..8f726fa 100644 index 9370640..a710b23 100644
--- a/hw/xfree86/modes/xf86Crtc.c --- a/hw/xfree86/modes/xf86Crtc.c
+++ b/hw/xfree86/modes/xf86Crtc.c +++ b/hw/xfree86/modes/xf86Crtc.c
@@ -1141,6 +1141,15 @@ xf86InitialOutputPositions (ScrnInfoPtr scrn, DisplayModePtr *modes) @@ -1137,6 +1137,15 @@ xf86InitialOutputPositions (ScrnInfoPtr scrn, DisplayModePtr *modes)
int o; int o;
int min_x, min_y; int min_x, min_y;
@ -27,7 +67,7 @@ index 2ee109b..8f726fa 100644
for (o = 0; o < config->num_output; o++) for (o = 0; o < config->num_output; o++)
{ {
xf86OutputPtr output = config->output[o]; xf86OutputPtr output = config->output[o];
@@ -2026,6 +2035,54 @@ bestModeForAspect(xf86CrtcConfigPtr config, Bool *enabled, float aspect) @@ -1995,6 +2004,57 @@ bestModeForAspect(xf86CrtcConfigPtr config, Bool *enabled, float aspect)
return match; return match;
} }
@ -49,6 +89,9 @@ index 2ee109b..8f726fa 100644
+ int o; + int o;
+ int w = 0; + int w = 0;
+ +
+ if (scrn->preferClone)
+ return FALSE;
+
+ if (numEnabledOutputs(config, enabled) < 2) + if (numEnabledOutputs(config, enabled) < 2)
+ return FALSE; + return FALSE;
+ +
@ -82,7 +125,7 @@ index 2ee109b..8f726fa 100644
static Bool static Bool
xf86TargetPreferred(ScrnInfoPtr scrn, xf86CrtcConfigPtr config, xf86TargetPreferred(ScrnInfoPtr scrn, xf86CrtcConfigPtr config,
DisplayModePtr *modes, Bool *enabled, DisplayModePtr *modes, Bool *enabled,
@@ -2083,13 +2140,9 @@ xf86TargetPreferred(ScrnInfoPtr scrn, xf86CrtcConfigPtr config, @@ -2052,13 +2112,9 @@ xf86TargetPreferred(ScrnInfoPtr scrn, xf86CrtcConfigPtr config,
* biggest mode for its aspect ratio, assuming one exists. * biggest mode for its aspect ratio, assuming one exists.
*/ */
if (!ret) do { if (!ret) do {
@ -97,7 +140,7 @@ index 2ee109b..8f726fa 100644
break; break;
p = -1; p = -1;
@@ -2376,6 +2429,8 @@ xf86InitialConfiguration (ScrnInfoPtr scrn, Bool canGrow) @@ -2346,6 +2402,8 @@ xf86InitialConfiguration (ScrnInfoPtr scrn, Bool canGrow)
if (xf86TargetUserpref(scrn, config, modes, enabled, width, height)) if (xf86TargetUserpref(scrn, config, modes, enabled, width, height))
xf86DrvMsg(i, X_INFO, "Using user preference for initial modes\n"); xf86DrvMsg(i, X_INFO, "Using user preference for initial modes\n");
@ -106,7 +149,7 @@ index 2ee109b..8f726fa 100644
else if (xf86TargetPreferred(scrn, config, modes, enabled, width, height)) else if (xf86TargetPreferred(scrn, config, modes, enabled, width, height))
xf86DrvMsg(i, X_INFO, "Using exact sizes for initial modes\n"); xf86DrvMsg(i, X_INFO, "Using exact sizes for initial modes\n");
else if (xf86TargetAspect(scrn, config, modes, enabled, width, height)) else if (xf86TargetAspect(scrn, config, modes, enabled, width, height))
@@ -2392,8 +2447,10 @@ xf86InitialConfiguration (ScrnInfoPtr scrn, Bool canGrow) @@ -2362,8 +2420,10 @@ xf86InitialConfiguration (ScrnInfoPtr scrn, Bool canGrow)
config->output[o]->name); config->output[o]->name);
else else
xf86DrvMsg (scrn->scrnIndex, X_INFO, xf86DrvMsg (scrn->scrnIndex, X_INFO,
@ -120,5 +163,5 @@ index 2ee109b..8f726fa 100644
/* /*
-- --
1.6.4.2 1.6.5.2