* Tue Aug 04 2009 Dave Airlie <airlied@redhat.com> 1.6.99-24.20090804
- update server snapshot + add VGA arbitration
This commit is contained in:
parent
9c3a344ac5
commit
cdde67c567
@ -1 +1 @@
|
||||
xorg-server-20090724.tar.bz2
|
||||
xorg-server-20090804.tar.bz2
|
||||
|
2
commitid
2
commitid
@ -1 +1 @@
|
||||
7c6b5458de9bc7f6cd972a36b56888aaa3d201ee
|
||||
736f2d64725c6df8413e627bd40ce7ecb011acc7
|
||||
|
@ -1,4 +1,4 @@
|
||||
From fb33e4a3cb43ff4b2ca4bdd9170d84569d3e9de0 Mon Sep 17 00:00:00 2001
|
||||
From 20edb1d61db80f5fedb4d3eea60c67d438502238 Mon Sep 17 00:00:00 2001
|
||||
From: =?utf-8?q?Kristian=20H=C3=B8gsberg?= <krh@redhat.com>
|
||||
Date: Wed, 29 Jul 2009 08:26:14 -0400
|
||||
Subject: [PATCH] DRI2 Page Flipping
|
||||
@ -172,7 +172,7 @@ index 46c9382..3e62782 100644
|
||||
extern __GLXclientState *glxGetClient(ClientPtr pClient);
|
||||
|
||||
diff --git a/hw/xfree86/dri2/dri2.c b/hw/xfree86/dri2/dri2.c
|
||||
index 8795cd1..8f5e0c3 100644
|
||||
index d15ced1..7b9fb23 100644
|
||||
--- a/hw/xfree86/dri2/dri2.c
|
||||
+++ b/hw/xfree86/dri2/dri2.c
|
||||
@@ -38,6 +38,7 @@
|
||||
@ -181,9 +181,9 @@ index 8795cd1..8f5e0c3 100644
|
||||
#include "windowstr.h"
|
||||
+#include "dixstruct.h"
|
||||
#include "dri2.h"
|
||||
#include "xf86VGAarbiter.h"
|
||||
|
||||
#include "xf86.h"
|
||||
@@ -55,7 +56,8 @@ typedef struct _DRI2Drawable {
|
||||
@@ -56,7 +57,8 @@ typedef struct _DRI2Drawable {
|
||||
int height;
|
||||
DRI2BufferPtr *buffers;
|
||||
int bufferCount;
|
||||
@ -193,7 +193,7 @@ index 8795cd1..8f5e0c3 100644
|
||||
} DRI2DrawableRec, *DRI2DrawablePtr;
|
||||
|
||||
typedef struct _DRI2Screen {
|
||||
@@ -67,6 +69,7 @@ typedef struct _DRI2Screen {
|
||||
@@ -68,6 +70,7 @@ typedef struct _DRI2Screen {
|
||||
DRI2CreateBufferProcPtr CreateBuffer;
|
||||
DRI2DestroyBufferProcPtr DestroyBuffer;
|
||||
DRI2CopyRegionProcPtr CopyRegion;
|
||||
@ -201,7 +201,7 @@ index 8795cd1..8f5e0c3 100644
|
||||
|
||||
HandleExposuresProcPtr HandleExposures;
|
||||
} DRI2ScreenRec, *DRI2ScreenPtr;
|
||||
@@ -118,6 +121,8 @@ DRI2CreateDrawable(DrawablePtr pDraw)
|
||||
@@ -119,6 +122,8 @@ DRI2CreateDrawable(DrawablePtr pDraw)
|
||||
pPriv->height = pDraw->height;
|
||||
pPriv->buffers = NULL;
|
||||
pPriv->bufferCount = 0;
|
||||
@ -210,7 +210,7 @@ index 8795cd1..8f5e0c3 100644
|
||||
|
||||
if (pDraw->type == DRAWABLE_WINDOW)
|
||||
{
|
||||
@@ -337,6 +342,106 @@ DRI2CopyRegion(DrawablePtr pDraw, RegionPtr pRegion,
|
||||
@@ -338,6 +343,106 @@ DRI2CopyRegion(DrawablePtr pDraw, RegionPtr pRegion,
|
||||
return Success;
|
||||
}
|
||||
|
||||
@ -317,7 +317,7 @@ index 8795cd1..8f5e0c3 100644
|
||||
void
|
||||
DRI2DestroyDrawable(DrawablePtr pDraw)
|
||||
{
|
||||
@@ -362,7 +467,11 @@ DRI2DestroyDrawable(DrawablePtr pDraw)
|
||||
@@ -363,7 +468,11 @@ DRI2DestroyDrawable(DrawablePtr pDraw)
|
||||
xfree(pPriv->buffers);
|
||||
}
|
||||
|
||||
@ -330,16 +330,16 @@ index 8795cd1..8f5e0c3 100644
|
||||
|
||||
if (pDraw->type == DRAWABLE_WINDOW)
|
||||
{
|
||||
@@ -414,7 +523,7 @@ DRI2ScreenInit(ScreenPtr pScreen, DRI2InfoPtr info)
|
||||
if (info->version < 3)
|
||||
return FALSE;
|
||||
@@ -421,7 +530,7 @@ DRI2ScreenInit(ScreenPtr pScreen, DRI2InfoPtr info)
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
- ds = xalloc(sizeof *ds);
|
||||
+ ds = xcalloc(1, sizeof *ds);
|
||||
if (!ds)
|
||||
return FALSE;
|
||||
|
||||
@@ -426,6 +535,9 @@ DRI2ScreenInit(ScreenPtr pScreen, DRI2InfoPtr info)
|
||||
@@ -433,6 +542,9 @@ DRI2ScreenInit(ScreenPtr pScreen, DRI2InfoPtr info)
|
||||
ds->DestroyBuffer = info->DestroyBuffer;
|
||||
ds->CopyRegion = info->CopyRegion;
|
||||
|
||||
@ -456,5 +456,5 @@ index 029dce8..9f5f389 100644
|
||||
return BadRequest;
|
||||
}
|
||||
--
|
||||
1.6.3.3
|
||||
1.6.0.6
|
||||
|
||||
|
2
sources
2
sources
@ -1 +1 @@
|
||||
537084e15ae293b3dbb3a6c160fc17a1 xorg-server-20090724.tar.bz2
|
||||
7588aa54124e59be6989a9f70d935d0a xorg-server-20090804.tar.bz2
|
||||
|
@ -14,12 +14,12 @@
|
||||
# Fix rhpxl to no longer need vesamodes/extramodes
|
||||
|
||||
%define pkgname xorg-server
|
||||
%define gitdate 20090724
|
||||
%define gitdate 20090804
|
||||
|
||||
Summary: X.Org X11 X server
|
||||
Name: xorg-x11-server
|
||||
Version: 1.6.99
|
||||
Release: 23.%{gitdate}%{?dist}
|
||||
Release: 24.%{gitdate}%{?dist}
|
||||
URL: http://www.x.org
|
||||
License: MIT
|
||||
Group: User Interface/X
|
||||
@ -48,6 +48,9 @@ Source30: find-provides
|
||||
|
||||
Patch10: xserver-1.6.99-linkmap.patch
|
||||
|
||||
# airlied to upstream for 1.7
|
||||
Patch100: xserver-1.6.99-vga-arb.patch
|
||||
|
||||
# OpenGL compositing manager feature/optimization patches.
|
||||
Patch103: xserver-1.5.0-bg-none-root.patch
|
||||
Patch104: dri2-page-flip.patch
|
||||
@ -71,15 +74,13 @@ Patch6011: xserver-1.6.0-less-acpi-brokenness.patch
|
||||
# Make autoconfiguration chose nouveau driver for NVIDIA GPUs
|
||||
Patch6016: xserver-1.6.1-nouveau.patch
|
||||
|
||||
Patch6022: xserver-1.6.0-primary.patch
|
||||
Patch6023: xserver-1.6.99-use-pci-access-boot.patch
|
||||
|
||||
# ajax needs to upstream this
|
||||
Patch6027: xserver-1.6.0-displayfd.patch
|
||||
Patch6028: xserver-1.6.99-randr-error-debugging.patch
|
||||
Patch6029: xserver-1.6.1-proc-cmdline.patch
|
||||
Patch6030: xserver-1.6.99-right-of.patch
|
||||
|
||||
|
||||
%define moduledir %{_libdir}/xorg/modules
|
||||
%define drimoduledir %{_libdir}/dri
|
||||
%define sdkdir %{_includedir}/xorg
|
||||
@ -526,6 +527,9 @@ rm -rf $RPM_BUILD_ROOT
|
||||
|
||||
|
||||
%changelog
|
||||
* Tue Aug 04 2009 Dave Airlie <airlied@redhat.com> 1.6.99-24.20090804
|
||||
- update server snapshot + add VGA arbitration
|
||||
|
||||
* Mon Aug 03 2009 Adam Jackson <ajax@redhat.com> 1.6.99-23.20090724
|
||||
- Un-Requires xorg-x11-filesystem
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
From 3b9461737f1a0711a2c5a8916628386c359d9203 Mon Sep 17 00:00:00 2001
|
||||
From: =?utf-8?q?Kristian=20H=C3=B8gsberg?= <krh@redhat.com>
|
||||
Date: Thu, 18 Jun 2009 13:38:58 +1000
|
||||
From b4e4b980663692a3af5787eeaf2d48eb6c0188ed Mon Sep 17 00:00:00 2001
|
||||
From: Fedora X Ninjas <airlied@redhat.com>
|
||||
Date: Tue, 4 Aug 2009 14:45:58 +1000
|
||||
Subject: [PATCH] Add nr for background=none root
|
||||
|
||||
---
|
||||
@ -25,7 +25,7 @@ index c24a94f..907a5e8 100644
|
||||
int cursorScreenDevPriv[MAXSCREENS];
|
||||
|
||||
diff --git a/dix/window.c b/dix/window.c
|
||||
index 99b594b..aefc282 100644
|
||||
index 32e26d9..0bf1d52 100644
|
||||
--- a/dix/window.c
|
||||
+++ b/dix/window.c
|
||||
@@ -466,22 +466,24 @@ InitRootWindow(WindowPtr pWin)
|
||||
@ -59,7 +59,7 @@ index 99b594b..aefc282 100644
|
||||
MapWindow(pWin, serverClient);
|
||||
}
|
||||
diff --git a/hw/xfree86/common/xf86Init.c b/hw/xfree86/common/xf86Init.c
|
||||
index c4e5898..97bf48a 100644
|
||||
index e84da4e..2a0f47a 100644
|
||||
--- a/hw/xfree86/common/xf86Init.c
|
||||
+++ b/hw/xfree86/common/xf86Init.c
|
||||
@@ -77,6 +77,7 @@
|
||||
@ -68,9 +68,9 @@ index c4e5898..97bf48a 100644
|
||||
#endif
|
||||
+#include "xace.h"
|
||||
|
||||
#include "xf86VGAarbiter.h"
|
||||
#include "globals.h"
|
||||
|
||||
@@ -312,6 +313,7 @@ xf86CreateRootWindow(WindowPtr pWin)
|
||||
@@ -234,6 +235,7 @@ xf86CreateRootWindow(WindowPtr pWin)
|
||||
int ret = TRUE;
|
||||
int err = Success;
|
||||
ScreenPtr pScreen = pWin->drawable.pScreen;
|
||||
@ -78,7 +78,7 @@ index c4e5898..97bf48a 100644
|
||||
RootWinPropPtr pProp;
|
||||
CreateWindowProcPtr CreateWindow = (CreateWindowProcPtr)
|
||||
dixLookupPrivate(&pScreen->devPrivates, xf86CreateRootWindowKey);
|
||||
@@ -363,6 +365,15 @@ xf86CreateRootWindow(WindowPtr pWin)
|
||||
@@ -285,6 +287,15 @@ xf86CreateRootWindow(WindowPtr pWin)
|
||||
}
|
||||
}
|
||||
|
||||
@ -95,7 +95,7 @@ index c4e5898..97bf48a 100644
|
||||
return (ret);
|
||||
}
|
||||
diff --git a/hw/xfree86/common/xf86str.h b/hw/xfree86/common/xf86str.h
|
||||
index 3b1346f..b82f168 100644
|
||||
index 5c3ee44..e3c7841 100644
|
||||
--- a/hw/xfree86/common/xf86str.h
|
||||
+++ b/hw/xfree86/common/xf86str.h
|
||||
@@ -516,7 +516,7 @@ typedef struct _confdrirec {
|
||||
@ -104,10 +104,10 @@ index 3b1346f..b82f168 100644
|
||||
/* These values should be adjusted when new fields are added to ScrnInfoRec */
|
||||
-#define NUM_RESERVED_INTS 16
|
||||
+#define NUM_RESERVED_INTS 15
|
||||
#define NUM_RESERVED_POINTERS 15
|
||||
#define NUM_RESERVED_POINTERS 14
|
||||
#define NUM_RESERVED_FUNCS 11
|
||||
|
||||
@@ -944,6 +944,9 @@ typedef struct _ScrnInfoRec {
|
||||
@@ -800,6 +800,9 @@ typedef struct _ScrnInfoRec {
|
||||
ClockRangesPtr clockRanges;
|
||||
int adjustFlags;
|
||||
|
||||
@ -151,5 +151,5 @@ index 00abd63..7bfdf8b 100644
|
||||
if(++i < argc) {
|
||||
long reqSizeArg = atol(argv[i]);
|
||||
--
|
||||
1.6.3.rc1.2.g0164.dirty
|
||||
1.6.0.6
|
||||
|
||||
|
@ -1,108 +0,0 @@
|
||||
From 69e53f2493c142ef5569af01ce52565be5b2976e Mon Sep 17 00:00:00 2001
|
||||
From: Adam Jackson <ajax@redhat.com>
|
||||
Date: Tue, 3 Mar 2009 10:58:33 -0500
|
||||
Subject: [PATCH] Primary video device hack
|
||||
|
||||
---
|
||||
hw/xfree86/common/xf86pciBus.c | 60 ++++++++++++++++++++++++++++++++--------
|
||||
1 files changed, 48 insertions(+), 12 deletions(-)
|
||||
|
||||
diff --git a/hw/xfree86/common/xf86pciBus.c b/hw/xfree86/common/xf86pciBus.c
|
||||
index 467a0c3..0d2d01c 100644
|
||||
--- a/hw/xfree86/common/xf86pciBus.c
|
||||
+++ b/hw/xfree86/common/xf86pciBus.c
|
||||
@@ -60,11 +60,7 @@ static struct pci_device ** xf86PciVideoInfo = NULL; /* PCI probe for video hw *
|
||||
/* PCI classes that get included in xf86PciVideoInfo */
|
||||
#define PCIINFOCLASSES(c) \
|
||||
( (((c) & 0x00ff0000) == (PCI_CLASS_PREHISTORIC << 16)) \
|
||||
- || (((c) & 0x00ff0000) == (PCI_CLASS_DISPLAY << 16)) \
|
||||
- || ((((c) & 0x00ffff00) \
|
||||
- == ((PCI_CLASS_MULTIMEDIA << 16) | (PCI_SUBCLASS_MULTIMEDIA_VIDEO << 8)))) \
|
||||
- || ((((c) & 0x00ffff00) \
|
||||
- == ((PCI_CLASS_PROCESSOR << 16) | (PCI_SUBCLASS_PROCESSOR_COPROC << 8)))) )
|
||||
+ || (((c) & 0x00ffff00) == (PCI_CLASS_DISPLAY << 16)) )
|
||||
|
||||
/*
|
||||
* PCI classes that have messages printed always. The others are only
|
||||
@@ -341,6 +337,39 @@ restorePciBusState(BusAccPtr ptr)
|
||||
}
|
||||
#undef MASKBITS
|
||||
|
||||
+/* oh god what have i done */
|
||||
+static Bool
|
||||
+looks_like_bios_primary(struct pci_device *info)
|
||||
+{
|
||||
+ unsigned char *bios;
|
||||
+ unsigned short vendor, device;
|
||||
+ int offset;
|
||||
+ Bool ret = FALSE;
|
||||
+
|
||||
+ bios = xf86MapVidMem(-1, VIDMEM_MMIO, 0xc0000, 0x10000);
|
||||
+ if (!bios)
|
||||
+ return FALSE;
|
||||
+
|
||||
+ if (bios[0] != 0x55 || bios[1] != 0xAA)
|
||||
+ goto out;
|
||||
+
|
||||
+ offset = (bios[0x19] << 8) + bios[0x18];
|
||||
+
|
||||
+ if (bios[offset] != 'P' ||
|
||||
+ bios[offset+1] != 'C' ||
|
||||
+ bios[offset+2] != 'I' ||
|
||||
+ bios[offset+3] != 'R')
|
||||
+ goto out;
|
||||
+
|
||||
+ vendor = (bios[offset+5] << 8) + bios[offset+4];
|
||||
+ device = (bios[offset+7] << 8) + bios[offset+6];
|
||||
+
|
||||
+ ret = (info->vendor_id == vendor) && (info->device_id == device);
|
||||
+
|
||||
+out:
|
||||
+ xf86UnMapVidMem(-1, bios, 0x10000);
|
||||
+ return ret;
|
||||
+}
|
||||
|
||||
/*
|
||||
* xf86Bus.c interface
|
||||
@@ -375,24 +404,31 @@ xf86PciProbe(void)
|
||||
}
|
||||
}
|
||||
|
||||
-
|
||||
/* If we haven't found a primary device try a different heuristic */
|
||||
if (primaryBus.type == BUS_NONE && num) {
|
||||
for (i = 0; i < num; i++) {
|
||||
uint16_t command;
|
||||
|
||||
info = xf86PciVideoInfo[i];
|
||||
+ if (!IS_VGA(info->device_class))
|
||||
+ continue;
|
||||
+
|
||||
pci_device_cfg_read_u16(info, & command, 4);
|
||||
|
||||
- if ((command & PCI_CMD_MEM_ENABLE)
|
||||
- && ((num == 1) || IS_VGA(info->device_class))) {
|
||||
- if (primaryBus.type == BUS_NONE) {
|
||||
+ if ((command & PCI_CMD_MEM_ENABLE)) {
|
||||
+ if (num == 1) {
|
||||
primaryBus.type = BUS_PCI;
|
||||
primaryBus.id.pci = info;
|
||||
- } else {
|
||||
- xf86Msg(X_NOTICE,
|
||||
+ break;
|
||||
+ } else if (looks_like_bios_primary(info)) {
|
||||
+ if (primaryBus.type == BUS_NONE) {
|
||||
+ primaryBus.type = BUS_PCI;
|
||||
+ primaryBus.id.pci = info;
|
||||
+ } else {
|
||||
+ xf86Msg(X_NOTICE,
|
||||
"More than one possible primary device found\n");
|
||||
- primaryBus.type ^= (BusType)(-1);
|
||||
+ primaryBus.type ^= (BusType)(-1);
|
||||
+ }
|
||||
}
|
||||
}
|
||||
}
|
||||
--
|
||||
1.6.1.3
|
||||
|
@ -1,37 +0,0 @@
|
||||
From 30f5e00909399b4503009e32831127d72d34f5df Mon Sep 17 00:00:00 2001
|
||||
From: Dave Airlie <airlied@redhat.com>
|
||||
Date: Tue, 3 Mar 2009 10:58:33 -0500
|
||||
Subject: [PATCH] Primary video device hack - the revenge
|
||||
|
||||
---
|
||||
hw/xfree86/common/xf86pciBus.c | 7 ++++++-
|
||||
1 files changed, 6 insertions(+), 1 deletions(-)
|
||||
|
||||
diff --git a/hw/xfree86/common/xf86pciBus.c b/hw/xfree86/common/xf86pciBus.c
|
||||
index 8ed3567..74aeb44 100644
|
||||
--- a/hw/xfree86/common/xf86pciBus.c
|
||||
+++ b/hw/xfree86/common/xf86pciBus.c
|
||||
@@ -60,7 +60,7 @@ static struct pci_device ** xf86PciVideoInfo = NULL; /* PCI probe for video hw *
|
||||
/* PCI classes that get included in xf86PciVideoInfo */
|
||||
#define PCIINFOCLASSES(c) \
|
||||
( (((c) & 0x00ff0000) == (PCI_CLASS_PREHISTORIC << 16)) \
|
||||
- || (((c) & 0x00ffff00) == (PCI_CLASS_DISPLAY << 16)) )
|
||||
+ || (((c) & 0x00ff0000) == (PCI_CLASS_DISPLAY << 16)) )
|
||||
|
||||
/*
|
||||
* PCI classes that have messages printed always. The others are only
|
||||
@@ -400,6 +400,11 @@ xf86PciProbe(void)
|
||||
xf86PciVideoInfo[num - 1] = info;
|
||||
|
||||
pci_device_probe(info);
|
||||
+
|
||||
+ if (pci_device_is_boot_vga(info)) {
|
||||
+ primaryBus.type = BUS_PCI;
|
||||
+ primaryBus.id.pci = info;
|
||||
+ }
|
||||
info->user_data = 0;
|
||||
}
|
||||
}
|
||||
--
|
||||
1.6.3.3
|
||||
|
1813
xserver-1.6.99-vga-arb.patch
Normal file
1813
xserver-1.6.99-vga-arb.patch
Normal file
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user