[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

xorg-server: Changes to 'upstream-experimental'



 hw/xfree86/common/xf86Events.c          |   28 -----------------
 hw/xfree86/loader/xf86sym.c             |   51 ++++++++++++++++++++++++++++++++
 hw/xfree86/os-support/bsd/bsd_bell.c    |    4 +-
 hw/xfree86/os-support/hurd/hurd_video.c |   44 +++++++--------------------
 4 files changed, 65 insertions(+), 62 deletions(-)

New commits:
commit 99eae8bea6724a24477375ad5b2d31cc4883cf6b
Author: Samuel Thibault <samuel.thibault@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;
 }
 

commit 3c6f1428489c1f71acd41066ea73ef4ae7c60f17
Author: Julien Cristau <jcristau@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)
 };

commit ee20c481eede0954f4a8bef5113979b101863c32
Author: Matthieu Herrb <matthieu@deville.herrb.com>
Date:   Tue May 29 14:54:27 2007 -0600

    Remove wscons keyboard handling stuff that doesn't belong there anymore.

diff --git a/hw/xfree86/common/xf86Events.c b/hw/xfree86/common/xf86Events.c
index 3610c17..4da74e5 100644
--- a/hw/xfree86/common/xf86Events.c
+++ b/hw/xfree86/common/xf86Events.c
@@ -1208,31 +1208,3 @@ _X_EXPORT void
 DDXRingBell(int volume, int pitch, int duration) {
     xf86OSRingBell(volume, pitch, duration);
 }
-
-#ifdef WSCONS_SUPPORT
-
-/* XXX Currently XKB is mandatory. */
-
-extern int WSKbdToKeycode(int);
-
-void
-xf86PostWSKbdEvent(struct wscons_event *event)
-{
-  int type = event->type;
-  int value = event->value;
-  unsigned int keycode;
-  int blocked;
-
-  if (type == WSCONS_EVENT_KEY_UP || type == WSCONS_EVENT_KEY_DOWN) {
-    Bool down = (type == WSCONS_EVENT_KEY_DOWN ? TRUE : FALSE);
-
-    /* map the scancodes to standard XFree86 scancode */  	
-    keycode = WSKbdToKeycode(value);
-    if (!down) keycode |= 0x80;
-    /* It seems better to block SIGIO there */
-    blocked = xf86BlockSIGIO();
-    xf86PostKbdEvent(keycode);
-    xf86UnblockSIGIO(blocked);
-  }
-}
-#endif /* WSCONS_SUPPORT */

commit 3a6549a163aba26bf4ac58b050c493fba0df14c6
Author: Matthieu Herrb <matthieu@deville.herrb.com>
Date:   Tue May 29 12:14:23 2007 -0600

    Make this build on OpenBSD

diff --git a/hw/xfree86/os-support/bsd/bsd_bell.c b/hw/xfree86/os-support/bsd/bsd_bell.c
index b7a0c48..0d24201 100644
--- a/hw/xfree86/os-support/bsd/bsd_bell.c
+++ b/hw/xfree86/os-support/bsd/bsd_bell.c
@@ -27,7 +27,7 @@
 #include <xorg-config.h>
 #endif
 
-#if defined (SYSCONS_SUPPORT) || defined (PCVT_SUPPORT)
+#if defined (SYSCONS_SUPPORT)
 #include <sys/kbio.h>
 #endif
 
@@ -77,7 +77,7 @@ xf86OSRingBell(int loudness, int pitch, int duration)
                         wsb.pitch = pitch;
                         wsb.period = duration;
                         wsb.volume = loudness;
-                        ioctl(KBD_FD(xf86Info), WSKBDIO_COMPLEXBELL,
+                        ioctl(xf86Info.consoleFd, WSKBDIO_COMPLEXBELL,
                                       &wsb);
                         break;
 #endif



Reply to: