xserver: Branch 'master' - 2 commits

David Nusinow gravity at kemper.freedesktop.org
Tue May 29 19:05:08 PDT 2007


 hw/xfree86/loader/xf86sym.c             |   51 ++++++++++++++++++++++++++++++++
 hw/xfree86/os-support/hurd/hurd_video.c |   44 +++++++--------------------
 2 files changed, 63 insertions(+), 32 deletions(-)

New commits:
diff-tree 99eae8bea6724a24477375ad5b2d31cc4883cf6b (from 3c6f1428489c1f71acd41066ea73ef4ae7c60f17)
Author: Samuel Thibault <samuel.thibault at ens-lyon.org>
Date:   Tue May 29 22:04:36 2007 -0400

    I/O enable/disable update for the Hurd

diff --git a/hw/xfree86/os-support/hurd/hurd_video.c b/hw/xfree86/os-support/hurd/hurd_video.c
index 45e9a09..b889283 100644
--- a/hw/xfree86/os-support/hurd/hurd_video.c
+++ b/hw/xfree86/os-support/hurd/hurd_video.c
@@ -117,49 +117,29 @@ xf86LinearVidMem()
 /**************************************************************************
  * I/O Permissions section                                                 
  ***************************************************************************/
-mach_port_t io_port;
+
+/*
+ * Due to conflicts with "compiler.h", don't rely on <sys/io.h> to declare
+ * this.
+ */
+extern int ioperm(unsigned long __from, unsigned long __num, int __turn_on);
 
 Bool
 xf86EnableIO()
 {
-    mach_port_t device;
-    kern_return_t err;
-
-    err = get_privileged_ports(NULL, &device);
-    if( err )
-    {
-	errno = err;
-	FatalError("xf86EnableIO() can't get_privileged_ports. (%s)\n",strerror(errno));
-    }
-    err = device_open(device,D_READ|D_WRITE,"io",&io_port);
-    mach_port_deallocate(mach_task_self(), device);
-    if( err )
-    {
-	errno = err;
-	FatalError("xf86EnableIO() can't device_open. (%s)\n",strerror(errno));
-    }
-
-    err = i386_io_port_add(mach_thread_self (), io_port);
-    if( err )
-    {
-	errno = err;
-	FatalError("xf86EnableIO() can't i386_io_port_add.(io_port) (%s)\n",strerror(errno));
+    if (ioperm(0, 0xffff, 1)) {
+	FatalError("xf86EnableIO: ioperm() failed (%s)\n", strerror(errno));
+	return FALSE;
     }
+    ioperm(0x40,4,0); /* trap access to the timer chip */
+    ioperm(0x60,4,0); /* trap access to the keyboard controller */
     return TRUE;
 }
 	
 void
 xf86DisableIO()
 {
-    kern_return_t err;
-
-    err = i386_io_port_remove(mach_thread_self (), io_port);
-    if( err )
-    {
-	errno = err;
-	FatalError("xf86DisableIO() can't i386_io_port_remove.(io_port) (%s)\n",strerror(errno));
-    }
-    mach_port_deallocate(mach_task_self(), io_port);
+    ioperm(0,0xffff,0);
     return;
 }
 
diff-tree 3c6f1428489c1f71acd41066ea73ef4ae7c60f17 (from ee20c481eede0954f4a8bef5113979b101863c32)
Author: Julien Cristau <jcristau at debian.org>
Date:   Tue May 29 22:01:30 2007 -0400

    Make sure that the ramdac symbols are present in the server
    
    The former ramdac module is now built into the server, so its symbols need to
    be explicitly exported to drivers (Debian #423129).

diff --git a/hw/xfree86/loader/xf86sym.c b/hw/xfree86/loader/xf86sym.c
index 5175f01..6535e4c 100644
--- a/hw/xfree86/loader/xf86sym.c
+++ b/hw/xfree86/loader/xf86sym.c
@@ -96,6 +96,11 @@
 #endif
 #include "xf86DDC.h"
 #include "edid.h"
+#include "xf86Cursor.h"
+#include "xf86RamDac.h"
+#include "BT.h"
+#include "IBM.h"
+#include "TI.h"
 
 #ifndef HAS_GLIBC_SIGSETJMP
 #if defined(setjmp) && defined(__GNU_LIBRARY__) && \
@@ -1255,4 +1260,50 @@ _X_HIDDEN void *xfree86LookupTab[] = {
     SYMFUNC(xf86I2CWriteRead)
     SYMFUNC(xf86I2CWriteVec)
     SYMFUNC(xf86I2CWriteWord)
+
+    /* ramdac/xf86RamDac.c */
+    SYMFUNC(RamDacCreateInfoRec)
+    SYMFUNC(RamDacHelperCreateInfoRec)
+    SYMFUNC(RamDacDestroyInfoRec)
+    SYMFUNC(RamDacHelperDestroyInfoRec)
+    SYMFUNC(RamDacInit)
+    SYMFUNC(RamDacHandleColormaps)
+    SYMFUNC(RamDacFreeRec)
+    SYMFUNC(RamDacGetHWIndex)
+    SYMVAR(RamDacHWPrivateIndex)
+    SYMVAR(RamDacScreenPrivateIndex)
+
+    /* ramdac/xf86Cursor.c */
+    SYMFUNC(xf86InitCursor)
+    SYMFUNC(xf86CreateCursorInfoRec)
+    SYMFUNC(xf86DestroyCursorInfoRec)
+    SYMFUNC(xf86ForceHWCursor)
+
+    /* ramdac/BT.c */
+    SYMFUNC(BTramdacProbe)
+    SYMFUNC(BTramdacSave)
+    SYMFUNC(BTramdacRestore)
+    SYMFUNC(BTramdacSetBpp)
+
+    /* ramdac/IBM.c */
+    SYMFUNC(IBMramdacProbe)
+    SYMFUNC(IBMramdacSave)
+    SYMFUNC(IBMramdacRestore)
+    SYMFUNC(IBMramdac526SetBpp)
+    SYMFUNC(IBMramdac640SetBpp)
+    SYMFUNC(IBMramdac526CalculateMNPCForClock)
+    SYMFUNC(IBMramdac640CalculateMNPCForClock)
+    SYMFUNC(IBMramdac526HWCursorInit)
+    SYMFUNC(IBMramdac640HWCursorInit)
+    SYMFUNC(IBMramdac526SetBppWeak)
+
+    /* ramdac/TI.c */
+    SYMFUNC(TIramdacCalculateMNPForClock)
+    SYMFUNC(TIramdacProbe)
+    SYMFUNC(TIramdacSave)
+    SYMFUNC(TIramdacRestore)
+    SYMFUNC(TIramdac3026SetBpp)
+    SYMFUNC(TIramdac3030SetBpp)
+    SYMFUNC(TIramdacHWCursorInit)
+    SYMFUNC(TIramdacLoadPalette)
 };


More information about the xorg-commit mailing list