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) {
