aboutsummaryrefslogtreecommitdiffstats
path: root/x11
diff options
context:
space:
mode:
authorru <ru@FreeBSD.org>2000-08-02 00:28:26 +0800
committerru <ru@FreeBSD.org>2000-08-02 00:28:26 +0800
commitafca8efd0917dca402abd137c9d6218eae97d7c7 (patch)
treecdf5fc6c17191abb2dc4e7c6527c36c5bb394ec0 /x11
parentb3b0a1ec93724f3741226ea755f29d0dd97b9cdb (diff)
downloadfreebsd-ports-gnome-afca8efd0917dca402abd137c9d6218eae97d7c7.tar.gz
freebsd-ports-gnome-afca8efd0917dca402abd137c9d6218eae97d7c7.tar.zst
freebsd-ports-gnome-afca8efd0917dca402abd137c9d6218eae97d7c7.zip
Now that FreeBSD has native `agpgart' interface,
let X server run on the i810 hardware. Enjoy!!!
Diffstat (limited to 'x11')
-rw-r--r--x11/XFree86-4-libraries/files/patch-i81051
-rw-r--r--x11/XFree86-4/files/patch-d25
-rw-r--r--x11/XFree86-4/files/patch-i81051
-rw-r--r--x11/XFree86-4/pkg-plist3
4 files changed, 127 insertions, 3 deletions
diff --git a/x11/XFree86-4-libraries/files/patch-i810 b/x11/XFree86-4-libraries/files/patch-i810
new file mode 100644
index 000000000000..2c597830f7f5
--- /dev/null
+++ b/x11/XFree86-4-libraries/files/patch-i810
@@ -0,0 +1,51 @@
+Index: programs/Xserver/hw/xfree86/drivers/i810/i810_memory.c
+===================================================================
+RCS file: /cvs/xc/programs/Xserver/hw/xfree86/drivers/i810/i810_memory.c,v
+retrieving revision 1.9
+diff -u -p -r1.9 i810_memory.c
+--- programs/Xserver/hw/xfree86/drivers/i810/i810_memory.c 2000/06/20 05:08:46 1.9
++++ programs/Xserver/hw/xfree86/drivers/i810/i810_memory.c 2000/08/01 12:29:11
+@@ -40,6 +40,10 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ #ifdef linux
+ #include <asm/ioctl.h>
+ #include <linux/agpgart.h>
++#elif defined(__FreeBSD__)
++#include <sys/types.h>
++#include <sys/ioctl.h>
++#include <sys/agpio.h>
+ #endif
+
+ #ifdef XFree86LOADER
+@@ -76,7 +80,7 @@ int I810AllocHigh( I810MemRange *result,
+
+ int I810AllocateGARTMemory( ScrnInfoPtr pScrn )
+ {
+-#ifdef linux
++#if defined(linux) || defined(__FreeBSD__)
+ struct _agp_info agpinf;
+ struct _agp_bind bind;
+ struct _agp_allocate alloc;
+@@ -111,12 +115,14 @@ int I810AllocateGARTMemory( ScrnInfoPtr
+ return FALSE;
+ }
+
++#ifndef __FreeBSD__
+ if (agpinf.version.major != 0 ||
+ agpinf.version.minor != 99) {
+ xf86DrvMsg(pScrn->scrnIndex, X_INFO,
+ "Agp kernel driver version not correct\n");
+ return FALSE;
+ }
++#endif
+
+
+ /* Treat the gart like video memory - we assume we own all that is
+@@ -223,7 +229,7 @@ int I810AllocateGARTMemory( ScrnInfoPtr
+
+ void I810FreeGARTMemory( ScrnInfoPtr pScrn )
+ {
+-#ifdef linux
++#if defined(linux) || defined(__FreeBSD__)
+ I810Ptr pI810 = I810PTR(pScrn);
+
+ if (pI810->gartfd != -1) {
diff --git a/x11/XFree86-4/files/patch-d b/x11/XFree86-4/files/patch-d
index 2e84579ac282..a6f67765d897 100644
--- a/x11/XFree86-4/files/patch-d
+++ b/x11/XFree86-4/files/patch-d
@@ -1,6 +1,25 @@
---- config/cf/FreeBSD.cf.orig Thu Feb 17 18:09:43 2000
-+++ config/cf/FreeBSD.cf Sat Mar 18 19:42:06 2000
-@@ -336,14 +336,14 @@
+--- config/cf/FreeBSD.cf.orig Sat Jun 24 21:15:53 2000
++++ config/cf/FreeBSD.cf Tue Aug 1 15:19:44 2000
+@@ -135,6 +135,18 @@
+ #endif
+ #endif
+
++#ifndef HasAgpGart
++# ifdef i386Architecture
++# if OSMajorVersion >= 5 || (OSMajorVersion == 4 && OSMinorVersion >= 1)
++# define HasAgpGart YES
++# else
++# define HasAgpGart NO
++# endif
++# else
++# define HasAgpGart NO
++# endif
++#endif
++
+ /*
+ * This doesn't work the way it does on every other system. On FreeBSD it's
+ * only a "hint, not a demand", whatever that means. Note that this is not
+@@ -356,14 +368,14 @@
/* The GCC strength-reduce bug is fixed for FreeBSD 2.1.5 and later */
#ifndef DefaultGcc2i386Opt
#if OSMajorVersion > 2 || (OSMajorVersion == 2 && OSMinorVersion > 1) || (OSMajorVersion == 2 && OSMinorVersion == 1 && OSTeenyVersion >= 5)
diff --git a/x11/XFree86-4/files/patch-i810 b/x11/XFree86-4/files/patch-i810
new file mode 100644
index 000000000000..2c597830f7f5
--- /dev/null
+++ b/x11/XFree86-4/files/patch-i810
@@ -0,0 +1,51 @@
+Index: programs/Xserver/hw/xfree86/drivers/i810/i810_memory.c
+===================================================================
+RCS file: /cvs/xc/programs/Xserver/hw/xfree86/drivers/i810/i810_memory.c,v
+retrieving revision 1.9
+diff -u -p -r1.9 i810_memory.c
+--- programs/Xserver/hw/xfree86/drivers/i810/i810_memory.c 2000/06/20 05:08:46 1.9
++++ programs/Xserver/hw/xfree86/drivers/i810/i810_memory.c 2000/08/01 12:29:11
+@@ -40,6 +40,10 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ #ifdef linux
+ #include <asm/ioctl.h>
+ #include <linux/agpgart.h>
++#elif defined(__FreeBSD__)
++#include <sys/types.h>
++#include <sys/ioctl.h>
++#include <sys/agpio.h>
+ #endif
+
+ #ifdef XFree86LOADER
+@@ -76,7 +80,7 @@ int I810AllocHigh( I810MemRange *result,
+
+ int I810AllocateGARTMemory( ScrnInfoPtr pScrn )
+ {
+-#ifdef linux
++#if defined(linux) || defined(__FreeBSD__)
+ struct _agp_info agpinf;
+ struct _agp_bind bind;
+ struct _agp_allocate alloc;
+@@ -111,12 +115,14 @@ int I810AllocateGARTMemory( ScrnInfoPtr
+ return FALSE;
+ }
+
++#ifndef __FreeBSD__
+ if (agpinf.version.major != 0 ||
+ agpinf.version.minor != 99) {
+ xf86DrvMsg(pScrn->scrnIndex, X_INFO,
+ "Agp kernel driver version not correct\n");
+ return FALSE;
+ }
++#endif
+
+
+ /* Treat the gart like video memory - we assume we own all that is
+@@ -223,7 +229,7 @@ int I810AllocateGARTMemory( ScrnInfoPtr
+
+ void I810FreeGARTMemory( ScrnInfoPtr pScrn )
+ {
+-#ifdef linux
++#if defined(linux) || defined(__FreeBSD__)
+ I810Ptr pI810 = I810PTR(pScrn);
+
+ if (pI810->gartfd != -1) {
diff --git a/x11/XFree86-4/pkg-plist b/x11/XFree86-4/pkg-plist
index 6e02afd4775c..8a443ad5c385 100644
--- a/x11/XFree86-4/pkg-plist
+++ b/x11/XFree86-4/pkg-plist
@@ -1654,6 +1654,7 @@ lib/X11/doc/html/glXWaitGL.3.html
lib/X11/doc/html/glXWaitX.3.html
lib/X11/doc/html/glint.4.html
lib/X11/doc/html/i740.4.html
+lib/X11/doc/html/i810.4.html
lib/X11/doc/html/iceauth.1.html
lib/X11/doc/html/ico.1.html
lib/X11/doc/html/imake.1.html
@@ -3234,6 +3235,7 @@ lib/modules/drivers/cyrix_drv.o
lib/modules/drivers/fbdev_drv.o
lib/modules/drivers/glint_drv.o
lib/modules/drivers/i740_drv.o
+lib/modules/drivers/i810_drv.o
lib/modules/drivers/mga_drv.o
lib/modules/drivers/neomagic_drv.o
lib/modules/drivers/nv_drv.o
@@ -4412,6 +4414,7 @@ man/man4/elographics.4.gz
man/man4/fbdev.4.gz
man/man4/glint.4.gz
man/man4/i740.4.gz
+man/man4/i810.4.gz
man/man4/keyboard.4.gz
man/man4/mga.4.gz
man/man4/microtouch.4.gz