Merge the patches that were added to x11/XFree86 in these several
months. This should fix the build on 5-CURRENT and help some video chips. See x11/XFree86's history for details. Approved by: Taguchi Takeshi <taguchi@tohoku.iij.ad.jp> (MAINTAINER)
This commit is contained in:
parent
2deb6bffbf
commit
681877fb30
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=36356
7 changed files with 318 additions and 5 deletions
|
@ -7,22 +7,28 @@
|
|||
|
||||
PORTNAME?= xtt-common
|
||||
PORTVERSION= ${VERSION}.${PATCHLEVEL}
|
||||
PORTREVISION= 1
|
||||
CATEGORIES= x11-servers
|
||||
MASTER_SITES= ${MASTER_SITE_XFREE} \
|
||||
http://X-TT.dsl.gr.jp/dists/1.x/${VERSION}/
|
||||
MASTER_SITE_SUBDIR= 3.3.6
|
||||
MASTER_SITE_SUBDIR= ${XFREE_VERSION}
|
||||
DISTFILES= X336src-1.tgz xtt-${VERSION}.tgz
|
||||
|
||||
PATCH_SITES= ${MASTER_SITE_XFREE:S,%SUBDIR%/source,${XFREE_VERSION}/fixes,}
|
||||
PATCHFILES= fix-01-r128 fix-04-s3trio3d2x fix-05-s3trio3d fix-06-s3trio3d2x\
|
||||
fix-07-s3trio64v2gx+netfinity fix-08-s3savage_ix+mx
|
||||
|
||||
MAINTAINER= taguchi@tohoku.iij.ad.jp
|
||||
|
||||
RUN_DEPENDS+= mkttfdir:${PORTSDIR}/print/perlftlib
|
||||
|
||||
XFREE_VERSION= 3.3.6
|
||||
VERSION= 1.3
|
||||
PATCHLEVEL= 0
|
||||
PATCHLEVEL= 1
|
||||
SERVER?= common
|
||||
INSTALLS_SHLIB= yes
|
||||
.if !defined(USE_SHARED_WRKSRC) && defined(COMPILE_ALL_SERVERS_AT_ONCE)
|
||||
USE_SHARED_WRKSRC= YES
|
||||
USE_SHARED_WRKSRC= YES
|
||||
.endif
|
||||
.if !defined(XDM_DES) && defined(USA_RESIDENT) && ${USA_RESIDENT} == NO
|
||||
MASTER_SITES+= ftp://psych.psy.uq.oz.au/pub/X11R5/ \
|
||||
|
@ -55,8 +61,7 @@ COREPATCHES= shared-libfont-1.2.diff xfs-for-delayed-font-1.0.diff \
|
|||
XTTTARBALL= xtt-core.tar
|
||||
ADDPATCHES= ${XTTDIR}/contribute/xtt-xfsft-lib.patch
|
||||
DOCDIR= ${PREFIX}/share/doc/Xtt
|
||||
PATCH_DIST_ARGS= -d ${WRKDIR} --forward --quiet -E ${PATCH_STRIP}
|
||||
#PATCH_DIST_STRIP= -p1
|
||||
PATCH_DIST_STRIP= -p1
|
||||
|
||||
.include <bsd.port.pre.mk>
|
||||
|
||||
|
|
|
@ -1,3 +1,9 @@
|
|||
MD5 (xc/X336src-1.tgz) = bbfa360d10ce91ab37f24f197a31b485
|
||||
MD5 (xc/xtt-1.3.tgz) = f4c9efdb90d848701c305e2955149920
|
||||
MD5 (xc/fix-01-r128) = a62387e13b970c5a83e9a0822c30344f
|
||||
MD5 (xc/fix-04-s3trio3d2x) = 75569a9d49bb45b8ecb311ab3f8c2469
|
||||
MD5 (xc/fix-05-s3trio3d) = eb8fd33328c8b5fbd0410472339dee44
|
||||
MD5 (xc/fix-06-s3trio3d2x) = 79c4e3f340f1df5786649559d09c2378
|
||||
MD5 (xc/fix-07-s3trio64v2gx+netfinity) = 6b09cc9b7b3d89f18ea5e9591969b99c
|
||||
MD5 (xc/fix-08-s3savage_ix+mx) = 8df8d4b013de9e5f87d028b1bf2415a5
|
||||
MD5 (xc/Wraphelp.c) = IGNORE
|
||||
|
|
9
x11-servers/XttXF86srv-common/files/patch-g
Normal file
9
x11-servers/XttXF86srv-common/files/patch-g
Normal file
|
@ -0,0 +1,9 @@
|
|||
Index: programs/Xserver/hw/xfree86/vga256/drivers/i810/i810_accel.c
|
||||
@@ -39,6 +39,7 @@
|
||||
|
||||
#include <math.h>
|
||||
#include <stdio.h>
|
||||
+#include <sys/types.h>
|
||||
#include <sys/mman.h>
|
||||
#include <signal.h>
|
||||
|
208
x11-servers/XttXF86srv-common/files/patch-i
Normal file
208
x11-servers/XttXF86srv-common/files/patch-i
Normal file
|
@ -0,0 +1,208 @@
|
|||
S3 Savage/MX and Savage/IX patches for XFree86 3.3.6 post fix-08
|
||||
|
||||
http://www.probo.com/timr/savagemx.html
|
||||
|
||||
from: Sun Oct 22 10:12:06 CEST 2000
|
||||
|
||||
--- programs/Xserver/hw/xfree86/vga256/drivers/s3_savage/s3sav_cursor.c.orig Sun Oct 22 09:52:21 2000
|
||||
+++ programs/Xserver/hw/xfree86/vga256/drivers/s3_savage/s3sav_cursor.c Fri Sep 1 22:12:56 2000
|
||||
@@ -250,7 +250,7 @@
|
||||
/* VerticalRetraceWait(); */
|
||||
|
||||
/* turn cursor off */
|
||||
- S3VHideCursor();
|
||||
+ S3SAVHideCursor();
|
||||
|
||||
/* move cursor off-screen */
|
||||
outb(vgaCRIndex, 0x46);
|
||||
--- programs/Xserver/hw/xfree86/vga256/drivers/s3_savage/s3sav_driver.c.orig Sun Oct 22 09:52:21 2000
|
||||
+++ programs/Xserver/hw/xfree86/vga256/drivers/s3_savage/s3sav_driver.c Fri Sep 29 23:19:23 2000
|
||||
@@ -94,6 +94,7 @@
|
||||
static void S3SAVRestore();
|
||||
static void S3SAVAdjust();
|
||||
static void S3SAVFbInit();
|
||||
+static int S3SAVPitchAdjust();
|
||||
void S3SAVSetRead();
|
||||
void S3SAVAccelInit();
|
||||
void S3SAVInitialize2DEngine();
|
||||
@@ -721,12 +722,12 @@
|
||||
|
||||
/* Restore the desired video mode with CR67 */
|
||||
|
||||
- outb(vgaCRIndex, 0x67);
|
||||
#if 0
|
||||
+ outb(vgaCRIndex, 0x67);
|
||||
cr67 = inb(vgaCRReg) & 0xf; /* Possible hardware bug on VX? */
|
||||
-#endif
|
||||
outb(vgaCRReg, 0x50 | cr67);
|
||||
usleep(10000);
|
||||
+#endif
|
||||
outb(vgaCRIndex, 0x67);
|
||||
outb(vgaCRReg, restore->CR67 & ~0x0c); /* Don't enable STREAMS yet */
|
||||
|
||||
@@ -745,9 +746,11 @@
|
||||
outb(vgaCRReg, restore->CR51);
|
||||
|
||||
/* Memory timings */
|
||||
- outb(vgaCRIndex, 0x36);
|
||||
+ outb(vgaCRIndex, 0x36);
|
||||
outb(vgaCRReg, restore->CR36);
|
||||
- outb(vgaCRIndex, 0x68);
|
||||
+ outb(vgaCRIndex, 0x60);
|
||||
+ outb(vgaCRReg, restore->CR60);
|
||||
+ outb(vgaCRIndex, 0x68);
|
||||
outb(vgaCRReg, restore->CR68);
|
||||
outb(vgaCRIndex, 0x69);
|
||||
outb(vgaCRReg, restore->CR69);
|
||||
@@ -764,8 +767,11 @@
|
||||
outb(vgaCRReg, restore->CR90);
|
||||
outb(vgaCRIndex, 0x91);
|
||||
outb(vgaCRReg, restore->CR91);
|
||||
- outb(vgaCRIndex, 0xB0); /* Savage4 config3 */
|
||||
- outb(vgaCRReg, restore->CRB0);
|
||||
+ if( s3vPriv.chip == S3_SAVAGE4 )
|
||||
+ {
|
||||
+ outb(vgaCRIndex, 0xB0); /* Savage4 config3 */
|
||||
+ outb(vgaCRReg, restore->CRB0);
|
||||
+ }
|
||||
|
||||
outb(vgaCRIndex, 0x32);
|
||||
outb(vgaCRReg, restore->CR32);
|
||||
@@ -981,6 +987,8 @@
|
||||
save->CR53 = inb(vgaCRReg);
|
||||
outb(vgaCRIndex, 0x58);
|
||||
save->CR58 = inb(vgaCRReg);
|
||||
+ outb(vgaCRIndex, 0x60);
|
||||
+ save->CR60 = inb(vgaCRReg);
|
||||
outb(vgaCRIndex, 0x66);
|
||||
save->CR66 = inb(vgaCRReg);
|
||||
outb(vgaCRIndex, 0x67);
|
||||
@@ -1135,10 +1143,29 @@
|
||||
}
|
||||
|
||||
|
||||
+/*
|
||||
+ * This function adjusts the pitch to a multiple of 16 pixels.
|
||||
+ */
|
||||
+
|
||||
+static int
|
||||
+S3SAVPitchAdjust( void )
|
||||
+{
|
||||
+ int pitch = vga256InfoRec.virtualX;
|
||||
+
|
||||
+ if( pitch % 16 != 0 )
|
||||
+ {
|
||||
+ pitch = (pitch + 15) & ~15;
|
||||
+
|
||||
+ ErrorF("%s %s: %s: Display width padded to %d bytes.\n",
|
||||
+ XCONFIG_PROBED, vga256InfoRec.name, vga256InfoRec.chipset,
|
||||
+ pitch);
|
||||
+ }
|
||||
+ return pitch;
|
||||
+}
|
||||
+
|
||||
+
|
||||
/*
|
||||
- * This is the main probe function for the virge chipsets.
|
||||
- * Right now, I have taken a shortcut and get most of the info from
|
||||
- * PCI probing.
|
||||
+ * This is the main probe function for the Savage chipsets.
|
||||
*/
|
||||
|
||||
static Bool
|
||||
@@ -1511,6 +1538,8 @@
|
||||
S3V.ChipLinearBase = vga256InfoRec.MemBase;
|
||||
S3V.ChipLinearSize = vga256InfoRec.videoRam * 1024;
|
||||
|
||||
+ vgaSetPitchAdjustHook(S3SAVPitchAdjust);
|
||||
+
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
@@ -1782,9 +1811,9 @@
|
||||
outb(vgaCRIndex, 0x3a);
|
||||
tmp = inb(vgaCRReg);
|
||||
if(!OFLG_ISSET(OPTION_PCI_BURST_ON, &vga256InfoRec.options))
|
||||
- new->CR3A = tmp | 0x95; /* ENH 256, no PCI burst! */
|
||||
+ new->CR3A = tmp | 0x90; /* ENH 256, no PCI burst! */
|
||||
else
|
||||
- new->CR3A = (tmp & 0x7f) | 0x15; /* ENH 256, PCI burst */
|
||||
+ new->CR3A = (tmp & 0x7f) | 0x10; /* ENH 256, PCI burst */
|
||||
|
||||
new->CR53 &= ~0x08; /* Enables MMIO */
|
||||
new->CR31 = 0x8c; /* Dis. 64k window, en. ENH maps */
|
||||
@@ -1806,12 +1835,22 @@
|
||||
|
||||
dclk = vga256InfoRec.clock[mode->Clock];
|
||||
new->CR67 = 0x00; /* Defaults */
|
||||
- new->SR15 = 0x03 | 0x80;
|
||||
+ if( s3vPriv.chip != S3_SAVAGE2000 )
|
||||
+ new->SR15 = 0x03 | 0x80;
|
||||
+ else
|
||||
+ /* One-cycle writes broken on Savage2000? */
|
||||
+ new->SR15 = 0x03;
|
||||
new->SR18 = 0x00;
|
||||
new->CR43 = 0x00;
|
||||
new->CR45 = 0x00;
|
||||
new->CR65 = 0x00;
|
||||
|
||||
+ outb(vgaCRIndex, 0x60);
|
||||
+ new->CR60 = inb(vgaCRReg);
|
||||
+
|
||||
+ if( s3vPriv.chip == S3_SAVAGE_MX )
|
||||
+ new->CR60 = 0x09;
|
||||
+
|
||||
outb(vgaCRIndex, 0x40);
|
||||
new->CR40 = inb(vgaCRReg) & ~0x01;
|
||||
|
||||
@@ -1852,16 +1891,19 @@
|
||||
|
||||
{
|
||||
if (vgaBitsPerPixel == 8) {
|
||||
- if (dclk <= 110000) new->CR67 = 0x00; /* 8bpp, 135MHz */
|
||||
- else new->CR67 = 0x10; /* 8bpp, 220MHz */
|
||||
+ new->CR67 = 0x00; /* 8bpp, 220MHz */
|
||||
}
|
||||
else if ((vgaBitsPerPixel == 16) && (vga256InfoRec.weight.green == 5)) {
|
||||
- if (dclk <= 110000) new->CR67 = 0x20; /* 15bpp, 135MHz */
|
||||
- else new->CR67 = 0x30; /* 15bpp, 220MHz */
|
||||
+ if( s3vPriv.chip == S3_SAVAGE_MX )
|
||||
+ new->CR67 = 0x30; /* 15bpp, 220MHz */
|
||||
+ else
|
||||
+ new->CR67 = 0x20;
|
||||
}
|
||||
else if (vgaBitsPerPixel == 16) {
|
||||
- if (dclk <= 110000) new->CR67 = 0x40; /* 16bpp, 135MHz */
|
||||
- else new->CR67 = 0x50; /* 16bpp, 220MHz */
|
||||
+ if( s3vPriv.chip == S3_SAVAGE_MX )
|
||||
+ new->CR67 = 0x50; /* 16bpp, 220MHz */
|
||||
+ else
|
||||
+ new->CR67 = 0x40;
|
||||
}
|
||||
else if ((vgaBitsPerPixel == 24) || (vgaBitsPerPixel == 32)) {
|
||||
new->CR67 = 0xd0; /* 24bpp, 135MHz */
|
||||
@@ -1967,8 +2009,12 @@
|
||||
else
|
||||
new->CR50 |= 0xC1; /* default to use GlobalBD */
|
||||
|
||||
- new->CR33 = 0x20;
|
||||
+ if( s3vPriv.chip == S3_SAVAGE2000 )
|
||||
+ new->CR33 = 0x08;
|
||||
+ else
|
||||
+ new->CR33 = 0x20;
|
||||
|
||||
+ new->std.CRTC[0x17] = 0xeb;
|
||||
|
||||
/* Now we handle various XConfig memory options and others */
|
||||
|
||||
--- programs/Xserver/hw/xfree86/vga256/drivers/s3_savage/s3sav_driver.h.orig Sun Oct 22 09:52:21 2000
|
||||
+++ programs/Xserver/hw/xfree86/vga256/drivers/s3_savage/s3sav_driver.h Sat Sep 2 02:57:01 2000
|
||||
@@ -25,7 +25,7 @@
|
||||
unsigned char CR31, CR32, CR33, CR34, CR36, CR3A, CR3B, CR3C;
|
||||
unsigned char CR40, CR42, CR43, CR45;
|
||||
unsigned char CR50, CR51, CR53, CR58, CR5B, CR5D, CR5E;
|
||||
- unsigned char CR65, CR66, CR67, CR68, CR69, CR6F; /* Video attrib. */
|
||||
+ unsigned char CR60, CR65, CR66, CR67, CR68, CR69, CR6F; /* Video attrib. */
|
||||
unsigned char CR86, CR88;
|
||||
unsigned char CR90, CR91, CRB0;
|
||||
unsigned char ColorStack[8]; /* S3 hw cursor color stack CR4A/CR4B */
|
21
x11-servers/XttXF86srv-common/files/patch-q
Normal file
21
x11-servers/XttXF86srv-common/files/patch-q
Normal file
|
@ -0,0 +1,21 @@
|
|||
--- programs/Xserver/hw/xfree86/etc/scanpci.c.orig Fri Dec 3 04:43:47 1999
|
||||
+++ programs/Xserver/hw/xfree86/etc/scanpci.c Mon Dec 4 14:14:39 2000
|
||||
@@ -101,7 +101,17 @@
|
||||
#endif
|
||||
#if defined(__FreeBSD__) || defined(__386BSD__)
|
||||
#include <sys/file.h>
|
||||
-#include <machine/console.h>
|
||||
+#if defined(__FreeBSD__)
|
||||
+# include <osreldate.h>
|
||||
+# if __FreeBSD_version >= 410000
|
||||
+# include <sys/consio.h>
|
||||
+# include <sys/kbio.h>
|
||||
+# else
|
||||
+# include <machine/console.h>
|
||||
+# endif
|
||||
+#else
|
||||
+# include <machine/console.h>
|
||||
+#endif
|
||||
#ifndef GCCUSESGAS
|
||||
#define GCCUSESGAS
|
||||
#endif
|
43
x11-servers/XttXF86srv-common/files/patch-r
Normal file
43
x11-servers/XttXF86srv-common/files/patch-r
Normal file
|
@ -0,0 +1,43 @@
|
|||
--- programs/Xserver/hw/xfree86/os-support/xf86_OSlib.h.ORIG Mon Nov 27 13:29 :06 2000
|
||||
+++ programs/Xserver/hw/xfree86/os-support/xf86_OSlib.h Mon Nov 27 14:26:21 2000
|
||||
@@ -461,11 +461,21 @@
|
||||
# endif
|
||||
# ifdef SYSCONS_SUPPORT
|
||||
# define COMPAT_SYSCONS
|
||||
-# if defined(__FreeBSD__) || defined(__NetBSD__) || defined(__OpenBSD__)
|
||||
+# if defined(__NetBSD__) || defined(__OpenBSD__)
|
||||
# include <machine/console.h>
|
||||
# else
|
||||
-# include <sys/console.h>
|
||||
-# endif /* __FreeBSD__ || __NetBSD__ || defined(__OpenBSD__) */
|
||||
+# if defined(__FreeBSD__)
|
||||
+# include <osreldate.h>
|
||||
+# if __FreeBSD_version >= 410000
|
||||
+# include <sys/consio.h>
|
||||
+# include <sys/kbio.h>
|
||||
+# else
|
||||
+# include <machine/console.h>
|
||||
+# endif /* FreeBSD 4.1 RELEASE or lator */
|
||||
+# else
|
||||
+# include <sys/console.h>
|
||||
+# endif
|
||||
+# endif
|
||||
# endif /* SYSCONS_SUPPORT */
|
||||
# if defined(PCVT_SUPPORT)
|
||||
# if !defined(SYSCONS_SUPPORT)
|
||||
@@ -496,8 +506,13 @@
|
||||
# include <dev/wscons/wsconsio.h>
|
||||
# endif /* WSCONS_SUPPORT */
|
||||
# if defined(__FreeBSD__)
|
||||
-# undef MOUSE_GETINFO
|
||||
-# include <machine/mouse.h>
|
||||
+# include <osreldate.h>
|
||||
+# if __FreeBSD_version >= 500013
|
||||
+# include <sys/mouse.h>
|
||||
+# else
|
||||
+# undef MOUSE_GETINFO
|
||||
+# include <machine/mouse.h>
|
||||
+# endif
|
||||
# endif
|
||||
/* Include these definitions in case ioctl_pc.h didn't get included */
|
||||
# ifndef CONSOLE_X_MODE_ON
|
21
x11-servers/XttXF86srv-common/files/patch-s
Normal file
21
x11-servers/XttXF86srv-common/files/patch-s
Normal file
|
@ -0,0 +1,21 @@
|
|||
--- programs/Xserver/hw/xfree86/SuperProbe/OS_386BSD.c.ORIG Mon Nov 27 14:29 :12 2000
|
||||
+++ programs/Xserver/hw/xfree86/SuperProbe/OS_386BSD.c Mon Nov 27 14:37:03 2000
|
||||
@@ -83,7 +83,17 @@
|
||||
# endif
|
||||
# ifdef SYSCONS_SUPPORT
|
||||
/* both, Free and NetBSD have syscons */
|
||||
-# include <machine/console.h>
|
||||
+# if defined(__FreeBSD__)
|
||||
+# include <osreldate.h>
|
||||
+# if __FreeBSD_version >= 410000
|
||||
+# include <sys/consio.h>
|
||||
+# include <sys/kbio.h>
|
||||
+# else
|
||||
+# include <machine/console.h>
|
||||
+# endif
|
||||
+# else
|
||||
+# include <machine/console.h>
|
||||
+# endif
|
||||
# endif
|
||||
# else
|
||||
# ifdef CODRV_SUPPORT
|
Loading…
Reference in a new issue