mirror of
https://git.FreeBSD.org/ports.git
synced 2025-02-04 11:23:46 +00:00
[1] Fix a crash on startup with i830+ systems due to failure to follow an API
change that occurred. [2] Install the xorg.conf referred to by xorg.conf(5). Installation was disabled during the XF86 name avoidance phase, but could still be of use. [3] Add a section about the Composite extension to xorg.conf. [4] Add MakeDllModules YES to the WITH_DEBUG flag's options. While it won't package correctly, you can't actually debug modules (where crashes almost always happen) without it. [5] Merge fixes from XORG-6_8-branch for i810 driver crashes in on CloseScreen, ringbuffer lockups, and various warnings. [6] Recognize R_ALPHA_SREL32 relocation type in elfloader. PR: [1] ports/75425 [2] ports/73915 [6] ports/73257 Submitted by: [1] Marc Silver, marcs at draenor dot org [2] Frank J. Laszlo, laszlof at vonostingroup dot com [6] Ken Stailey kstailey at yahoo dot com [6] r1.4 of X.Org CVS. Approved by: portmgr
This commit is contained in:
parent
800e73f0c0
commit
08ae21589b
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=125635
@ -7,6 +7,7 @@
|
||||
|
||||
PORTNAME= xorg-server
|
||||
PORTVERSION= 6.8.1
|
||||
PORTREVISION= 1
|
||||
CATEGORIES= x11-servers
|
||||
MASTER_SITES= ${MASTER_SITE_XORG}
|
||||
MASTER_SITE_SUBDIR= X11R6.8.1/tars
|
||||
|
35
x11-servers/xorg-server-snap/files/patch-elfloader.c
Normal file
35
x11-servers/xorg-server-snap/files/patch-elfloader.c
Normal file
@ -0,0 +1,35 @@
|
||||
Index: programs/Xserver/hw/xfree86/loader/elfloader.c
|
||||
===================================================================
|
||||
RCS file: /cvs/xorg/xc/programs/Xserver/hw/xfree86/loader/elfloader.c,v
|
||||
retrieving revision 1.3
|
||||
retrieving revision 1.4
|
||||
diff -u -u -r1.3 -r1.4
|
||||
--- programs/Xserver/hw/xfree86/loader/elfloader.c 30 Oct 2004 20:33:43 -0000 1.3
|
||||
+++ programs/Xserver/hw/xfree86/loader/elfloader.c 9 Nov 2004 15:58:41 -0000 1.4
|
||||
@@ -1,4 +1,4 @@
|
||||
-/* $XdotOrg: xc/programs/Xserver/hw/xfree86/loader/elfloader.c,v 1.3 2004/10/30 20:33:43 alanc Exp $ */
|
||||
+/* $XdotOrg: xc/programs/Xserver/hw/xfree86/loader/elfloader.c,v 1.4 2004/11/09 15:58:41 ajax Exp $ */
|
||||
/* $XFree86: xc/programs/Xserver/hw/xfree86/loader/elfloader.c,v 1.61tsi Exp $ */
|
||||
|
||||
/*
|
||||
@@ -1609,6 +1609,20 @@
|
||||
break;
|
||||
}
|
||||
|
||||
+ case R_ALPHA_SREL32:
|
||||
+ {
|
||||
+ dest32 = (unsigned int *)(secp + rel->r_offset);
|
||||
+ symval += rel->r_addend;
|
||||
+ symval -= (unsigned long) dest32;
|
||||
+ if ((long)symval >= 0x80000000
|
||||
+ || (long)symval < -(long)0x80000000)
|
||||
+ FatalError("R_ALPHA_SREL32 overflow for %s: %lx\n",
|
||||
+ ElfGetSymbolName(elffile, ELF_R_SYM(rel->r_info)),
|
||||
+ symval);
|
||||
+ *dest32 = symval;
|
||||
+ break;
|
||||
+ }
|
||||
+
|
||||
#endif /* alpha */
|
||||
#if defined(__mc68000__)
|
||||
case R_68K_32:
|
437
x11-servers/xorg-server-snap/files/patch-i810-6_8
Normal file
437
x11-servers/xorg-server-snap/files/patch-i810-6_8
Normal file
@ -0,0 +1,437 @@
|
||||
Index: programs/Xserver/hw/xfree86/drivers/i810/common.h
|
||||
===================================================================
|
||||
RCS file: /cvs/xorg/xc/programs/Xserver/hw/xfree86/drivers/i810/common.h,v
|
||||
retrieving revision 1.3
|
||||
retrieving revision 1.3.4.1
|
||||
diff -u -u -r1.3 -r1.3.4.1
|
||||
--- programs/Xserver/hw/xfree86/drivers/i810/common.h 22 Jun 2004 14:28:46 -0000 1.3
|
||||
+++ programs/Xserver/hw/xfree86/drivers/i810/common.h 15 Dec 2004 09:35:23 -0000 1.3.4.1
|
||||
@@ -173,7 +173,7 @@
|
||||
#define BEGIN_LP_RING(n) \
|
||||
unsigned int outring, ringmask; \
|
||||
volatile unsigned char *virt; \
|
||||
- unsigned int needed; \
|
||||
+ int needed; \
|
||||
if ((n) & 1) \
|
||||
ErrorF("BEGIN_LP_RING called with odd argument: %d\n", n); \
|
||||
if ((n) > 2 && (I810_DEBUG&DEBUG_ALWAYS_SYNC)) \
|
||||
@@ -206,7 +206,7 @@
|
||||
#define BEGIN_LP_RING(n) \
|
||||
unsigned int outring, ringmask; \
|
||||
volatile unsigned char *virt; \
|
||||
- unsigned int needed; \
|
||||
+ int needed; \
|
||||
if ((n) & 1) \
|
||||
ErrorF("BEGIN_LP_RING called with odd argument: %d\n", n); \
|
||||
if ((n) > 2 && (I810_DEBUG&DEBUG_ALWAYS_SYNC)) \
|
||||
Index: programs/Xserver/hw/xfree86/drivers/i810/i810.h
|
||||
===================================================================
|
||||
RCS file: /cvs/xorg/xc/programs/Xserver/hw/xfree86/drivers/i810/i810.h,v
|
||||
retrieving revision 1.4
|
||||
retrieving revision 1.4.4.1
|
||||
diff -u -u -r1.4 -r1.4.4.1
|
||||
--- programs/Xserver/hw/xfree86/drivers/i810/i810.h 22 Jun 2004 14:28:46 -0000 1.4
|
||||
+++ programs/Xserver/hw/xfree86/drivers/i810/i810.h 15 Dec 2004 09:35:23 -0000 1.4.4.1
|
||||
@@ -172,7 +172,7 @@
|
||||
unsigned long OverlayPhysical;
|
||||
unsigned long OverlayStart;
|
||||
int colorKey;
|
||||
- int surfaceAllocation[I810_TOTAL_SURFACES];
|
||||
+ unsigned int surfaceAllocation[I810_TOTAL_SURFACES];
|
||||
int numSurfaces;
|
||||
|
||||
DGAModePtr DGAModes;
|
||||
@@ -295,9 +295,10 @@
|
||||
extern void I810Sync(ScrnInfoPtr pScrn);
|
||||
extern unsigned long I810LocalToPhysical(ScrnInfoPtr pScrn,
|
||||
unsigned long local);
|
||||
-extern int I810AllocLow(I810MemRange * result, I810MemRange * pool, int size);
|
||||
+extern int I810AllocLow(I810MemRange * result, I810MemRange * pool,
|
||||
+ int size);
|
||||
extern int I810AllocHigh(I810MemRange * result, I810MemRange * pool,
|
||||
- int size);
|
||||
+ int size);
|
||||
extern Bool I810AllocateFront(ScrnInfoPtr pScrn);
|
||||
|
||||
extern int I810AllocateGARTMemory(ScrnInfoPtr pScrn);
|
||||
Index: programs/Xserver/hw/xfree86/drivers/i810/i810_accel.c
|
||||
===================================================================
|
||||
RCS file: /cvs/xorg/xc/programs/Xserver/hw/xfree86/drivers/i810/i810_accel.c,v
|
||||
retrieving revision 1.4
|
||||
retrieving revision 1.4.2.1
|
||||
diff -u -u -r1.4 -r1.4.2.1
|
||||
--- programs/Xserver/hw/xfree86/drivers/i810/i810_accel.c 30 Jul 2004 20:30:52 -0000 1.4
|
||||
+++ programs/Xserver/hw/xfree86/drivers/i810/i810_accel.c 15 Dec 2004 09:35:23 -0000 1.4.2.1
|
||||
@@ -259,7 +259,7 @@
|
||||
#ifdef XF86DRI
|
||||
/* VT switching tries to do this.
|
||||
*/
|
||||
- if (!pI810->LockHeld && pI810->directRenderingEnabled) {
|
||||
+ if ((!pI810->LockHeld && pI810->directRenderingEnabled) || !pScrn->vtSema) {
|
||||
return;
|
||||
}
|
||||
#endif
|
||||
Index: programs/Xserver/hw/xfree86/drivers/i810/i810_dri.c
|
||||
===================================================================
|
||||
RCS file: /cvs/xorg/xc/programs/Xserver/hw/xfree86/drivers/i810/i810_dri.c,v
|
||||
retrieving revision 1.4
|
||||
retrieving revision 1.4.4.1
|
||||
diff -u -u -r1.4 -r1.4.4.1
|
||||
--- programs/Xserver/hw/xfree86/drivers/i810/i810_dri.c 22 Jun 2004 14:28:46 -0000 1.4
|
||||
+++ programs/Xserver/hw/xfree86/drivers/i810/i810_dri.c 15 Dec 2004 09:35:23 -0000 1.4.4.1
|
||||
@@ -290,7 +290,7 @@
|
||||
unsigned long dcacheHandle;
|
||||
int sysmem_size = 0;
|
||||
int back_size = 0;
|
||||
- int pitch_idx = 0;
|
||||
+ unsigned int pitch_idx = 0;
|
||||
int bufs;
|
||||
int width = pScrn->displayWidth * pI810->cpp;
|
||||
int i;
|
||||
Index: programs/Xserver/hw/xfree86/drivers/i810/i810_driver.c
|
||||
===================================================================
|
||||
RCS file: /cvs/xorg/xc/programs/Xserver/hw/xfree86/drivers/i810/i810_driver.c,v
|
||||
retrieving revision 1.9
|
||||
retrieving revision 1.9.2.1
|
||||
diff -u -u -r1.9 -r1.9.2.1
|
||||
--- programs/Xserver/hw/xfree86/drivers/i810/i810_driver.c 25 Aug 2004 00:30:41 -0000 1.9
|
||||
+++ programs/Xserver/hw/xfree86/drivers/i810/i810_driver.c 15 Dec 2004 09:35:23 -0000 1.9.2.1
|
||||
@@ -1124,14 +1124,6 @@
|
||||
xf86SetOperatingState(resVgaIo, pI810->pEnt->index, ResUnusedOpr);
|
||||
xf86SetOperatingState(resVgaMem, pI810->pEnt->index, ResDisableOpr);
|
||||
|
||||
- pI810->LpRing = xalloc(sizeof(I810RingBuffer));
|
||||
- if (!pI810->LpRing) {
|
||||
- xf86DrvMsg(pScrn->scrnIndex, X_ERROR,
|
||||
- "Could not allocate lpring data structure.\n");
|
||||
- I810FreeRec(pScrn);
|
||||
- return FALSE;
|
||||
- }
|
||||
-
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
@@ -1159,7 +1151,7 @@
|
||||
I810MapMem(ScrnInfoPtr pScrn)
|
||||
{
|
||||
I810Ptr pI810 = I810PTR(pScrn);
|
||||
- unsigned i;
|
||||
+ long i;
|
||||
|
||||
for (i = 2; i < pI810->FbMapSize; i <<= 1) ;
|
||||
pI810->FbMapSize = i;
|
||||
@@ -2074,6 +2066,13 @@
|
||||
pI810 = I810PTR(pScrn);
|
||||
hwp = VGAHWPTR(pScrn);
|
||||
|
||||
+ pI810->LpRing = xcalloc(sizeof(I810RingBuffer),1);
|
||||
+ if (!pI810->LpRing) {
|
||||
+ xf86DrvMsg(pScrn->scrnIndex, X_ERROR,
|
||||
+ "Could not allocate lpring data structure.\n");
|
||||
+ return FALSE;
|
||||
+ }
|
||||
+
|
||||
miClearVisualTypes();
|
||||
|
||||
/* Re-implemented Direct Color support, -jens */
|
||||
Index: programs/Xserver/hw/xfree86/drivers/i810/i810_memory.c
|
||||
===================================================================
|
||||
RCS file: /cvs/xorg/xc/programs/Xserver/hw/xfree86/drivers/i810/i810_memory.c,v
|
||||
retrieving revision 1.4
|
||||
retrieving revision 1.4.2.1
|
||||
diff -u -u -r1.4 -r1.4.2.1
|
||||
--- programs/Xserver/hw/xfree86/drivers/i810/i810_memory.c 30 Aug 2004 03:19:08 -0000 1.4
|
||||
+++ programs/Xserver/hw/xfree86/drivers/i810/i810_memory.c 15 Dec 2004 09:35:23 -0000 1.4.2.1
|
||||
@@ -55,7 +55,7 @@
|
||||
int
|
||||
I810AllocLow(I810MemRange * result, I810MemRange * pool, int size)
|
||||
{
|
||||
- if (size > pool->Size)
|
||||
+ if (size > (long)pool->Size)
|
||||
return 0;
|
||||
|
||||
pool->Size -= size;
|
||||
@@ -69,7 +69,7 @@
|
||||
int
|
||||
I810AllocHigh(I810MemRange * result, I810MemRange * pool, int size)
|
||||
{
|
||||
- if (size > pool->Size)
|
||||
+ if (size > (long)pool->Size)
|
||||
return 0;
|
||||
|
||||
pool->Size -= size;
|
||||
Index: programs/Xserver/hw/xfree86/drivers/i810/i810_reg.h
|
||||
===================================================================
|
||||
RCS file: /cvs/xorg/xc/programs/Xserver/hw/xfree86/drivers/i810/i810_reg.h,v
|
||||
retrieving revision 1.3
|
||||
retrieving revision 1.3.4.1
|
||||
diff -u -u -r1.3 -r1.3.4.1
|
||||
--- programs/Xserver/hw/xfree86/drivers/i810/i810_reg.h 22 Jun 2004 14:28:46 -0000 1.3
|
||||
+++ programs/Xserver/hw/xfree86/drivers/i810/i810_reg.h 15 Dec 2004 09:35:23 -0000 1.3.4.1
|
||||
@@ -459,11 +459,11 @@
|
||||
#define I830_HEAD_MASK 0x001FFFFC
|
||||
|
||||
#define RING_START 0x08
|
||||
-#define START_ADDR 0x00FFFFF8
|
||||
+#define START_ADDR 0x03FFFFF8
|
||||
#define I830_RING_START_MASK 0xFFFFF000
|
||||
|
||||
#define RING_LEN 0x0C
|
||||
-#define RING_NR_PAGES 0x000FF000
|
||||
+#define RING_NR_PAGES 0x001FF000
|
||||
#define I830_RING_NR_PAGES 0x001FF000
|
||||
#define RING_REPORT_MASK 0x00000006
|
||||
#define RING_REPORT_64K 0x00000002
|
||||
Index: programs/Xserver/hw/xfree86/drivers/i810/i830.h
|
||||
===================================================================
|
||||
RCS file: /cvs/xorg/xc/programs/Xserver/hw/xfree86/drivers/i810/i830.h,v
|
||||
retrieving revision 1.5
|
||||
retrieving revision 1.5.4.1
|
||||
diff -u -u -r1.5 -r1.5.4.1
|
||||
--- programs/Xserver/hw/xfree86/drivers/i810/i830.h 6 Jul 2004 14:37:47 -0000 1.5
|
||||
+++ programs/Xserver/hw/xfree86/drivers/i810/i830.h 15 Dec 2004 09:35:23 -0000 1.5.4.1
|
||||
@@ -180,17 +180,17 @@
|
||||
int CacheLines;
|
||||
|
||||
/* These are set in PreInit and never changed. */
|
||||
- unsigned long FbMapSize;
|
||||
- unsigned long TotalVideoRam;
|
||||
+ long FbMapSize;
|
||||
+ long TotalVideoRam;
|
||||
I830MemRange StolenMemory; /* pre-allocated memory */
|
||||
- unsigned long BIOSMemorySize; /* min stolen pool size */
|
||||
+ long BIOSMemorySize; /* min stolen pool size */
|
||||
int BIOSMemSizeLoc;
|
||||
|
||||
/* These change according to what has been allocated. */
|
||||
long FreeMemory;
|
||||
I830MemRange MemoryAperture;
|
||||
I830MemPool StolenPool;
|
||||
- unsigned long allocatedMemory;
|
||||
+ long allocatedMemory;
|
||||
|
||||
/* Regions allocated either from the above pools, or from agpgart. */
|
||||
/* for single and dual head configurations */
|
||||
@@ -348,7 +348,7 @@
|
||||
int xoffset;
|
||||
int yoffset;
|
||||
|
||||
- int SaveGeneration;
|
||||
+ unsigned int SaveGeneration;
|
||||
Bool vbeRestoreWorkaround;
|
||||
Bool displayInfo;
|
||||
Bool devicePresence;
|
||||
@@ -415,7 +415,7 @@
|
||||
extern Bool I830BindGARTMemory(ScrnInfoPtr pScrn);
|
||||
extern Bool I830UnbindGARTMemory(ScrnInfoPtr pScrn);
|
||||
extern unsigned long I830AllocVidMem(ScrnInfoPtr pScrn, I830MemRange *result,
|
||||
- I830MemPool *pool, unsigned long size,
|
||||
+ I830MemPool *pool, long size,
|
||||
unsigned long alignment, int flags);
|
||||
|
||||
extern void I830PrintAllRegisters(I830RegPtr i830Reg);
|
||||
Index: programs/Xserver/hw/xfree86/drivers/i810/i830_driver.c
|
||||
===================================================================
|
||||
RCS file: /cvs/xorg/xc/programs/Xserver/hw/xfree86/drivers/i810/i830_driver.c,v
|
||||
retrieving revision 1.6
|
||||
retrieving revision 1.6.2.1
|
||||
diff -u -u -r1.6 -r1.6.2.1
|
||||
--- programs/Xserver/hw/xfree86/drivers/i810/i830_driver.c 30 Jul 2004 20:38:27 -0000 1.6
|
||||
+++ programs/Xserver/hw/xfree86/drivers/i810/i830_driver.c 15 Dec 2004 09:35:23 -0000 1.6.2.1
|
||||
@@ -594,6 +594,7 @@
|
||||
I830Ptr pI830 = I830PTR(pScrn);
|
||||
vbeInfoPtr pVbe = pI830->pVbe;
|
||||
CARD32 temp;
|
||||
+
|
||||
#ifdef I915G_WORKAROUND
|
||||
int getmode;
|
||||
int mode;
|
||||
@@ -1018,7 +1019,7 @@
|
||||
I830MapMem(ScrnInfoPtr pScrn)
|
||||
{
|
||||
I830Ptr pI830 = I830PTR(pScrn);
|
||||
- unsigned i;
|
||||
+ long i;
|
||||
|
||||
for (i = 2; i < pI830->FbMapSize; i <<= 1) ;
|
||||
pI830->FbMapSize = i;
|
||||
@@ -2898,7 +2899,7 @@
|
||||
OUTREG(LP_RING + RING_TAIL, 0);
|
||||
OUTREG(LP_RING + RING_HEAD, 0);
|
||||
|
||||
- if ((pI830->LpRing->mem.Start & I830_RING_START_MASK) !=
|
||||
+ if ((long)(pI830->LpRing->mem.Start & I830_RING_START_MASK) !=
|
||||
pI830->LpRing->mem.Start) {
|
||||
xf86DrvMsg(pScrn->scrnIndex, X_ERROR,
|
||||
"I830SetRingRegs: Ring buffer start (%lx) violates its "
|
||||
@@ -3441,7 +3442,7 @@
|
||||
I830Ptr pI8301 = I830PTR(pI830->entityPrivate->pScrn_1);
|
||||
|
||||
temp = INREG(stridereg);
|
||||
- if (temp / pI8301->cpp != pI830->entityPrivate->pScrn_1->displayWidth) {
|
||||
+ if (temp / pI8301->cpp != (CARD32)(pI830->entityPrivate->pScrn_1->displayWidth)) {
|
||||
xf86DrvMsg(pScrn->scrnIndex, X_WARNING,
|
||||
"Correcting plane %c stride (%d -> %d)\n", PIPE_NAME(pI830->pipe),
|
||||
(int)(temp / pI8301->cpp), pI830->entityPrivate->pScrn_1->displayWidth);
|
||||
@@ -3459,7 +3460,7 @@
|
||||
sizereg = pI830->pipe ? DSPASIZE : DSPBSIZE;
|
||||
|
||||
temp = INREG(stridereg);
|
||||
- if (temp / pI8302->cpp != pI830->entityPrivate->pScrn_2->displayWidth) {
|
||||
+ if (temp / pI8302->cpp != (CARD32)(pI830->entityPrivate->pScrn_2->displayWidth)) {
|
||||
xf86DrvMsg(pScrn->scrnIndex, X_WARNING,
|
||||
"Correcting plane %c stride (%d -> %d)\n", PIPE_NAME(!pI830->pipe),
|
||||
(int)(temp / pI8302->cpp), pI830->entityPrivate->pScrn_2->displayWidth);
|
||||
@@ -3478,7 +3479,7 @@
|
||||
I830Ptr pI8302 = I830PTR(pI830->entityPrivate->pScrn_2);
|
||||
|
||||
temp = INREG(stridereg);
|
||||
- if (temp / pI8301->cpp != pI830->entityPrivate->pScrn_1->displayWidth) {
|
||||
+ if (temp / pI8301->cpp != (CARD32)(pI830->entityPrivate->pScrn_1->displayWidth)) {
|
||||
xf86DrvMsg(pScrn->scrnIndex, X_WARNING,
|
||||
"Correcting plane %c stride (%d -> %d)\n", PIPE_NAME(pI830->pipe),
|
||||
(int)(temp / pI8301->cpp), pI830->entityPrivate->pScrn_1->displayWidth);
|
||||
@@ -3494,7 +3495,7 @@
|
||||
sizereg = !pI830->pipe ? DSPASIZE : DSPBSIZE;
|
||||
|
||||
temp = INREG(stridereg);
|
||||
- if (temp / pI8302->cpp != pI830->entityPrivate->pScrn_2->displayWidth) {
|
||||
+ if (temp / pI8302->cpp != ((CARD32)pI830->entityPrivate->pScrn_2->displayWidth)) {
|
||||
xf86DrvMsg(pScrn->scrnIndex, X_WARNING,
|
||||
"Correcting plane %c stride (%d -> %d)\n", PIPE_NAME(!pI830->pipe),
|
||||
(int)(temp / pI8302->cpp), pI830->entityPrivate->pScrn_2->displayWidth);
|
||||
@@ -3515,7 +3516,7 @@
|
||||
continue;
|
||||
|
||||
temp = INREG(stridereg);
|
||||
- if (temp / pI830->cpp != pScrn->displayWidth) {
|
||||
+ if (temp / pI830->cpp != (CARD32)pScrn->displayWidth) {
|
||||
xf86DrvMsg(pScrn->scrnIndex, X_WARNING,
|
||||
"Correcting plane %c stride (%d -> %d)\n", PIPE_NAME(i),
|
||||
(int)(temp / pI830->cpp), pScrn->displayWidth);
|
||||
@@ -4354,6 +4355,9 @@
|
||||
SaveHWOperatingState(pScrn);
|
||||
#endif
|
||||
|
||||
+ ResetState(pScrn, TRUE);
|
||||
+ RestoreHWState(pScrn);
|
||||
+
|
||||
if (IsPrimary(pScrn)) {
|
||||
if (!SetDisplayDevices(pScrn, pI830->savedDevices)) {
|
||||
xf86DrvMsg(pScrn->scrnIndex, X_WARNING,
|
||||
@@ -4365,8 +4369,6 @@
|
||||
}
|
||||
}
|
||||
|
||||
- ResetState(pScrn, TRUE);
|
||||
- RestoreHWState(pScrn);
|
||||
RestoreBIOSMemSize(pScrn);
|
||||
if (IsPrimary(pScrn))
|
||||
I830UnbindGARTMemory(pScrn);
|
||||
@@ -4506,7 +4508,8 @@
|
||||
ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum];
|
||||
I830Ptr pI830 = I830PTR(pScrn);
|
||||
Bool on = xf86IsUnblank(mode);
|
||||
- CARD32 temp, ctrl, base, i;
|
||||
+ CARD32 temp, ctrl, base;
|
||||
+ int i;
|
||||
|
||||
DPRINTF(PFX, "I830BIOSSaveScreen: %d, on is %s\n", mode, BOOLTOSTRING(on));
|
||||
|
||||
Index: programs/Xserver/hw/xfree86/drivers/i810/i830_memory.c
|
||||
===================================================================
|
||||
RCS file: /cvs/xorg/xc/programs/Xserver/hw/xfree86/drivers/i810/i830_memory.c,v
|
||||
retrieving revision 1.4
|
||||
retrieving revision 1.4.4.1
|
||||
diff -u -u -r1.4 -r1.4.4.1
|
||||
--- programs/Xserver/hw/xfree86/drivers/i810/i830_memory.c 6 Jul 2004 14:37:47 -0000 1.4
|
||||
+++ programs/Xserver/hw/xfree86/drivers/i810/i830_memory.c 15 Dec 2004 09:35:23 -0000 1.4.4.1
|
||||
@@ -63,10 +63,10 @@
|
||||
*/
|
||||
static unsigned long
|
||||
AllocFromPool(ScrnInfoPtr pScrn, I830MemRange *result, I830MemPool *pool,
|
||||
- unsigned long size, unsigned long alignment, int flags)
|
||||
+ long size, unsigned long alignment, int flags)
|
||||
{
|
||||
I830Ptr pI830 = I830PTR(pScrn);
|
||||
- unsigned long needed, start, end;
|
||||
+ long needed, start, end;
|
||||
Bool dryrun = ((flags & ALLOCATE_DRY_RUN) != 0);
|
||||
|
||||
if (!result || !pool || !size)
|
||||
@@ -94,7 +94,7 @@
|
||||
}
|
||||
}
|
||||
if (needed > pool->Free.Size) {
|
||||
- unsigned long extra;
|
||||
+ long extra;
|
||||
/* See if the pool can be grown. */
|
||||
if (pI830->StolenOnly && !dryrun)
|
||||
return 0;
|
||||
@@ -107,7 +107,7 @@
|
||||
return 0;
|
||||
}
|
||||
|
||||
- if (!dryrun && (extra > pI830->MemoryAperture.Size))
|
||||
+ if (!dryrun && ((long)extra > pI830->MemoryAperture.Size))
|
||||
return 0;
|
||||
|
||||
pool->Free.Size += extra;
|
||||
@@ -136,7 +136,7 @@
|
||||
}
|
||||
|
||||
static unsigned long
|
||||
-AllocFromAGP(ScrnInfoPtr pScrn, I830MemRange *result, unsigned long size,
|
||||
+AllocFromAGP(ScrnInfoPtr pScrn, I830MemRange *result, long size,
|
||||
unsigned long alignment, int flags)
|
||||
{
|
||||
I830Ptr pI830 = I830PTR(pScrn);
|
||||
@@ -212,7 +212,7 @@
|
||||
|
||||
unsigned long
|
||||
I830AllocVidMem(ScrnInfoPtr pScrn, I830MemRange *result, I830MemPool *pool,
|
||||
- unsigned long size, unsigned long alignment, int flags)
|
||||
+ long size, unsigned long alignment, int flags)
|
||||
{
|
||||
I830Ptr pI830 = I830PTR(pScrn);
|
||||
Bool dryrun = ((flags & ALLOCATE_DRY_RUN) != 0);
|
||||
@@ -392,7 +392,7 @@
|
||||
I830Allocate2DMemory(ScrnInfoPtr pScrn, const int flags)
|
||||
{
|
||||
I830Ptr pI830 = I830PTR(pScrn);
|
||||
- unsigned long size, alloced;
|
||||
+ long size, alloced;
|
||||
Bool dryrun = ((flags & ALLOCATE_DRY_RUN) != 0);
|
||||
int verbosity = dryrun ? 4 : 1;
|
||||
const char *s = dryrun ? "[dryrun] " : "";
|
||||
@@ -610,9 +610,9 @@
|
||||
return FALSE;
|
||||
}
|
||||
} else {
|
||||
- unsigned long lineSize;
|
||||
- unsigned long extra = 0;
|
||||
- unsigned long maxFb = 0;
|
||||
+ long lineSize;
|
||||
+ long extra = 0;
|
||||
+ long maxFb = 0;
|
||||
|
||||
/*
|
||||
* XXX Need to "free" up any 3D allocations if the DRI ended up
|
||||
@@ -857,7 +857,7 @@
|
||||
I830GetExcessMemoryAllocations(ScrnInfoPtr pScrn)
|
||||
{
|
||||
I830Ptr pI830 = I830PTR(pScrn);
|
||||
- unsigned long allocated;
|
||||
+ long allocated;
|
||||
|
||||
allocated = pI830->StolenPool.Total.Size + pI830->allocatedMemory;
|
||||
if (allocated > pI830->TotalVideoRam)
|
||||
@@ -1367,7 +1367,7 @@
|
||||
I830Ptr pI830 = I830PTR(pScrn);
|
||||
int pitch, ntiles, i;
|
||||
static int nextTile = 0;
|
||||
- static int tileGeneration = -1;
|
||||
+ static unsigned int tileGeneration = -1;
|
||||
|
||||
#if 0
|
||||
/* Hack to "improve" the alignment of the front buffer.
|
11
x11-servers/xorg-server-snap/files/patch-i830_video.c
Normal file
11
x11-servers/xorg-server-snap/files/patch-i830_video.c
Normal file
@ -0,0 +1,11 @@
|
||||
--- programs/Xserver/hw/xfree86/drivers/i810/i830_video.c.orig Fri Dec 31 13:43:36 2004
|
||||
+++ programs/Xserver/hw/xfree86/drivers/i810/i830_video.c Fri Dec 31 13:44:22 2004
|
||||
@@ -632,7 +632,7 @@
|
||||
pPriv->gamma0 = 0x080808;
|
||||
|
||||
/* gotta uninit this someplace */
|
||||
- REGION_INIT(pScreen, &pPriv->clip, NullBox, 0);
|
||||
+ REGION_NULL(pScreen, &pPriv->clip);
|
||||
|
||||
pI830->adaptor = adapt;
|
||||
|
12
x11-servers/xorg-server-snap/files/patch-xfree86-Imakefile
Normal file
12
x11-servers/xorg-server-snap/files/patch-xfree86-Imakefile
Normal file
@ -0,0 +1,12 @@
|
||||
--- programs/Xserver/hw/xfree86/Imakefile.orig Fri Dec 31 14:08:32 2004
|
||||
+++ programs/Xserver/hw/xfree86/Imakefile Fri Dec 31 14:08:34 2004
|
||||
@@ -217,8 +217,8 @@
|
||||
InstallManPage(Xorg,$(MANDIR))
|
||||
InstallGenManPage(xorg.conf,$(FILEMANDIR),$(FILEMANSUFFIX))
|
||||
|
||||
+InstallNamedNonExec($(XORGCONFIG),xorg.conf.eg,$(LIBDIR))
|
||||
#if 0
|
||||
-InstallNamedNonExec($(XORGCONFIG),XF86Config.eg,$(LIBDIR))
|
||||
InstallNamedNonExec($(XF98CONFIG),XF86Config.98,$(LIBDIR))
|
||||
#endif
|
||||
InstallNamedNonExec(Options,Options,$(LIBDIR))
|
14
x11-servers/xorg-server-snap/files/patch-xorgconf.cpp
Normal file
14
x11-servers/xorg-server-snap/files/patch-xorgconf.cpp
Normal file
@ -0,0 +1,14 @@
|
||||
--- programs/Xserver/hw/xfree86/xorgconf.cpp.orig Fri Dec 31 14:40:27 2004
|
||||
+++ programs/Xserver/hw/xfree86/xorgconf.cpp Fri Dec 31 14:40:28 2004
|
||||
@@ -624,3 +624,11 @@
|
||||
InputDevice "Keyboard1" "CoreKeyboard"
|
||||
EndSection
|
||||
|
||||
+
|
||||
+XCOMM Two experimental extensions are available -- Composite and XEVIE. Uncomment
|
||||
+XCOMM the section below to enable Composite. Many extensions can also be disabled
|
||||
+XCOMM in this manner.
|
||||
+
|
||||
+XCOMM Section "Extensions"
|
||||
+XCOMM Option "Composite" "Enable"
|
||||
+XCOMM EndSection
|
@ -76,6 +76,7 @@ lib/X11/etc/Xinstall.sh
|
||||
lib/X11/etc/xmodmap.std
|
||||
lib/X11/getconfig/cfg.sample
|
||||
lib/X11/getconfig/xorg.cfg
|
||||
lib/X11/xorg.conf.eg
|
||||
lib/X11/xserver/SecurityPolicy
|
||||
%%AMD64_I386%%lib/modules/drivers/apm_drv.o
|
||||
%%AMD64_I386%%lib/modules/drivers/ark_drv.o
|
||||
|
@ -28,6 +28,7 @@ echo "#define BuildXFree86ConfigTools YES" >> $LOCALDEF
|
||||
if [ X$WITH_DEBUG != X ]; then
|
||||
export CFLAGS="-g $CFLAGS"
|
||||
echo "#define InstPgmFlags" >> $LOCALDEF
|
||||
echo "#define MakeDllModules YES" >> $LOCALDEF
|
||||
fi
|
||||
|
||||
sh $PORTSDIR/x11-servers/xorg-server/scripts/configure.gen
|
||||
|
@ -7,6 +7,7 @@
|
||||
|
||||
PORTNAME= xorg-server
|
||||
PORTVERSION= 6.8.1
|
||||
PORTREVISION= 1
|
||||
CATEGORIES= x11-servers
|
||||
MASTER_SITES= ${MASTER_SITE_XORG}
|
||||
MASTER_SITE_SUBDIR= X11R6.8.1/tars
|
||||
|
35
x11-servers/xorg-server/files/patch-elfloader.c
Normal file
35
x11-servers/xorg-server/files/patch-elfloader.c
Normal file
@ -0,0 +1,35 @@
|
||||
Index: programs/Xserver/hw/xfree86/loader/elfloader.c
|
||||
===================================================================
|
||||
RCS file: /cvs/xorg/xc/programs/Xserver/hw/xfree86/loader/elfloader.c,v
|
||||
retrieving revision 1.3
|
||||
retrieving revision 1.4
|
||||
diff -u -u -r1.3 -r1.4
|
||||
--- programs/Xserver/hw/xfree86/loader/elfloader.c 30 Oct 2004 20:33:43 -0000 1.3
|
||||
+++ programs/Xserver/hw/xfree86/loader/elfloader.c 9 Nov 2004 15:58:41 -0000 1.4
|
||||
@@ -1,4 +1,4 @@
|
||||
-/* $XdotOrg: xc/programs/Xserver/hw/xfree86/loader/elfloader.c,v 1.3 2004/10/30 20:33:43 alanc Exp $ */
|
||||
+/* $XdotOrg: xc/programs/Xserver/hw/xfree86/loader/elfloader.c,v 1.4 2004/11/09 15:58:41 ajax Exp $ */
|
||||
/* $XFree86: xc/programs/Xserver/hw/xfree86/loader/elfloader.c,v 1.61tsi Exp $ */
|
||||
|
||||
/*
|
||||
@@ -1609,6 +1609,20 @@
|
||||
break;
|
||||
}
|
||||
|
||||
+ case R_ALPHA_SREL32:
|
||||
+ {
|
||||
+ dest32 = (unsigned int *)(secp + rel->r_offset);
|
||||
+ symval += rel->r_addend;
|
||||
+ symval -= (unsigned long) dest32;
|
||||
+ if ((long)symval >= 0x80000000
|
||||
+ || (long)symval < -(long)0x80000000)
|
||||
+ FatalError("R_ALPHA_SREL32 overflow for %s: %lx\n",
|
||||
+ ElfGetSymbolName(elffile, ELF_R_SYM(rel->r_info)),
|
||||
+ symval);
|
||||
+ *dest32 = symval;
|
||||
+ break;
|
||||
+ }
|
||||
+
|
||||
#endif /* alpha */
|
||||
#if defined(__mc68000__)
|
||||
case R_68K_32:
|
437
x11-servers/xorg-server/files/patch-i810-6_8
Normal file
437
x11-servers/xorg-server/files/patch-i810-6_8
Normal file
@ -0,0 +1,437 @@
|
||||
Index: programs/Xserver/hw/xfree86/drivers/i810/common.h
|
||||
===================================================================
|
||||
RCS file: /cvs/xorg/xc/programs/Xserver/hw/xfree86/drivers/i810/common.h,v
|
||||
retrieving revision 1.3
|
||||
retrieving revision 1.3.4.1
|
||||
diff -u -u -r1.3 -r1.3.4.1
|
||||
--- programs/Xserver/hw/xfree86/drivers/i810/common.h 22 Jun 2004 14:28:46 -0000 1.3
|
||||
+++ programs/Xserver/hw/xfree86/drivers/i810/common.h 15 Dec 2004 09:35:23 -0000 1.3.4.1
|
||||
@@ -173,7 +173,7 @@
|
||||
#define BEGIN_LP_RING(n) \
|
||||
unsigned int outring, ringmask; \
|
||||
volatile unsigned char *virt; \
|
||||
- unsigned int needed; \
|
||||
+ int needed; \
|
||||
if ((n) & 1) \
|
||||
ErrorF("BEGIN_LP_RING called with odd argument: %d\n", n); \
|
||||
if ((n) > 2 && (I810_DEBUG&DEBUG_ALWAYS_SYNC)) \
|
||||
@@ -206,7 +206,7 @@
|
||||
#define BEGIN_LP_RING(n) \
|
||||
unsigned int outring, ringmask; \
|
||||
volatile unsigned char *virt; \
|
||||
- unsigned int needed; \
|
||||
+ int needed; \
|
||||
if ((n) & 1) \
|
||||
ErrorF("BEGIN_LP_RING called with odd argument: %d\n", n); \
|
||||
if ((n) > 2 && (I810_DEBUG&DEBUG_ALWAYS_SYNC)) \
|
||||
Index: programs/Xserver/hw/xfree86/drivers/i810/i810.h
|
||||
===================================================================
|
||||
RCS file: /cvs/xorg/xc/programs/Xserver/hw/xfree86/drivers/i810/i810.h,v
|
||||
retrieving revision 1.4
|
||||
retrieving revision 1.4.4.1
|
||||
diff -u -u -r1.4 -r1.4.4.1
|
||||
--- programs/Xserver/hw/xfree86/drivers/i810/i810.h 22 Jun 2004 14:28:46 -0000 1.4
|
||||
+++ programs/Xserver/hw/xfree86/drivers/i810/i810.h 15 Dec 2004 09:35:23 -0000 1.4.4.1
|
||||
@@ -172,7 +172,7 @@
|
||||
unsigned long OverlayPhysical;
|
||||
unsigned long OverlayStart;
|
||||
int colorKey;
|
||||
- int surfaceAllocation[I810_TOTAL_SURFACES];
|
||||
+ unsigned int surfaceAllocation[I810_TOTAL_SURFACES];
|
||||
int numSurfaces;
|
||||
|
||||
DGAModePtr DGAModes;
|
||||
@@ -295,9 +295,10 @@
|
||||
extern void I810Sync(ScrnInfoPtr pScrn);
|
||||
extern unsigned long I810LocalToPhysical(ScrnInfoPtr pScrn,
|
||||
unsigned long local);
|
||||
-extern int I810AllocLow(I810MemRange * result, I810MemRange * pool, int size);
|
||||
+extern int I810AllocLow(I810MemRange * result, I810MemRange * pool,
|
||||
+ int size);
|
||||
extern int I810AllocHigh(I810MemRange * result, I810MemRange * pool,
|
||||
- int size);
|
||||
+ int size);
|
||||
extern Bool I810AllocateFront(ScrnInfoPtr pScrn);
|
||||
|
||||
extern int I810AllocateGARTMemory(ScrnInfoPtr pScrn);
|
||||
Index: programs/Xserver/hw/xfree86/drivers/i810/i810_accel.c
|
||||
===================================================================
|
||||
RCS file: /cvs/xorg/xc/programs/Xserver/hw/xfree86/drivers/i810/i810_accel.c,v
|
||||
retrieving revision 1.4
|
||||
retrieving revision 1.4.2.1
|
||||
diff -u -u -r1.4 -r1.4.2.1
|
||||
--- programs/Xserver/hw/xfree86/drivers/i810/i810_accel.c 30 Jul 2004 20:30:52 -0000 1.4
|
||||
+++ programs/Xserver/hw/xfree86/drivers/i810/i810_accel.c 15 Dec 2004 09:35:23 -0000 1.4.2.1
|
||||
@@ -259,7 +259,7 @@
|
||||
#ifdef XF86DRI
|
||||
/* VT switching tries to do this.
|
||||
*/
|
||||
- if (!pI810->LockHeld && pI810->directRenderingEnabled) {
|
||||
+ if ((!pI810->LockHeld && pI810->directRenderingEnabled) || !pScrn->vtSema) {
|
||||
return;
|
||||
}
|
||||
#endif
|
||||
Index: programs/Xserver/hw/xfree86/drivers/i810/i810_dri.c
|
||||
===================================================================
|
||||
RCS file: /cvs/xorg/xc/programs/Xserver/hw/xfree86/drivers/i810/i810_dri.c,v
|
||||
retrieving revision 1.4
|
||||
retrieving revision 1.4.4.1
|
||||
diff -u -u -r1.4 -r1.4.4.1
|
||||
--- programs/Xserver/hw/xfree86/drivers/i810/i810_dri.c 22 Jun 2004 14:28:46 -0000 1.4
|
||||
+++ programs/Xserver/hw/xfree86/drivers/i810/i810_dri.c 15 Dec 2004 09:35:23 -0000 1.4.4.1
|
||||
@@ -290,7 +290,7 @@
|
||||
unsigned long dcacheHandle;
|
||||
int sysmem_size = 0;
|
||||
int back_size = 0;
|
||||
- int pitch_idx = 0;
|
||||
+ unsigned int pitch_idx = 0;
|
||||
int bufs;
|
||||
int width = pScrn->displayWidth * pI810->cpp;
|
||||
int i;
|
||||
Index: programs/Xserver/hw/xfree86/drivers/i810/i810_driver.c
|
||||
===================================================================
|
||||
RCS file: /cvs/xorg/xc/programs/Xserver/hw/xfree86/drivers/i810/i810_driver.c,v
|
||||
retrieving revision 1.9
|
||||
retrieving revision 1.9.2.1
|
||||
diff -u -u -r1.9 -r1.9.2.1
|
||||
--- programs/Xserver/hw/xfree86/drivers/i810/i810_driver.c 25 Aug 2004 00:30:41 -0000 1.9
|
||||
+++ programs/Xserver/hw/xfree86/drivers/i810/i810_driver.c 15 Dec 2004 09:35:23 -0000 1.9.2.1
|
||||
@@ -1124,14 +1124,6 @@
|
||||
xf86SetOperatingState(resVgaIo, pI810->pEnt->index, ResUnusedOpr);
|
||||
xf86SetOperatingState(resVgaMem, pI810->pEnt->index, ResDisableOpr);
|
||||
|
||||
- pI810->LpRing = xalloc(sizeof(I810RingBuffer));
|
||||
- if (!pI810->LpRing) {
|
||||
- xf86DrvMsg(pScrn->scrnIndex, X_ERROR,
|
||||
- "Could not allocate lpring data structure.\n");
|
||||
- I810FreeRec(pScrn);
|
||||
- return FALSE;
|
||||
- }
|
||||
-
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
@@ -1159,7 +1151,7 @@
|
||||
I810MapMem(ScrnInfoPtr pScrn)
|
||||
{
|
||||
I810Ptr pI810 = I810PTR(pScrn);
|
||||
- unsigned i;
|
||||
+ long i;
|
||||
|
||||
for (i = 2; i < pI810->FbMapSize; i <<= 1) ;
|
||||
pI810->FbMapSize = i;
|
||||
@@ -2074,6 +2066,13 @@
|
||||
pI810 = I810PTR(pScrn);
|
||||
hwp = VGAHWPTR(pScrn);
|
||||
|
||||
+ pI810->LpRing = xcalloc(sizeof(I810RingBuffer),1);
|
||||
+ if (!pI810->LpRing) {
|
||||
+ xf86DrvMsg(pScrn->scrnIndex, X_ERROR,
|
||||
+ "Could not allocate lpring data structure.\n");
|
||||
+ return FALSE;
|
||||
+ }
|
||||
+
|
||||
miClearVisualTypes();
|
||||
|
||||
/* Re-implemented Direct Color support, -jens */
|
||||
Index: programs/Xserver/hw/xfree86/drivers/i810/i810_memory.c
|
||||
===================================================================
|
||||
RCS file: /cvs/xorg/xc/programs/Xserver/hw/xfree86/drivers/i810/i810_memory.c,v
|
||||
retrieving revision 1.4
|
||||
retrieving revision 1.4.2.1
|
||||
diff -u -u -r1.4 -r1.4.2.1
|
||||
--- programs/Xserver/hw/xfree86/drivers/i810/i810_memory.c 30 Aug 2004 03:19:08 -0000 1.4
|
||||
+++ programs/Xserver/hw/xfree86/drivers/i810/i810_memory.c 15 Dec 2004 09:35:23 -0000 1.4.2.1
|
||||
@@ -55,7 +55,7 @@
|
||||
int
|
||||
I810AllocLow(I810MemRange * result, I810MemRange * pool, int size)
|
||||
{
|
||||
- if (size > pool->Size)
|
||||
+ if (size > (long)pool->Size)
|
||||
return 0;
|
||||
|
||||
pool->Size -= size;
|
||||
@@ -69,7 +69,7 @@
|
||||
int
|
||||
I810AllocHigh(I810MemRange * result, I810MemRange * pool, int size)
|
||||
{
|
||||
- if (size > pool->Size)
|
||||
+ if (size > (long)pool->Size)
|
||||
return 0;
|
||||
|
||||
pool->Size -= size;
|
||||
Index: programs/Xserver/hw/xfree86/drivers/i810/i810_reg.h
|
||||
===================================================================
|
||||
RCS file: /cvs/xorg/xc/programs/Xserver/hw/xfree86/drivers/i810/i810_reg.h,v
|
||||
retrieving revision 1.3
|
||||
retrieving revision 1.3.4.1
|
||||
diff -u -u -r1.3 -r1.3.4.1
|
||||
--- programs/Xserver/hw/xfree86/drivers/i810/i810_reg.h 22 Jun 2004 14:28:46 -0000 1.3
|
||||
+++ programs/Xserver/hw/xfree86/drivers/i810/i810_reg.h 15 Dec 2004 09:35:23 -0000 1.3.4.1
|
||||
@@ -459,11 +459,11 @@
|
||||
#define I830_HEAD_MASK 0x001FFFFC
|
||||
|
||||
#define RING_START 0x08
|
||||
-#define START_ADDR 0x00FFFFF8
|
||||
+#define START_ADDR 0x03FFFFF8
|
||||
#define I830_RING_START_MASK 0xFFFFF000
|
||||
|
||||
#define RING_LEN 0x0C
|
||||
-#define RING_NR_PAGES 0x000FF000
|
||||
+#define RING_NR_PAGES 0x001FF000
|
||||
#define I830_RING_NR_PAGES 0x001FF000
|
||||
#define RING_REPORT_MASK 0x00000006
|
||||
#define RING_REPORT_64K 0x00000002
|
||||
Index: programs/Xserver/hw/xfree86/drivers/i810/i830.h
|
||||
===================================================================
|
||||
RCS file: /cvs/xorg/xc/programs/Xserver/hw/xfree86/drivers/i810/i830.h,v
|
||||
retrieving revision 1.5
|
||||
retrieving revision 1.5.4.1
|
||||
diff -u -u -r1.5 -r1.5.4.1
|
||||
--- programs/Xserver/hw/xfree86/drivers/i810/i830.h 6 Jul 2004 14:37:47 -0000 1.5
|
||||
+++ programs/Xserver/hw/xfree86/drivers/i810/i830.h 15 Dec 2004 09:35:23 -0000 1.5.4.1
|
||||
@@ -180,17 +180,17 @@
|
||||
int CacheLines;
|
||||
|
||||
/* These are set in PreInit and never changed. */
|
||||
- unsigned long FbMapSize;
|
||||
- unsigned long TotalVideoRam;
|
||||
+ long FbMapSize;
|
||||
+ long TotalVideoRam;
|
||||
I830MemRange StolenMemory; /* pre-allocated memory */
|
||||
- unsigned long BIOSMemorySize; /* min stolen pool size */
|
||||
+ long BIOSMemorySize; /* min stolen pool size */
|
||||
int BIOSMemSizeLoc;
|
||||
|
||||
/* These change according to what has been allocated. */
|
||||
long FreeMemory;
|
||||
I830MemRange MemoryAperture;
|
||||
I830MemPool StolenPool;
|
||||
- unsigned long allocatedMemory;
|
||||
+ long allocatedMemory;
|
||||
|
||||
/* Regions allocated either from the above pools, or from agpgart. */
|
||||
/* for single and dual head configurations */
|
||||
@@ -348,7 +348,7 @@
|
||||
int xoffset;
|
||||
int yoffset;
|
||||
|
||||
- int SaveGeneration;
|
||||
+ unsigned int SaveGeneration;
|
||||
Bool vbeRestoreWorkaround;
|
||||
Bool displayInfo;
|
||||
Bool devicePresence;
|
||||
@@ -415,7 +415,7 @@
|
||||
extern Bool I830BindGARTMemory(ScrnInfoPtr pScrn);
|
||||
extern Bool I830UnbindGARTMemory(ScrnInfoPtr pScrn);
|
||||
extern unsigned long I830AllocVidMem(ScrnInfoPtr pScrn, I830MemRange *result,
|
||||
- I830MemPool *pool, unsigned long size,
|
||||
+ I830MemPool *pool, long size,
|
||||
unsigned long alignment, int flags);
|
||||
|
||||
extern void I830PrintAllRegisters(I830RegPtr i830Reg);
|
||||
Index: programs/Xserver/hw/xfree86/drivers/i810/i830_driver.c
|
||||
===================================================================
|
||||
RCS file: /cvs/xorg/xc/programs/Xserver/hw/xfree86/drivers/i810/i830_driver.c,v
|
||||
retrieving revision 1.6
|
||||
retrieving revision 1.6.2.1
|
||||
diff -u -u -r1.6 -r1.6.2.1
|
||||
--- programs/Xserver/hw/xfree86/drivers/i810/i830_driver.c 30 Jul 2004 20:38:27 -0000 1.6
|
||||
+++ programs/Xserver/hw/xfree86/drivers/i810/i830_driver.c 15 Dec 2004 09:35:23 -0000 1.6.2.1
|
||||
@@ -594,6 +594,7 @@
|
||||
I830Ptr pI830 = I830PTR(pScrn);
|
||||
vbeInfoPtr pVbe = pI830->pVbe;
|
||||
CARD32 temp;
|
||||
+
|
||||
#ifdef I915G_WORKAROUND
|
||||
int getmode;
|
||||
int mode;
|
||||
@@ -1018,7 +1019,7 @@
|
||||
I830MapMem(ScrnInfoPtr pScrn)
|
||||
{
|
||||
I830Ptr pI830 = I830PTR(pScrn);
|
||||
- unsigned i;
|
||||
+ long i;
|
||||
|
||||
for (i = 2; i < pI830->FbMapSize; i <<= 1) ;
|
||||
pI830->FbMapSize = i;
|
||||
@@ -2898,7 +2899,7 @@
|
||||
OUTREG(LP_RING + RING_TAIL, 0);
|
||||
OUTREG(LP_RING + RING_HEAD, 0);
|
||||
|
||||
- if ((pI830->LpRing->mem.Start & I830_RING_START_MASK) !=
|
||||
+ if ((long)(pI830->LpRing->mem.Start & I830_RING_START_MASK) !=
|
||||
pI830->LpRing->mem.Start) {
|
||||
xf86DrvMsg(pScrn->scrnIndex, X_ERROR,
|
||||
"I830SetRingRegs: Ring buffer start (%lx) violates its "
|
||||
@@ -3441,7 +3442,7 @@
|
||||
I830Ptr pI8301 = I830PTR(pI830->entityPrivate->pScrn_1);
|
||||
|
||||
temp = INREG(stridereg);
|
||||
- if (temp / pI8301->cpp != pI830->entityPrivate->pScrn_1->displayWidth) {
|
||||
+ if (temp / pI8301->cpp != (CARD32)(pI830->entityPrivate->pScrn_1->displayWidth)) {
|
||||
xf86DrvMsg(pScrn->scrnIndex, X_WARNING,
|
||||
"Correcting plane %c stride (%d -> %d)\n", PIPE_NAME(pI830->pipe),
|
||||
(int)(temp / pI8301->cpp), pI830->entityPrivate->pScrn_1->displayWidth);
|
||||
@@ -3459,7 +3460,7 @@
|
||||
sizereg = pI830->pipe ? DSPASIZE : DSPBSIZE;
|
||||
|
||||
temp = INREG(stridereg);
|
||||
- if (temp / pI8302->cpp != pI830->entityPrivate->pScrn_2->displayWidth) {
|
||||
+ if (temp / pI8302->cpp != (CARD32)(pI830->entityPrivate->pScrn_2->displayWidth)) {
|
||||
xf86DrvMsg(pScrn->scrnIndex, X_WARNING,
|
||||
"Correcting plane %c stride (%d -> %d)\n", PIPE_NAME(!pI830->pipe),
|
||||
(int)(temp / pI8302->cpp), pI830->entityPrivate->pScrn_2->displayWidth);
|
||||
@@ -3478,7 +3479,7 @@
|
||||
I830Ptr pI8302 = I830PTR(pI830->entityPrivate->pScrn_2);
|
||||
|
||||
temp = INREG(stridereg);
|
||||
- if (temp / pI8301->cpp != pI830->entityPrivate->pScrn_1->displayWidth) {
|
||||
+ if (temp / pI8301->cpp != (CARD32)(pI830->entityPrivate->pScrn_1->displayWidth)) {
|
||||
xf86DrvMsg(pScrn->scrnIndex, X_WARNING,
|
||||
"Correcting plane %c stride (%d -> %d)\n", PIPE_NAME(pI830->pipe),
|
||||
(int)(temp / pI8301->cpp), pI830->entityPrivate->pScrn_1->displayWidth);
|
||||
@@ -3494,7 +3495,7 @@
|
||||
sizereg = !pI830->pipe ? DSPASIZE : DSPBSIZE;
|
||||
|
||||
temp = INREG(stridereg);
|
||||
- if (temp / pI8302->cpp != pI830->entityPrivate->pScrn_2->displayWidth) {
|
||||
+ if (temp / pI8302->cpp != ((CARD32)pI830->entityPrivate->pScrn_2->displayWidth)) {
|
||||
xf86DrvMsg(pScrn->scrnIndex, X_WARNING,
|
||||
"Correcting plane %c stride (%d -> %d)\n", PIPE_NAME(!pI830->pipe),
|
||||
(int)(temp / pI8302->cpp), pI830->entityPrivate->pScrn_2->displayWidth);
|
||||
@@ -3515,7 +3516,7 @@
|
||||
continue;
|
||||
|
||||
temp = INREG(stridereg);
|
||||
- if (temp / pI830->cpp != pScrn->displayWidth) {
|
||||
+ if (temp / pI830->cpp != (CARD32)pScrn->displayWidth) {
|
||||
xf86DrvMsg(pScrn->scrnIndex, X_WARNING,
|
||||
"Correcting plane %c stride (%d -> %d)\n", PIPE_NAME(i),
|
||||
(int)(temp / pI830->cpp), pScrn->displayWidth);
|
||||
@@ -4354,6 +4355,9 @@
|
||||
SaveHWOperatingState(pScrn);
|
||||
#endif
|
||||
|
||||
+ ResetState(pScrn, TRUE);
|
||||
+ RestoreHWState(pScrn);
|
||||
+
|
||||
if (IsPrimary(pScrn)) {
|
||||
if (!SetDisplayDevices(pScrn, pI830->savedDevices)) {
|
||||
xf86DrvMsg(pScrn->scrnIndex, X_WARNING,
|
||||
@@ -4365,8 +4369,6 @@
|
||||
}
|
||||
}
|
||||
|
||||
- ResetState(pScrn, TRUE);
|
||||
- RestoreHWState(pScrn);
|
||||
RestoreBIOSMemSize(pScrn);
|
||||
if (IsPrimary(pScrn))
|
||||
I830UnbindGARTMemory(pScrn);
|
||||
@@ -4506,7 +4508,8 @@
|
||||
ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum];
|
||||
I830Ptr pI830 = I830PTR(pScrn);
|
||||
Bool on = xf86IsUnblank(mode);
|
||||
- CARD32 temp, ctrl, base, i;
|
||||
+ CARD32 temp, ctrl, base;
|
||||
+ int i;
|
||||
|
||||
DPRINTF(PFX, "I830BIOSSaveScreen: %d, on is %s\n", mode, BOOLTOSTRING(on));
|
||||
|
||||
Index: programs/Xserver/hw/xfree86/drivers/i810/i830_memory.c
|
||||
===================================================================
|
||||
RCS file: /cvs/xorg/xc/programs/Xserver/hw/xfree86/drivers/i810/i830_memory.c,v
|
||||
retrieving revision 1.4
|
||||
retrieving revision 1.4.4.1
|
||||
diff -u -u -r1.4 -r1.4.4.1
|
||||
--- programs/Xserver/hw/xfree86/drivers/i810/i830_memory.c 6 Jul 2004 14:37:47 -0000 1.4
|
||||
+++ programs/Xserver/hw/xfree86/drivers/i810/i830_memory.c 15 Dec 2004 09:35:23 -0000 1.4.4.1
|
||||
@@ -63,10 +63,10 @@
|
||||
*/
|
||||
static unsigned long
|
||||
AllocFromPool(ScrnInfoPtr pScrn, I830MemRange *result, I830MemPool *pool,
|
||||
- unsigned long size, unsigned long alignment, int flags)
|
||||
+ long size, unsigned long alignment, int flags)
|
||||
{
|
||||
I830Ptr pI830 = I830PTR(pScrn);
|
||||
- unsigned long needed, start, end;
|
||||
+ long needed, start, end;
|
||||
Bool dryrun = ((flags & ALLOCATE_DRY_RUN) != 0);
|
||||
|
||||
if (!result || !pool || !size)
|
||||
@@ -94,7 +94,7 @@
|
||||
}
|
||||
}
|
||||
if (needed > pool->Free.Size) {
|
||||
- unsigned long extra;
|
||||
+ long extra;
|
||||
/* See if the pool can be grown. */
|
||||
if (pI830->StolenOnly && !dryrun)
|
||||
return 0;
|
||||
@@ -107,7 +107,7 @@
|
||||
return 0;
|
||||
}
|
||||
|
||||
- if (!dryrun && (extra > pI830->MemoryAperture.Size))
|
||||
+ if (!dryrun && ((long)extra > pI830->MemoryAperture.Size))
|
||||
return 0;
|
||||
|
||||
pool->Free.Size += extra;
|
||||
@@ -136,7 +136,7 @@
|
||||
}
|
||||
|
||||
static unsigned long
|
||||
-AllocFromAGP(ScrnInfoPtr pScrn, I830MemRange *result, unsigned long size,
|
||||
+AllocFromAGP(ScrnInfoPtr pScrn, I830MemRange *result, long size,
|
||||
unsigned long alignment, int flags)
|
||||
{
|
||||
I830Ptr pI830 = I830PTR(pScrn);
|
||||
@@ -212,7 +212,7 @@
|
||||
|
||||
unsigned long
|
||||
I830AllocVidMem(ScrnInfoPtr pScrn, I830MemRange *result, I830MemPool *pool,
|
||||
- unsigned long size, unsigned long alignment, int flags)
|
||||
+ long size, unsigned long alignment, int flags)
|
||||
{
|
||||
I830Ptr pI830 = I830PTR(pScrn);
|
||||
Bool dryrun = ((flags & ALLOCATE_DRY_RUN) != 0);
|
||||
@@ -392,7 +392,7 @@
|
||||
I830Allocate2DMemory(ScrnInfoPtr pScrn, const int flags)
|
||||
{
|
||||
I830Ptr pI830 = I830PTR(pScrn);
|
||||
- unsigned long size, alloced;
|
||||
+ long size, alloced;
|
||||
Bool dryrun = ((flags & ALLOCATE_DRY_RUN) != 0);
|
||||
int verbosity = dryrun ? 4 : 1;
|
||||
const char *s = dryrun ? "[dryrun] " : "";
|
||||
@@ -610,9 +610,9 @@
|
||||
return FALSE;
|
||||
}
|
||||
} else {
|
||||
- unsigned long lineSize;
|
||||
- unsigned long extra = 0;
|
||||
- unsigned long maxFb = 0;
|
||||
+ long lineSize;
|
||||
+ long extra = 0;
|
||||
+ long maxFb = 0;
|
||||
|
||||
/*
|
||||
* XXX Need to "free" up any 3D allocations if the DRI ended up
|
||||
@@ -857,7 +857,7 @@
|
||||
I830GetExcessMemoryAllocations(ScrnInfoPtr pScrn)
|
||||
{
|
||||
I830Ptr pI830 = I830PTR(pScrn);
|
||||
- unsigned long allocated;
|
||||
+ long allocated;
|
||||
|
||||
allocated = pI830->StolenPool.Total.Size + pI830->allocatedMemory;
|
||||
if (allocated > pI830->TotalVideoRam)
|
||||
@@ -1367,7 +1367,7 @@
|
||||
I830Ptr pI830 = I830PTR(pScrn);
|
||||
int pitch, ntiles, i;
|
||||
static int nextTile = 0;
|
||||
- static int tileGeneration = -1;
|
||||
+ static unsigned int tileGeneration = -1;
|
||||
|
||||
#if 0
|
||||
/* Hack to "improve" the alignment of the front buffer.
|
11
x11-servers/xorg-server/files/patch-i830_video.c
Normal file
11
x11-servers/xorg-server/files/patch-i830_video.c
Normal file
@ -0,0 +1,11 @@
|
||||
--- programs/Xserver/hw/xfree86/drivers/i810/i830_video.c.orig Fri Dec 31 13:43:36 2004
|
||||
+++ programs/Xserver/hw/xfree86/drivers/i810/i830_video.c Fri Dec 31 13:44:22 2004
|
||||
@@ -632,7 +632,7 @@
|
||||
pPriv->gamma0 = 0x080808;
|
||||
|
||||
/* gotta uninit this someplace */
|
||||
- REGION_INIT(pScreen, &pPriv->clip, NullBox, 0);
|
||||
+ REGION_NULL(pScreen, &pPriv->clip);
|
||||
|
||||
pI830->adaptor = adapt;
|
||||
|
12
x11-servers/xorg-server/files/patch-xfree86-Imakefile
Normal file
12
x11-servers/xorg-server/files/patch-xfree86-Imakefile
Normal file
@ -0,0 +1,12 @@
|
||||
--- programs/Xserver/hw/xfree86/Imakefile.orig Fri Dec 31 14:08:32 2004
|
||||
+++ programs/Xserver/hw/xfree86/Imakefile Fri Dec 31 14:08:34 2004
|
||||
@@ -217,8 +217,8 @@
|
||||
InstallManPage(Xorg,$(MANDIR))
|
||||
InstallGenManPage(xorg.conf,$(FILEMANDIR),$(FILEMANSUFFIX))
|
||||
|
||||
+InstallNamedNonExec($(XORGCONFIG),xorg.conf.eg,$(LIBDIR))
|
||||
#if 0
|
||||
-InstallNamedNonExec($(XORGCONFIG),XF86Config.eg,$(LIBDIR))
|
||||
InstallNamedNonExec($(XF98CONFIG),XF86Config.98,$(LIBDIR))
|
||||
#endif
|
||||
InstallNamedNonExec(Options,Options,$(LIBDIR))
|
14
x11-servers/xorg-server/files/patch-xorgconf.cpp
Normal file
14
x11-servers/xorg-server/files/patch-xorgconf.cpp
Normal file
@ -0,0 +1,14 @@
|
||||
--- programs/Xserver/hw/xfree86/xorgconf.cpp.orig Fri Dec 31 14:40:27 2004
|
||||
+++ programs/Xserver/hw/xfree86/xorgconf.cpp Fri Dec 31 14:40:28 2004
|
||||
@@ -624,3 +624,11 @@
|
||||
InputDevice "Keyboard1" "CoreKeyboard"
|
||||
EndSection
|
||||
|
||||
+
|
||||
+XCOMM Two experimental extensions are available -- Composite and XEVIE. Uncomment
|
||||
+XCOMM the section below to enable Composite. Many extensions can also be disabled
|
||||
+XCOMM in this manner.
|
||||
+
|
||||
+XCOMM Section "Extensions"
|
||||
+XCOMM Option "Composite" "Enable"
|
||||
+XCOMM EndSection
|
@ -76,6 +76,7 @@ lib/X11/etc/Xinstall.sh
|
||||
lib/X11/etc/xmodmap.std
|
||||
lib/X11/getconfig/cfg.sample
|
||||
lib/X11/getconfig/xorg.cfg
|
||||
lib/X11/xorg.conf.eg
|
||||
lib/X11/xserver/SecurityPolicy
|
||||
%%AMD64_I386%%lib/modules/drivers/apm_drv.o
|
||||
%%AMD64_I386%%lib/modules/drivers/ark_drv.o
|
||||
|
1
x11-servers/xorg-server/scripts/configure
vendored
1
x11-servers/xorg-server/scripts/configure
vendored
@ -28,6 +28,7 @@ echo "#define BuildXFree86ConfigTools YES" >> $LOCALDEF
|
||||
if [ X$WITH_DEBUG != X ]; then
|
||||
export CFLAGS="-g $CFLAGS"
|
||||
echo "#define InstPgmFlags" >> $LOCALDEF
|
||||
echo "#define MakeDllModules YES" >> $LOCALDEF
|
||||
fi
|
||||
|
||||
sh $PORTSDIR/x11-servers/xorg-server/scripts/configure.gen
|
||||
|
Loading…
x
Reference in New Issue
Block a user