xorg-server: update to xorg-server-1.11.2

Signed-off-by: Stephan Raue <stephan@openelec.tv>
This commit is contained in:
Stephan Raue 2011-11-21 00:48:23 +01:00
parent c1505f3d16
commit 2034b1d2d6
14 changed files with 28 additions and 187 deletions

View File

@ -8,6 +8,7 @@ Package updates:
- update Python to Python-2.7.2
- update gcc to gcc-4.6.2
- update openssl to openssl-1.0.0e
- update xorg-server to xorg-server-1.11
Added functions:
- PXE netboot support

View File

@ -19,7 +19,7 @@
################################################################################
PKG_NAME="xorg-server"
PKG_VERSION="1.10.4"
PKG_VERSION="1.11.2"
PKG_REV="1"
PKG_ARCH="any"
PKG_LICENSE="OSS"

View File

@ -1,100 +0,0 @@
From a685b5cf34532cef96fc9b05f735088ac0c0c7ad Mon Sep 17 00:00:00 2001
From: Fedora X Ninjas <x@fedoraproject.org>
Date: Tue, 16 Feb 2010 11:38:17 +1000
Subject: [PATCH 08/17] autoconfig: select nouveau by default for NVIDIA GPUs
Also, don't treat DRI setup failure as an error for nouveau.
---
glx/glxdri.c | 7 +++++--
glx/glxdri2.c | 7 +++++--
hw/xfree86/common/xf86AutoConfig.c | 19 ++++++++++++++++++-
3 files changed, 28 insertions(+), 5 deletions(-)
--- a/glx/glxdri.c
+++ b/glx/glxdri.c
@@ -979,6 +979,7 @@ __glXDRIscreenProbe(ScreenPtr pScreen)
const __DRIconfig **driConfigs;
const __DRIextension **extensions;
int i;
+ int from = X_ERROR;
if (!xf86LoaderCheckSymbol("DRIQueryDirectRenderingCapable") ||
!DRIQueryDirectRenderingCapable(pScreen, &isCapable) ||
@@ -1058,7 +1059,9 @@ __glXDRIscreenProbe(ScreenPtr pScreen)
screen->driver = dlopen(filename, RTLD_LAZY | RTLD_LOCAL);
if (screen->driver == NULL) {
- LogMessage(X_ERROR, "AIGLX error: dlopen of %s failed (%s)\n",
+ if (!strcmp(driverName, "nouveau"))
+ from = X_INFO;
+ LogMessage(from, "AIGLX error: dlopen of %s failed (%s)\n",
filename, dlerror());
goto handle_error;
}
@@ -1196,7 +1199,7 @@ __glXDRIscreenProbe(ScreenPtr pScreen)
free(screen);
- LogMessage(X_ERROR, "AIGLX: reverting to software rendering\n");
+ LogMessage(from, "AIGLX: reverting to software rendering\n");
return NULL;
}
--- a/glx/glxdri2.c
+++ b/glx/glxdri2.c
@@ -709,6 +709,7 @@ __glXDRIscreenProbe(ScreenPtr pScreen)
const __DRIextension **extensions;
const __DRIconfig **driConfigs;
int i;
+ int from = X_ERROR;
screen = calloc(1, sizeof *screen);
if (screen == NULL)
@@ -735,7 +736,9 @@ __glXDRIscreenProbe(ScreenPtr pScreen)
screen->driver = dlopen(filename, RTLD_LAZY | RTLD_LOCAL);
if (screen->driver == NULL) {
- LogMessage(X_ERROR, "AIGLX error: dlopen of %s failed (%s)\n",
+ if (!strcmp(driverName, "nouveau"))
+ from = X_INFO;
+ LogMessage(from, "AIGLX error: dlopen of %s failed (%s)\n",
filename, dlerror());
goto handle_error;
}
@@ -829,7 +832,7 @@ __glXDRIscreenProbe(ScreenPtr pScreen)
free(screen);
- LogMessage(X_ERROR, "AIGLX: reverting to software rendering\n");
+ LogMessage(from, "AIGLX: reverting to software rendering\n");
return NULL;
}
--- a/hw/xfree86/common/xf86pciBus.c
+++ b/hw/xfree86/common/xf86pciBus.c
@@ -1118,7 +1118,24 @@ videoPtrToDriverList(struct pci_device *
break;
case 0x102b: driverList[0] = "mga"; break;
case 0x10c8: driverList[0] = "neomagic"; break;
- case 0x10de: case 0x12d2: driverList[0] = "nv"; break;
+ case 0x10de: case 0x12d2:
+ switch (dev->device_id) {
+ /* NV1 */
+ case 0x0008:
+ case 0x0009:
+ driverList[0] = "vesa";
+ break;
+ /* NV3 */
+ case 0x0018:
+ case 0x0019:
+ driverList[0] = "nv";
+ break;
+ default:
+ driverList[0] = "nouveau";
+ driverList[1] = "nv";
+ break;
+ }
+ break;
case 0x1106: driverList[0] = "openchrome"; break;
case 0x1b36: driverList[0] = "qxl"; break;
case 0x1163: driverList[0] = "rendition"; break;

View File

@ -1,86 +0,0 @@
From 0366a844c36bf8424a2625425c181b9b97f35bee Mon Sep 17 00:00:00 2001
From: Robert Hooker <sarvatt@ubuntu.com>
Date: Wed, 1 Sep 2010 13:23:21 -0400
Subject: [PATCH] Attempt to get nvidia and fglrx working without an xorg.conf.
Signed-off-by: Robert Hooker <sarvatt@ubuntu.com>
---
hw/xfree86/common/xf86AutoConfig.c | 12 +++++++++++-
hw/xfree86/common/xf86pciBus.c | 14 +++++++++-----
2 files changed, 20 insertions(+), 6 deletions(-)
diff --git a/hw/xfree86/common/xf86AutoConfig.c b/hw/xfree86/common/xf86AutoConfig.c
index 8ef602d..a8f04b9 100644
--- a/hw/xfree86/common/xf86AutoConfig.c
+++ b/hw/xfree86/common/xf86AutoConfig.c
@@ -81,6 +81,13 @@
"\tDevice\t" BUILTIN_DEVICE_NAME "\n" \
"EndSection\n\n"
+#define BUILTIN_SCREEN_SECTION_PROPRIETARY \
+ "Section \"Screen\"\n" \
+ "\tIdentifier\t" BUILTIN_SCREEN_NAME "\n" \
+ "\tDevice\t" BUILTIN_DEVICE_NAME "\n" \
+ "\tDefaultDepth\t24\n" \
+ "EndSection\n\n"
+
#define BUILTIN_LAYOUT_SECTION_PRE \
"Section \"ServerLayout\"\n" \
"\tIdentifier\t\"Builtin Default Layout\"\n"
@@ -159,7 +166,10 @@ xf86AutoConfig(void)
for (p = deviceList; *p; p++) {
snprintf(buf, sizeof(buf), BUILTIN_DEVICE_SECTION, *p, 0, *p);
AppendToConfig(buf);
- snprintf(buf, sizeof(buf), BUILTIN_SCREEN_SECTION, *p, 0, *p, 0);
+ if( strcmp(*p, "fglrx") == 0 || strcmp(*p, "nvidia") == 0)
+ snprintf(buf, sizeof(buf), BUILTIN_SCREEN_SECTION_PROPRIETARY, *p, 0, *p, 0);
+ else
+ snprintf(buf, sizeof(buf), BUILTIN_SCREEN_SECTION, *p, 0, *p, 0);
AppendToConfig(buf);
}
diff --git a/hw/xfree86/common/xf86pciBus.c b/hw/xfree86/common/xf86pciBus.c
index 930ed83..a6aa4f4 100644
--- a/hw/xfree86/common/xf86pciBus.c
+++ b/hw/xfree86/common/xf86pciBus.c
@@ -1102,7 +1102,10 @@ videoPtrToDriverList(struct pci_device *dev,
case 0x1142: driverList[0] = "apm"; break;
case 0xedd8: driverList[0] = "ark"; break;
case 0x1a03: driverList[0] = "ast"; break;
- case 0x1002: driverList[0] = "ati"; break;
+ case 0x1002:
+ driverList[0] = "fglrx";
+ driverList[1] = "ati";
+ break;
case 0x102c: driverList[0] = "chips"; break;
case 0x1013: driverList[0] = "cirrus"; break;
case 0x3d3d: driverList[0] = "glint"; break;
@@ -1119,20 +1122,21 @@ videoPtrToDriverList(struct pci_device *dev,
case 0x102b: driverList[0] = "mga"; break;
case 0x10c8: driverList[0] = "neomagic"; break;
case 0x10de: case 0x12d2:
+ driverList[0] = "nvidia";
switch (dev->device_id) {
/* NV1 */
case 0x0008:
case 0x0009:
- driverList[0] = "vesa";
+ driverList[1] = "vesa";
break;
/* NV3 */
case 0x0018:
case 0x0019:
- driverList[0] = "nv";
+ driverList[1] = "nv";
break;
default:
- driverList[0] = "nouveau";
- driverList[1] = "nv";
+ driverList[1] = "nouveau";
+ driverList[2] = "nv";
break;
}
break;
--
1.7.2

View File

@ -0,0 +1,12 @@
diff -Naur xorg-server-1.11.0-old/hw/xfree86/common/xf86pciBus.c xorg-server-1.11.0-new/hw/xfree86/common/xf86pciBus.c
--- xorg-server-1.11.0-old/hw/xfree86/common/xf86pciBus.c 2011-08-27 09:46:27.000000000 -0700
+++ xorg-server-1.11.0-new/hw/xfree86/common/xf86pciBus.c 2011-08-27 09:47:09.000000000 -0700
@@ -1123,7 +1123,7 @@
break;
case 0x102b: driverList[0] = "mga"; break;
case 0x10c8: driverList[0] = "neomagic"; break;
- case 0x10de: case 0x12d2: driverList[0] = "nv"; break;
+ case 0x10de: case 0x12d2: driverList[0] = "nouveau"; break;
case 0x1106: driverList[0] = "openchrome"; break;
case 0x1b36: driverList[0] = "qxl"; break;
case 0x1163: driverList[0] = "rendition"; break;

View File

@ -0,0 +1,12 @@
diff -Naur xorg-server-1.11.0-old/hw/xfree86/common/xf86pciBus.c xorg-server-1.11.0-new/hw/xfree86/common/xf86pciBus.c
--- xorg-server-1.11.0-old/hw/xfree86/common/xf86pciBus.c 2011-08-27 09:47:09.000000000 -0700
+++ xorg-server-1.11.0-new/hw/xfree86/common/xf86pciBus.c 2011-08-27 09:47:33.000000000 -0700
@@ -1107,7 +1107,7 @@
case 0x1142: driverList[0] = "apm"; break;
case 0xedd8: driverList[0] = "ark"; break;
case 0x1a03: driverList[0] = "ast"; break;
- case 0x1002: driverList[0] = "ati"; break;
+ case 0x1002: driverList[0] = "radeon"; break;
case 0x102c: driverList[0] = "chips"; break;
case 0x1013: driverList[0] = "cirrus"; break;
case 0x3d3d: driverList[0] = "glint"; break;

View File

@ -72,6 +72,8 @@ if [ "$RUNLEVEL" = openelec ]; then
chown root:root /tmp/.ICE-unix
if [ "${xorg_driver}" = "nvidia" ]; then
export __GL_SHADER_DISK_CACHE=1
export __GL_SHADER_DISK_CACHE_PATH="/tmp/GLCache"
ln -sf /usr/lib/libGL_nvidia.so.1 /var/lib/libGL.so
ln -sf /usr/lib/xorg/modules/extensions/libglx_nvidia.so /var/lib/libglx.so
XORG_ARGS="$XORG_ARGS -ignoreABI"