Hello community,
here is the log from the commit of package xorg-x11-driver-video for openSUSE:Factory
checked in at Wed Aug 5 00:53:30 CEST 2009.
--------
--- xorg-x11-driver-video/xorg-x11-driver-video.changes 2009-07-30 16:46:30.000000000 +0200
+++ xorg-x11-driver-video/xorg-x11-driver-video.changes 2009-08-04 23:02:03.000000000 +0200
@@ -1,0 +2,12 @@
+Tue Aug 4 23:01:11 CEST 2009 - sndirsch@suse.de
+
+- removed obsolete xf86-video-voodoo-1.2.2.tar.bz2
+
+-------------------------------------------------------------------
+Tue Aug 4 10:43:30 CEST 2009 - eich@suse.de
+
+- Resynced with patches from Intel's Moblin project.
+- Updated patches to apply cleanly again.
+- Resynced with patches from Moblin:Base
+
+-------------------------------------------------------------------
@@ -42,0 +55,5 @@
+
+-------------------------------------------------------------------
+Mon Jul 27 11:49:53 EDT 2009 - davidr@novell.com
+
+- Fix RANDR transfomations. (bnc#524304)
calling whatdependson for head-i586
Old:
----
biosdumper.patch
regdumper.patch
New:
----
moblin-2009Q2-rc2-incremental.patch
moblin-dump-tools.patch
moblin-reset-pos-for-rotate-fb.patch
moblin-uxa-Fix-segfault-on-source-only-picture-usage.patch
xf86-video-intel-bnc524304.diff
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ xorg-x11-driver-video.spec ++++++
--- /var/tmp/diff_new_pack.LMzB6c/_old 2009-08-05 00:52:28.000000000 +0200
+++ /var/tmp/diff_new_pack.LMzB6c/_new 2009-08-05 00:52:28.000000000 +0200
@@ -23,7 +23,7 @@
BuildRequires: Mesa-devel libdrm-devel pkgconfig xorg-x11-proto-devel xorg-x11-server-sdk
Url: http://xorg.freedesktop.org/
Version: 7.4
-Release: 73
+Release: 74
License: MIT License (or similar)
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Group: System/X11/Servers/XF86_4
@@ -98,10 +98,16 @@
Patch71: xf86-video-fbdev.diff
Patch103: xf86-video-ati-6.7.197-r128-xvideo.patch
Patch104: xf86-video-ati-disable-dri-bug437651-ia64only.diff
-Patch110: regdumper.patch
-Patch111: biosdumper.patch
-Patch113: copy-fb.patch
-Patch115: xf86-video-intel-buildfix.diff
+# Moblin
+Patch110: moblin-dump-tools.patch
+Patch111: moblin-2009Q2-rc2-incremental.patch
+%if %moblin
+Patch112: copy-fb.patch
+%endif
+Patch114: moblin-reset-pos-for-rotate-fb.patch
+Patch115: moblin-uxa-Fix-segfault-on-source-only-picture-usage.patch
+Patch130: xf86-video-intel-buildfix.diff
+Patch131: xf86-video-intel-bnc524304.diff
%description
This package contains X.Org video drivers.
@@ -176,9 +182,12 @@
%patch110 -p1
%patch111 -p1
%if %moblin
-%patch113 -p1
+%patch112 -p1
%endif
-%patch115 -p0
+%patch114 -p1
+%patch115 -p1
+%patch130 -p0
+%patch131 -p1
popd
%build
++++++ copy-fb.patch ++++++
--- /var/tmp/diff_new_pack.LMzB6c/_old 2009-08-05 00:52:28.000000000 +0200
+++ /var/tmp/diff_new_pack.LMzB6c/_new 2009-08-05 00:52:28.000000000 +0200
@@ -4,29 +4,20 @@
Copy initial framebuffer contents when starting with -br.
-diff --git a/src/drmmode_display.c b/src/drmmode_display.c
-index df0f1a2..35dc24c 100644
---- a/src/drmmode_display.c
-+++ b/src/drmmode_display.c
-@@ -29,6 +29,8 @@
- #include "config.h"
- #endif
+Index: xf86-video-intel-2.8.0/src/drmmode_display.c
+===================================================================
+--- xf86-video-intel-2.8.0.orig/src/drmmode_display.c
++++ xf86-video-intel-2.8.0/src/drmmode_display.c
+@@ -31,6 +31,8 @@
+
+ #include
+#include
+
#include "xorgVersion.h"
- #ifdef XF86DRM_MODE
-@@ -145,7 +147,7 @@ drmmode_set_mode_major(xf86CrtcPtr crtc, DisplayModePtr mode,
- unsigned int pitch = pScrn->displayWidth * pI830->cpp;
-
- if (drmmode->fb_id == 0) {
-- ret = drmModeAddFB(drmmode->fd,
-+ ret = drmModeAddFB(drmmode->fd,
- pScrn->virtualX, pScrn->virtualY,
- pScrn->depth, pScrn->bitsPerPixel,
- pitch, pI830->front_buffer->bo->handle,
-@@ -523,6 +525,13 @@ drmmode_output_dpms(xf86OutputPtr output, int mode)
+ #include "i830.h"
+@@ -724,6 +726,13 @@ drmmode_output_dpms(xf86OutputPtr output
drmmode_ptr drmmode = drmmode_output->drmmode;
int i;
drmModePropertyPtr props;
@@ -40,19 +31,20 @@
for (i = 0; i < koutput->count_props; i++) {
props = drmModeGetProperty(drmmode->fd, koutput->props[i]);
-@@ -753,6 +762,8 @@ Bool drmmode_pre_init(ScrnInfoPtr pScrn, int fd, int cpp)
+@@ -1124,6 +1133,8 @@ Bool drmmode_pre_init(ScrnInfoPtr pScrn,
- xf86InitialConfiguration(pScrn, pI830->can_resize);
+ xf86InitialConfiguration(pScrn, TRUE);
+ pScrn->canDoBGNoneRoot = TRUE;
+
return TRUE;
}
-@@ -780,4 +791,97 @@ Bool drmmode_is_rotate_pixmap(ScrnInfoPtr pScrn, pointer pPixData, dri_bo **bo)
- #endif
- }
+@@ -1134,3 +1145,97 @@ drmmode_get_pipe_from_crtc_id(drm_intel_
+ return drm_intel_get_pipe_from_crtc_id (bufmgr, drmmode_crtc->mode_crtc->crtc_id);
+ }
++
+static PixmapPtr
+drmmode_create_pixmap_for_fbcon(ScrnInfoPtr pScrn)
+{
@@ -98,6 +90,7 @@
+ fbcon->width, fbcon->height,
+ fbcon->depth, fbcon->bpp,
+ fbcon->pitch, NULL);
++
+ if (pixmap == NULL) {
+ xf86DrvMsg(pScrn->scrnIndex, X_ERROR,
+ "Couldn't allocate pixmap fbcon contents\n");
@@ -145,30 +138,28 @@
+ (*pScreen->DestroyPixmap)(src);
+ (*pScreen->DestroyPixmap)(dst);
+}
-+
- #endif
-diff --git a/src/i830.h b/src/i830.h
-index cd9c38a..8651169 100644
---- a/src/i830.h
-+++ b/src/i830.h
-@@ -835,6 +835,7 @@ void I830DRI2CloseScreen(ScreenPtr pScreen);
+Index: xf86-video-intel-2.8.0/src/i830.h
+===================================================================
+--- xf86-video-intel-2.8.0.orig/src/i830.h
++++ xf86-video-intel-2.8.0/src/i830.h
+@@ -691,6 +691,7 @@ void I830DRI2CloseScreen(ScreenPtr pScre
extern Bool drmmode_pre_init(ScrnInfoPtr pScrn, int fd, int cpp);
- extern Bool drmmode_is_rotate_pixmap(ScrnInfoPtr pScrn, pointer pPixData,
- dri_bo **bo);
+ extern int drmmode_get_pipe_from_crtc_id(drm_intel_bufmgr *bufmgr, xf86CrtcPtr crtc);
+ extern int drmmode_output_dpms_status(xf86OutputPtr output);
+extern void drmmode_copy_fb(ScrnInfoPtr pScrn);
- #endif
- extern Bool I830AccelInit(ScreenPtr pScreen);
-diff --git a/src/i830_driver.c b/src/i830_driver.c
-index f80ca69..0591db9 100644
---- a/src/i830_driver.c
-+++ b/src/i830_driver.c
-@@ -3725,6 +3725,8 @@ I830EnterVT(int scrnIndex, int flags)
+ extern Bool i830_crtc_on(xf86CrtcPtr crtc);
+ extern int i830_crtc_to_pipe(xf86CrtcPtr crtc);
+Index: xf86-video-intel-2.8.0/src/i830_driver.c
+===================================================================
+--- xf86-video-intel-2.8.0.orig/src/i830_driver.c
++++ xf86-video-intel-2.8.0/src/i830_driver.c
+@@ -3059,6 +3059,8 @@ I830EnterVT(int scrnIndex, int flags)
/* Clear the framebuffer */
memset(pI830->FbBase + pScrn->fbOffset, 0,
pScrn->virtualY * pScrn->displayWidth * pI830->cpp);
+ } else {
-+ drmmode_copy_fb(pScrn);
++ drmmode_copy_fb(pScrn);
}
if (!xf86SetDesiredModes (pScrn))
++++++ moblin-2009Q2-rc2-incremental.patch ++++++
Index: xf86-video-intel-2.8.0/man/intel.man
===================================================================
--- xf86-video-intel-2.8.0.orig/man/intel.man
+++ xf86-video-intel-2.8.0/man/intel.man
@@ -97,6 +97,16 @@ the framerate of applications that rende
.IP
Default: enabled.
.TP
+.BI "Option \*qSwapbuffersWait\*q \*q" boolean \*q
+This option controls the behavior of glXSwapBuffers and glXCopySubBufferMESA
+calls by GL applications. If enabled, the calls will avoid tearing by making
+sure the display scanline is outside of the area to be copied before the copy
+occurs. If disabled, no scanline synchronization is performed, meaning tearing
+will likely occur. Note that when enabled, this option can adversely affect
+the framerate of applications that render frames at less than refresh rate.
+.IP
+Default: enabled.
+.TP
.BI "Option \*qDRI\*q \*q" boolean \*q
Disable or enable DRI support.
.IP
++++++ moblin-dump-tools.patch ++++++
Index: xf86-video-intel-2.8.0/src/bios_reader/Makefile.am
===================================================================
--- xf86-video-intel-2.8.0.orig/src/bios_reader/Makefile.am
+++ xf86-video-intel-2.8.0/src/bios_reader/Makefile.am
@@ -1,7 +1,7 @@
AM_CFLAGS = @WARN_CFLAGS@ @XORG_CFLAGS@ @PCIACCESS_CFLAGS@ \
-DREG_DUMPER
-noinst_PROGRAMS = bios_reader $(BIOS_DUMPER) $(SWF_DUMPER)
+bin_PROGRAMS = bios_reader $(BIOS_DUMPER) $(SWF_DUMPER)
BIOS_DUMPER = bios_dumper
Index: xf86-video-intel-2.8.0/src/reg_dumper/Makefile.am
===================================================================
--- xf86-video-intel-2.8.0.orig/src/reg_dumper/Makefile.am
+++ xf86-video-intel-2.8.0/src/reg_dumper/Makefile.am
@@ -1,4 +1,4 @@
-noinst_PROGRAMS = intel_reg_dumper \
+bin_PROGRAMS = intel_reg_dumper \
intel_gtt \
intel_idle \
intel_stepping \
++++++ moblin-reset-pos-for-rotate-fb.patch ++++++
Index: xf86-video-intel-2.8.0/src/drmmode_display.c
===================================================================
--- xf86-video-intel-2.8.0.orig/src/drmmode_display.c
+++ xf86-video-intel-2.8.0/src/drmmode_display.c
@@ -222,8 +222,11 @@ drmmode_set_mode_major(xf86CrtcPtr crtc,
fb_id = drmmode->fb_id;
- if (drmmode_crtc->rotate_fb_id)
+ if (drmmode_crtc->rotate_fb_id) {
fb_id = drmmode_crtc->rotate_fb_id;
+ x = 0;
+ y = 0;
+ }
ret = drmModeSetCrtc(drmmode->fd, drmmode_crtc->mode_crtc->crtc_id,
fb_id, x, y, output_ids, output_count, &kmode);
if (ret)
++++++ moblin-uxa-Fix-segfault-on-source-only-picture-usage.patch ++++++
From 1e4784bf26e3c154f5673f7b5add3ef7af3b1474 Mon Sep 17 00:00:00 2001
From: Eric Anholt
Date: Tue, 30 Jun 2009 19:52:36 -0700
Subject: uxa: Fix segfault on source-only picture usage with FallbackDebug.
Bug #22107.
---
uxa/uxa-render.c | 5 +++++
1 files changed, 5 insertions(+), 0 deletions(-)
Index: xf86-video-intel-2.8.0/uxa/uxa-render.c
===================================================================
--- xf86-video-intel-2.8.0.orig/uxa/uxa-render.c
+++ xf86-video-intel-2.8.0/uxa/uxa-render.c
@@ -49,6 +49,11 @@ static void uxa_composite_fallback_pict_
return;
}
+ if (pict->pDrawable == NULL) {
+ snprintf(string, n, "source-only");
+ return;
+ }
+
switch (pict->format)
{
case PICT_a8r8g8b8:
++++++ xf86-video-ati-bug474071-fix2.diff ++++++
--- /var/tmp/diff_new_pack.LMzB6c/_old 2009-08-05 00:52:29.000000000 +0200
+++ /var/tmp/diff_new_pack.LMzB6c/_new 2009-08-05 00:52:29.000000000 +0200
@@ -1,6 +1,8 @@
---- xorg-x11-driver-video-7.4/xf86-video-ati-6.9.0/src/radeon_driver.c.orig 2009-02-23 16:22:50.955408060 +0100
-+++ xorg-x11-driver-video-7.4/xf86-video-ati-6.9.0/src/radeon_driver.c 2009-02-23 17:53:02.971877917 +0100
-@@ -208,6 +208,7 @@
+Index: xorg-x11-driver-video-7.4/xf86-video-ati-6.12.2/src/radeon_driver.c
+===================================================================
+--- xorg-x11-driver-video-7.4/xf86-video-ati-6.12.2.orig/src/radeon_driver.c
++++ xorg-x11-driver-video-7.4/xf86-video-ati-6.12.2/src/radeon_driver.c
+@@ -213,6 +213,7 @@ struct RADEONInt10Save {
uint32_t MEM_CNTL;
uint32_t MEMSIZE;
uint32_t MPP_TB_CONFIG;
@@ -8,7 +10,7 @@
};
static Bool RADEONMapMMIO(ScrnInfoPtr pScrn);
-@@ -263,14 +264,17 @@
+@@ -268,14 +269,17 @@ RADEONPreInt10Save(ScrnInfoPtr pScrn, vo
RADEONInfoPtr info = RADEONPTR(pScrn);
unsigned char *RADEONMMIO = info->MMIO;
uint32_t CardTmp;
@@ -28,7 +30,7 @@
/*
* Zap MEM_CNTL and set MPP_TB_CONFIG<31:24> to 4
*/
-@@ -332,6 +336,14 @@
+@@ -337,6 +341,14 @@ RADEONPostInt10Check(ScrnInfoPtr pScrn,
CardTmp |= (pSave->MPP_TB_CONFIG & 0xff000000u);
OUTREG(RADEON_MPP_TB_CONFIG, CardTmp);
}
@@ -43,7 +45,7 @@
}
/* Allocate our private RADEONInfoRec */
-@@ -2731,7 +2743,7 @@
+@@ -2852,7 +2864,7 @@ Bool RADEONPreInit(ScrnInfoPtr pScrn, in
goto fail1;
}
++++++ xf86-video-ati-ia64_screen_blank.diff ++++++
--- /var/tmp/diff_new_pack.LMzB6c/_old 2009-08-05 00:52:29.000000000 +0200
+++ /var/tmp/diff_new_pack.LMzB6c/_new 2009-08-05 00:52:29.000000000 +0200
@@ -1,6 +1,8 @@
---- xorg-x11-driver-video-7.4/xf86-video-ati-6.9.0/src/radeon_driver.c.orig1 2009-02-24 14:28:57.000000000 +0100
-+++ xorg-x11-driver-video-7.4/xf86-video-ati-6.9.0/src/radeon_driver.c 2009-02-24 16:52:37.000000000 +0100
-@@ -209,6 +209,7 @@ struct RADEONInt10Save {
+Index: xorg-x11-driver-video-7.4/xf86-video-ati-6.12.2/src/radeon_driver.c
+===================================================================
+--- xorg-x11-driver-video-7.4/xf86-video-ati-6.12.2.orig/src/radeon_driver.c
++++ xorg-x11-driver-video-7.4/xf86-video-ati-6.12.2/src/radeon_driver.c
+@@ -214,6 +214,7 @@ struct RADEONInt10Save {
uint32_t MEMSIZE;
uint32_t MPP_TB_CONFIG;
unsigned char MISC_OUT;
@@ -8,7 +10,7 @@
};
static Bool RADEONMapMMIO(ScrnInfoPtr pScrn);
-@@ -258,13 +259,67 @@ RADEONEntPtr RADEONEntPriv(ScrnInfoPtr p
+@@ -263,13 +264,67 @@ RADEONEntPtr RADEONEntPriv(ScrnInfoPtr p
return pPriv->ptr;
}
@@ -77,7 +79,7 @@
if (!IS_AVIVO_VARIANT) {
OUTREG(0,RADEON_MEM_CNTL);
-@@ -272,8 +327,9 @@ RADEONPreInt10Save(ScrnInfoPtr pScrn, vo
+@@ -277,8 +332,9 @@ RADEONPreInt10Save(ScrnInfoPtr pScrn, vo
SaveStruct.MEM_CNTL = INREG(RADEON_MEM_CNTL);
SaveStruct.MEMSIZE = INREG(RADEON_CONFIG_MEMSIZE);
SaveStruct.MPP_TB_CONFIG = INREG(RADEON_MPP_TB_CONFIG);
@@ -88,7 +90,7 @@
#endif
/*
* Zap MEM_CNTL and set MPP_TB_CONFIG<31:24> to 4
-@@ -337,12 +393,7 @@ RADEONPostInt10Check(ScrnInfoPtr pScrn,
+@@ -342,12 +398,7 @@ RADEONPostInt10Check(ScrnInfoPtr pScrn,
OUTREG(RADEON_MPP_TB_CONFIG, CardTmp);
}
#if !defined(__powerpc__) && !defined(__sparc__)
++++++ xf86-video-ati.diff ++++++
--- /var/tmp/diff_new_pack.LMzB6c/_old 2009-08-05 00:52:29.000000000 +0200
+++ /var/tmp/diff_new_pack.LMzB6c/_new 2009-08-05 00:52:29.000000000 +0200
@@ -4,9 +4,9 @@
Index: src/AtomBios/includes/CD_Structs.h
===================================================================
---- src/AtomBios/includes/CD_Structs.h 2008-11-14 17:09:29.000000000 +0100
-+++ src/AtomBios/includes/CD_Structs.h 2008-11-14 17:12:35.000000000 +0100
-@@ -397,6 +397,10 @@ typedef struct _DEVICE_DATA {
+--- src/AtomBios/includes/CD_Structs.h.orig
++++ src/AtomBios/includes/CD_Structs.h
+@@ -419,6 +419,10 @@ typedef struct _DEVICE_DATA {
#endif
@@ -17,7 +17,7 @@
struct _PARSER_TEMP_DATA;
typedef UINT32 WORKSPACE_POINTER;
-@@ -457,8 +461,4 @@ typedef struct _INDIRECT_IO_PARSER_COMMA
+@@ -479,8 +483,4 @@ typedef struct _INDIRECT_IO_PARSER_COMMA
UINT8 csize;
} INDIRECT_IO_PARSER_COMMANDS;
++++++ xf86-video-fbdev.diff ++++++
--- /var/tmp/diff_new_pack.LMzB6c/_old 2009-08-05 00:52:29.000000000 +0200
+++ /var/tmp/diff_new_pack.LMzB6c/_new 2009-08-05 00:52:29.000000000 +0200
@@ -1,6 +1,8 @@
---- src/fbdev.c.orig 2009-02-28 11:57:23.053111821 +0100
-+++ src/fbdev.c 2009-02-28 11:58:16.743503646 +0100
-@@ -417,7 +417,7 @@ FBDevProbe(DriverPtr drv, int flags)
+Index: src/fbdev.c
+===================================================================
+--- src/fbdev.c.orig
++++ src/fbdev.c
+@@ -354,7 +354,7 @@ FBDevProbe(DriverPtr drv, int flags)
entity = xf86ClaimIsaSlot(drv, 0,
devSections[i], TRUE);
@@ -8,4 +10,4 @@
+ pScrn = (pointer) xf86ConfigIsaEntity(pScrn,0,entity,
NULL,RES_SHARED_VGA,
NULL,NULL,NULL,NULL);
- } else {
+ #endif
++++++ xf86-video-intel-G33-1mb.diff ++++++
--- /var/tmp/diff_new_pack.LMzB6c/_old 2009-08-05 00:52:30.000000000 +0200
+++ /var/tmp/diff_new_pack.LMzB6c/_new 2009-08-05 00:52:30.000000000 +0200
@@ -1,8 +1,8 @@
-diff --git a/src/i830_driver.c b/src/i830_driver.c
-index b28b4de..c824e85 100644
---- a/src/i830_driver.c
-+++ b/src/i830_driver.c
-@@ -514,6 +514,8 @@ I830DetectMemory(ScrnInfoPtr pScrn)
+Index: xf86-video-intel-2.8.0/src/i830_driver.c
+===================================================================
+--- xf86-video-intel-2.8.0.orig/src/i830_driver.c
++++ xf86-video-intel-2.8.0/src/i830_driver.c
+@@ -334,6 +334,8 @@ I830DetectMemory(ScrnInfoPtr pScrn)
if (IS_I85X(pI830) || IS_I865G(pI830) || IS_I9XX(pI830)) {
switch (gmch_ctrl & I855_GMCH_GMS_MASK) {
case I855_GMCH_GMS_STOLEN_1M:
++++++ xf86-video-intel-NoFBC-945GME.diff ++++++
--- /var/tmp/diff_new_pack.LMzB6c/_old 2009-08-05 00:52:30.000000000 +0200
+++ /var/tmp/diff_new_pack.LMzB6c/_new 2009-08-05 00:52:30.000000000 +0200
@@ -1,8 +1,8 @@
-diff --git a/src/i830.h b/src/i830.h
-index 3381c3c..808739f 100644
---- a/src/i830.h
-+++ b/src/i830.h
-@@ -978,6 +978,12 @@ static inline int i830_fb_compression_supported(I830Ptr pI830)
+Index: xf86-video-intel-2.8.0/src/i830.h
+===================================================================
+--- xf86-video-intel-2.8.0.orig/src/i830.h
++++ xf86-video-intel-2.8.0/src/i830.h
+@@ -854,6 +854,12 @@ static inline int i830_fb_compression_su
*/
if (IS_I965GM(pI830))
return FALSE;
++++++ xf86-video-intel-bfo17988.diff ++++++
--- /var/tmp/diff_new_pack.LMzB6c/_old 2009-08-05 00:52:30.000000000 +0200
+++ /var/tmp/diff_new_pack.LMzB6c/_new 2009-08-05 00:52:30.000000000 +0200
@@ -1,7 +1,8 @@
-diff -urNap xf86-video-intel-2.5.0/src/i830_display.c xf86-video-intel-2.5.0_orig/src/i830_display.c
---- xf86-video-intel-2.5.0/src/i830_display.c 2009-02-23 13:06:30.000000000 +0800
-+++ xf86-video-intel-2.5.0_orig/src/i830_display.c 2009-02-23 13:04:37.000000000 +0800
-@@ -1479,7 +1479,7 @@ i830_crtc_mode_set(xf86CrtcPtr crtc, Dis
+Index: xf86-video-intel-2.8.0/src/i830_display.c
+===================================================================
+--- xf86-video-intel-2.8.0.orig/src/i830_display.c
++++ xf86-video-intel-2.8.0/src/i830_display.c
+@@ -1820,7 +1820,7 @@ i830_crtc_mode_set(xf86CrtcPtr crtc, Dis
/* Wait for the clocks to stabilize. */
usleep(150);
++++++ xf86-video-intel-bnc524304.diff ++++++
From 8084f76d86f048ca5b82da089fffa9665dbbcdd5 Mon Sep 17 00:00:00 2001
From: Keith Packard
Date: Sun, 26 Jul 2009 20:14:05 +0000
Subject: Allow DRM mode setting to include transformations
This removes the explicit transform disabling code in drm_set_mode_major.
Without a fixed X server, transforms will still be broken, but even a fixed
X server can't work around this driver bug.
Signed-off-by: Keith Packard
---
Index: xf86-video-intel-2.8.0/src/drmmode_display.c
===================================================================
--- xf86-video-intel-2.8.0.orig/src/drmmode_display.c
+++ xf86-video-intel-2.8.0/src/drmmode_display.c
@@ -187,9 +187,6 @@ drmmode_set_mode_major(xf86CrtcPtr crtc,
crtc->x = x;
crtc->y = y;
crtc->rotation = rotation;
-#if XORG_VERSION_CURRENT >= XORG_VERSION_NUMERIC(1,5,99,0,0)
- crtc->transformPresent = FALSE;
-#endif
output_ids = xcalloc(sizeof(uint32_t), xf86_config->num_output);
if (!output_ids) {
++++++ xf86-video-intel-buildfix.diff ++++++
--- /var/tmp/diff_new_pack.LMzB6c/_old 2009-08-05 00:52:30.000000000 +0200
+++ /var/tmp/diff_new_pack.LMzB6c/_new 2009-08-05 00:52:30.000000000 +0200
@@ -1,6 +1,7 @@
-diff -u -r -p ../xf86-video-intel-2.7.99.901.orig//src/xvmc/i965_xvmc.c ./src/xvmc/i965_xvmc.c
---- ../xf86-video-intel-2.7.99.901.orig//src/xvmc/i965_xvmc.c 2009-06-11 15:02:09.000000000 +0000
-+++ ./src/xvmc/i965_xvmc.c 2009-06-11 15:03:30.000000000 +0000
+Index: src/xvmc/i965_xvmc.c
+===================================================================
+--- src/xvmc/i965_xvmc.c.orig
++++ src/xvmc/i965_xvmc.c
@@ -184,6 +184,7 @@ static int free_object(struct media_stat
for (i = 0; i < MAX_SURFACE_NUM; i++)
FREE_ONE_BO(s->binding_table.surface_states[i].bo);
@@ -9,9 +10,10 @@
}
static int alloc_object(struct media_state *s)
-diff -u -r -p ../xf86-video-intel-2.7.99.901.orig//src/xvmc/xvmc_vld.c ./src/xvmc/xvmc_vld.c
---- ../xf86-video-intel-2.7.99.901.orig//src/xvmc/xvmc_vld.c 2009-06-11 15:02:09.000000000 +0000
-+++ ./src/xvmc/xvmc_vld.c 2009-06-11 15:04:16.000000000 +0000
+Index: src/xvmc/xvmc_vld.c
+===================================================================
+--- src/xvmc/xvmc_vld.c.orig
++++ src/xvmc/xvmc_vld.c
@@ -235,6 +235,7 @@ static int free_object(struct media_stat
FREE_ONE_BO(s->mb_data.bo);
FREE_ONE_BO(s->cs_object.bo);
++++++ xf86-video-mga-g200se-swcursor.diff ++++++
--- /var/tmp/diff_new_pack.LMzB6c/_old 2009-08-05 00:52:30.000000000 +0200
+++ /var/tmp/diff_new_pack.LMzB6c/_new 2009-08-05 00:52:30.000000000 +0200
@@ -1,6 +1,8 @@
---- src/mga_driver.c.orig 2008-10-02 11:03:23.000000000 +0200
-+++ src/mga_driver.c 2008-10-02 11:35:24.000000000 +0200
-@@ -1840,7 +1840,16 @@ MGAPreInit(ScrnInfoPtr pScrn, int flags)
+Index: src/mga_driver.c
+===================================================================
+--- src/mga_driver.c.orig
++++ src/mga_driver.c
+@@ -1648,7 +1648,16 @@ MGAPreInit(ScrnInfoPtr pScrn, int flags)
if (!xf86IsPrimInitDone(pScrn->entityList[0])) { /* Is it the first initialisation? */
/* First CRTC */
pMga->SecondCrtc = FALSE;
@@ -18,7 +20,7 @@
pMgaEnt->pScrn_1 = pScrn;
} else if (pMga->DualHeadEnabled) {
/* Second CRTC */
-@@ -1871,7 +1880,16 @@ MGAPreInit(ScrnInfoPtr pScrn, int flags)
+@@ -1679,7 +1688,16 @@ MGAPreInit(ScrnInfoPtr pScrn, int flags)
#endif
} else { /* single-head mode */
pMga->SecondCrtc = FALSE;
++++++ xf86-video-mga.randr12.diff ++++++
--- /var/tmp/diff_new_pack.LMzB6c/_old 2009-08-05 00:52:30.000000000 +0200
+++ /var/tmp/diff_new_pack.LMzB6c/_new 2009-08-05 00:52:30.000000000 +0200
@@ -1,7 +1,8 @@
-diff -u -r xf86-video-mga.randr12.orig/configure.ac xf86-video-mga.randr12/configure.ac
---- xf86-video-mga.randr12.orig/configure.ac 2007-03-12 12:28:08.289874000 +0100
-+++ xf86-video-mga.randr12/configure.ac 2007-03-12 16:06:50.062431000 +0100
-@@ -147,7 +147,7 @@
+Index: xf86-video-mga-1.9.100/configure.ac
+===================================================================
+--- xf86-video-mga-1.9.100.orig/configure.ac
++++ xf86-video-mga-1.9.100/configure.ac
+@@ -159,7 +159,7 @@ AC_SUBST([DRI_CFLAGS])
AC_SUBST([XORG_CFLAGS])
AC_SUBST([moduledir])
@@ -10,9 +11,10 @@
AC_SUBST([DRIVER_NAME])
XORG_MANPAGE_SECTIONS
-diff -u -r xf86-video-mga.randr12.orig/src/Makefile.am xf86-video-mga.randr12/src/Makefile.am
---- xf86-video-mga.randr12.orig/src/Makefile.am 2007-03-12 12:28:08.157002000 +0100
-+++ xf86-video-mga.randr12/src/Makefile.am 2007-03-12 16:08:11.138271000 +0100
+Index: xf86-video-mga-1.9.100/src/Makefile.am
+===================================================================
+--- xf86-video-mga-1.9.100.orig/src/Makefile.am
++++ xf86-video-mga-1.9.100/src/Makefile.am
@@ -24,12 +24,12 @@
# _ladir passes a dummy rpath to libtool so the thing will actually link
# TODO: -nostdlib/-Bstatic/-lgcc platform magic, not installing the .a, etc.
@@ -31,8 +33,8 @@
mga_arc.c \
mga_bios.c \
mga_common.h \
-@@ -54,18 +54,18 @@
- mga_video.c
+@@ -57,18 +57,18 @@ mga_drv_la_SOURCES = \
+ mga_g_output.c
if DRI
-mga_drv_la_SOURCES += \
@@ -53,10 +55,11 @@
+mgarandr12_drv_la_SOURCES += \
mga_storm.c
endif
-diff -u -r xf86-video-mga.randr12.orig/src/mga.h xf86-video-mga.randr12/src/mga.h
---- xf86-video-mga.randr12.orig/src/mga.h 2007-03-12 12:28:08.011159000 +0100
-+++ xf86-video-mga.randr12/src/mga.h 2007-03-12 17:11:22.884036000 +0100
-@@ -145,10 +145,10 @@
+Index: xf86-video-mga-1.9.100/src/mga.h
+===================================================================
+--- xf86-video-mga-1.9.100.orig/src/mga.h
++++ xf86-video-mga-1.9.100/src/mga.h
+@@ -174,10 +174,10 @@ void MGAdbg_outreg32(ScrnInfoPtr, int,in
#define PORT_OFFSET (0x1F00 - 0x300)
#define MGA_VERSION 4000
@@ -69,4 +72,4 @@
+#define MGA_DRIVER_NAME "mgarandr12"
typedef struct {
- unsigned char ExtVga[6];
+ int brightness;
++++++ xf86-video-nsc-noasm.diff ++++++
--- /var/tmp/diff_new_pack.LMzB6c/_old 2009-08-05 00:52:30.000000000 +0200
+++ /var/tmp/diff_new_pack.LMzB6c/_new 2009-08-05 00:52:30.000000000 +0200
@@ -1,7 +1,9 @@
---- src/Makefile.am.orig 2009-02-28 11:45:54.310414039 +0100
-+++ src/Makefile.am 2009-02-28 11:46:11.547182475 +0100
-@@ -49,11 +49,6 @@
- nsc.h \
+Index: src/Makefile.am
+===================================================================
+--- src/Makefile.am.orig
++++ src/Makefile.am
+@@ -50,11 +50,6 @@ nsc_drv_la_SOURCES = \
+ nsc_pcirename.h \
panel.c
-if I386ARCH
++++++ xf86-video-nsc.diff ++++++
--- /var/tmp/diff_new_pack.LMzB6c/_old 2009-08-05 00:52:30.000000000 +0200
+++ /var/tmp/diff_new_pack.LMzB6c/_new 2009-08-05 00:52:30.000000000 +0200
@@ -8,11 +8,11 @@
but would fail at runtime due to unresolved symbols. This uses the same
conversion used in other drivers, by using a local "pcirename.h" file.
-diff --git a/configure.ac b/configure.ac
-index 4b724dd..69aadb9 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -60,6 +60,11 @@ PKG_CHECK_MODULES(XORG, [xorg-server >= 1.0.99.901 xproto fontsproto $REQUIRED_M
+Index: xf86-video-nsc-2.8.3/configure.ac
+===================================================================
+--- xf86-video-nsc-2.8.3.orig/configure.ac
++++ xf86-video-nsc-2.8.3/configure.ac
+@@ -60,6 +60,11 @@ PKG_CHECK_MODULES(XORG, [xorg-server >=
sdkdir=$(pkg-config --variable=sdkdir xorg-server)
# Checks for libraries.
@@ -24,10 +24,10 @@
# Checks for header files.
AC_HEADER_STDC
-diff --git a/src/Makefile.am b/src/Makefile.am
-index 97e1010..2510f25 100644
---- a/src/Makefile.am
-+++ b/src/Makefile.am
+Index: xf86-video-nsc-2.8.3/src/Makefile.am
+===================================================================
+--- xf86-video-nsc-2.8.3.orig/src/Makefile.am
++++ xf86-video-nsc-2.8.3/src/Makefile.am
@@ -47,6 +47,7 @@ nsc_drv_la_SOURCES = \
nsc_gx2_shadow.c \
nsc_gx2_video.c \
@@ -36,10 +36,10 @@
panel.c
if I386ARCH
-diff --git a/src/nsc.h b/src/nsc.h
-index 073b06f..4ede076 100644
---- a/src/nsc.h
-+++ b/src/nsc.h
+Index: xf86-video-nsc-2.8.3/src/nsc.h
+===================================================================
+--- xf86-video-nsc-2.8.3.orig/src/nsc.h
++++ xf86-video-nsc-2.8.3/src/nsc.h
@@ -145,6 +145,8 @@
#include
#include
@@ -49,10 +49,10 @@
#include "xaa.h"
#include "xf86Cursor.h"
#if !defined(STB_X)
-diff --git a/src/nsc_driver.c b/src/nsc_driver.c
-index f5177ed..0d96bde 100644
---- a/src/nsc_driver.c
-+++ b/src/nsc_driver.c
+Index: xf86-video-nsc-2.8.3/src/nsc_driver.c
+===================================================================
+--- xf86-video-nsc-2.8.3.orig/src/nsc_driver.c
++++ xf86-video-nsc-2.8.3/src/nsc_driver.c
@@ -517,7 +517,9 @@ NscProbe(DriverPtr drv, int flags)
}
GeodeDebug(("NscProbe: Before MatchPciInstances!\n"));
@@ -73,11 +73,10 @@
if (usedChips)
xfree(usedChips);
-diff --git a/src/nsc_pcirename.h b/src/nsc_pcirename.h
-new file mode 100644
-index 0000000..e1477ee
+Index: xf86-video-nsc-2.8.3/src/nsc_pcirename.h
+===================================================================
--- /dev/null
-+++ b/src/nsc_pcirename.h
++++ xf86-video-nsc-2.8.3/src/nsc_pcirename.h
@@ -0,0 +1,122 @@
+/*
+ * Copyright 2007 George Sapountzis
++++++ xf86-video-rendition.diff ++++++
--- /var/tmp/diff_new_pack.LMzB6c/_old 2009-08-05 00:52:31.000000000 +0200
+++ /var/tmp/diff_new_pack.LMzB6c/_new 2009-08-05 00:52:31.000000000 +0200
@@ -1,8 +1,10 @@
---- src/vloaduc.c.orig 2006-07-29 10:20:07.000000000 +0200
-+++ src/vloaduc.c 2006-07-29 10:21:19.000000000 +0200
-@@ -18,6 +18,8 @@
- #include
- #include
+Index: src/vloaduc.c
+===================================================================
+--- src/vloaduc.c.orig
++++ src/vloaduc.c
+@@ -24,6 +24,8 @@
+ #include
+ #endif
+#include
+
++++++ xf86-video-tdfx.diff ++++++
--- /var/tmp/diff_new_pack.LMzB6c/_old 2009-08-05 00:52:31.000000000 +0200
+++ /var/tmp/diff_new_pack.LMzB6c/_new 2009-08-05 00:52:31.000000000 +0200
@@ -1,6 +1,8 @@
---- src/tdfx_dri.c.orig 2006-07-24 17:54:34.000000000 +0200
-+++ src/tdfx_dri.c 2006-07-24 17:55:42.000000000 +0200
-@@ -345,7 +345,7 @@
+Index: src/tdfx_dri.c
+===================================================================
+--- src/tdfx_dri.c.orig
++++ src/tdfx_dri.c
+@@ -360,7 +360,7 @@ Bool TDFXDRIScreenInit(ScreenPtr pScreen
pDRIInfo->ddxDriverMajorVersion = TDFX_MAJOR_VERSION;
pDRIInfo->ddxDriverMinorVersion = TDFX_MINOR_VERSION;
pDRIInfo->ddxDriverPatchVersion = TDFX_PATCHLEVEL;
++++++ xf86-video-vesa_DefaultRefresh.diff ++++++
--- /var/tmp/diff_new_pack.LMzB6c/_old 2009-08-05 00:52:31.000000000 +0200
+++ /var/tmp/diff_new_pack.LMzB6c/_new 2009-08-05 00:52:31.000000000 +0200
@@ -1,8 +1,8 @@
-diff --git a/src/vesa.c b/src/vesa.c
-index 2e1b2f7..a28e1b6 100644
---- a/src/vesa.c
-+++ b/src/vesa.c
-@@ -745,9 +745,16 @@ VESAPreInit(ScrnInfoPtr pScrn, int flags)
+Index: xf86-video-vesa-2.2.1/src/vesa.c
+===================================================================
+--- xf86-video-vesa-2.2.1.orig/src/vesa.c
++++ xf86-video-vesa-2.2.1/src/vesa.c
+@@ -783,9 +783,16 @@ VESAPreInit(ScrnInfoPtr pScrn, int flags
/* Use shadow by default */
if (xf86ReturnOptValBool(pVesa->Options, OPTION_SHADOW_FB, TRUE))
pVesa->shadowFB = TRUE;
++++++ xf86-video-vmware-10.15.2.diff ++++++
--- /var/tmp/diff_new_pack.LMzB6c/_old 2009-08-05 00:52:31.000000000 +0200
+++ /var/tmp/diff_new_pack.LMzB6c/_new 2009-08-05 00:52:31.000000000 +0200
@@ -1,6 +1,8 @@
---- src/vmware.h.orig 2008-01-19 18:35:13.253024500 +0100
-+++ src/vmware.h 2008-01-19 18:44:08.006444500 +0100
-@@ -93,6 +93,11 @@
+Index: src/vmware.h
+===================================================================
+--- src/vmware.h.orig
++++ src/vmware.h
+@@ -118,6 +118,11 @@ typedef struct {
unsigned int cursorRemoveFromFB;
unsigned int cursorRestoreToFB;
++++++ xf86-video-xgi.diff ++++++
--- /var/tmp/diff_new_pack.LMzB6c/_old 2009-08-05 00:52:31.000000000 +0200
+++ /var/tmp/diff_new_pack.LMzB6c/_new 2009-08-05 00:52:32.000000000 +0200
@@ -1,42 +1,8 @@
-diff -u -r src.orig/xgi_dri.c src/xgi_dri.c
---- src.orig/xgi_dri.c 2007-08-28 05:43:37.656984250 +0200
-+++ src/xgi_dri.c 2007-08-28 05:49:38.055507750 +0200
-@@ -280,7 +280,7 @@
- pDRIInfo->ddxDriverMajorVersion = PACKAGE_VERSION_MAJOR;
- pDRIInfo->ddxDriverMinorVersion = PACKAGE_VERSION_MINOR;
- pDRIInfo->ddxDriverPatchVersion = PACKAGE_VERSION_PATCHLEVEL;
-- pDRIInfo->frameBufferPhysicalAddress = pXGI->FbAddress;
-+ pDRIInfo->frameBufferPhysicalAddress = (pointer) pXGI->FbAddress;
- pDRIInfo->frameBufferSize = pXGI->FbMapSize;
-
- /* ?? */
-diff -u -r src.orig/xgi_driver.c src/xgi_driver.c
---- src.orig/xgi_driver.c 2007-08-28 05:43:36.352902750 +0200
-+++ src/xgi_driver.c 2007-08-28 05:58:32.340898500 +0200
-@@ -2601,7 +2601,7 @@
- (pXGI->PciInfo->ioBase[2] & 0xFFFC)
- #endif
- );
-- pXGI->xgi_HwDevExt.pjIOAddress = (XGIIOADDRESS) (pXGI->RelIO + 0x30);
-+ pXGI->xgi_HwDevExt.pjIOAddress = (PUCHAR) (pXGI->RelIO + 0x30);
- xf86DrvMsg(pScrn->scrnIndex, from, "Relocated IO registers at 0x%lX\n",
- (unsigned long) pXGI->RelIO);
-
-diff -u -r src.orig/xgi_setup.c src/xgi_setup.c
---- src.orig/xgi_setup.c 2007-08-28 05:43:35.844871000 +0200
-+++ src/xgi_setup.c 2007-08-28 05:58:17.707984000 +0200
-@@ -317,7 +317,7 @@
- PDEBUG(ErrorF("pXGI->FbBase = 0x%08lx\n",(ULONG)(pXGI->FbBase))) ;
- PDEBUG(ErrorF("pHwDevInfo->pjVideoMemoryAddress = 0x%08lx\n",(ULONG)(pHwDevInfo->pjVideoMemoryAddress))) ;
- pHwDevInfo->ulVideoMemorySize = pXGI->FbMapSize ;
-- pHwDevInfo->pjIOAddress = pXGI->RelIO + 0x30 ;
-+ pHwDevInfo->pjIOAddress = (PUCHAR) (pXGI->RelIO + 0x30) ;
-
- switch (pXGI->Chipset) {
- case PCI_CHIP_XGIXG40:
---- src/xgi_accel.c.orig 2007-08-28 09:41:18.352222000 +0200
-+++ src/xgi_accel.c 2007-08-28 09:45:34.852252250 +0200
-@@ -82,26 +82,10 @@
+Index: src/xgi_accel.c
+===================================================================
+--- src/xgi_accel.c.orig
++++ src/xgi_accel.c
+@@ -82,26 +82,10 @@ static void Volari_DisableCmdQueue(ScrnI
extern int FbDevExist;
@@ -63,9 +29,24 @@
#ifdef DEBUG
---- src/xgi_driver.c.orig 2008-01-19 20:28:22.000000000 +0000
-+++ src/xgi_driver.c 2008-01-19 20:28:55.000000000 +0000
-@@ -2504,7 +2504,7 @@
+Index: src/xgi_dri.c
+===================================================================
+--- src/xgi_dri.c.orig
++++ src/xgi_dri.c
+@@ -280,7 +280,7 @@ Bool XGIDRIScreenInit(ScreenPtr pScreen)
+ pDRIInfo->ddxDriverMajorVersion = PACKAGE_VERSION_MAJOR;
+ pDRIInfo->ddxDriverMinorVersion = PACKAGE_VERSION_MINOR;
+ pDRIInfo->ddxDriverPatchVersion = PACKAGE_VERSION_PATCHLEVEL;
+- pDRIInfo->frameBufferPhysicalAddress = pXGI->FbAddress;
++ pDRIInfo->frameBufferPhysicalAddress = (pointer) pXGI->FbAddress;
+ pDRIInfo->frameBufferSize = pXGI->FbMapSize;
+
+ /* ?? */
+Index: src/xgi_driver.c
+===================================================================
+--- src/xgi_driver.c.orig
++++ src/xgi_driver.c
+@@ -2504,7 +2504,7 @@ XGIPreInit(ScrnInfoPtr pScrn, int flags)
FbDevExist = FALSE;
if (pXGI->Chipset != PCI_CHIP_XGIXG20) {
@@ -74,3 +55,25 @@
PDEBUG(ErrorF("--- open /dev/fb.... \n"));
ioctl(fd, FBIOGET_FSCREENINFO, &fix);
if (fix.accel == FB_ACCEL_XGI_GLAMOUR) {
+@@ -2601,7 +2601,7 @@ XGIPreInit(ScrnInfoPtr pScrn, int flags)
+ (pXGI->PciInfo->ioBase[2] & 0xFFFC)
+ #endif
+ );
+- pXGI->xgi_HwDevExt.pjIOAddress = (XGIIOADDRESS) (pXGI->RelIO + 0x30);
++ pXGI->xgi_HwDevExt.pjIOAddress = (PUCHAR) (pXGI->RelIO + 0x30);
+ xf86DrvMsg(pScrn->scrnIndex, from, "Relocated IO registers at 0x%lX\n",
+ (unsigned long) pXGI->RelIO);
+
+Index: src/xgi_setup.c
+===================================================================
+--- src/xgi_setup.c.orig
++++ src/xgi_setup.c
+@@ -317,7 +317,7 @@ XGI_InitHwDevInfo(ScrnInfoPtr pScrn)
+ PDEBUG(ErrorF("pXGI->FbBase = 0x%08lx\n",(ULONG)(pXGI->FbBase))) ;
+ PDEBUG(ErrorF("pHwDevInfo->pjVideoMemoryAddress = 0x%08lx\n",(ULONG)(pHwDevInfo->pjVideoMemoryAddress))) ;
+ pHwDevInfo->ulVideoMemorySize = pXGI->FbMapSize ;
+- pHwDevInfo->pjIOAddress = pXGI->RelIO + 0x30 ;
++ pHwDevInfo->pjIOAddress = (PUCHAR) (pXGI->RelIO + 0x30) ;
+
+ switch (pXGI->Chipset) {
+ case PCI_CHIP_XGIXG40:
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org
For additional commands, e-mail: opensuse-commit+help@opensuse.org