Merge branch 'master' into input-hotplug
This commit is contained in:
commit
d6433be3cc
|
@ -174,6 +174,7 @@ dnl glibc backtrace support check (hw/xfree86/common/xf86Events.c)
|
||||||
AC_CHECK_HEADER([execinfo.h],[
|
AC_CHECK_HEADER([execinfo.h],[
|
||||||
AC_CHECK_LIB(c, backtrace, [
|
AC_CHECK_LIB(c, backtrace, [
|
||||||
AC_DEFINE(HAVE_BACKTRACE, 1, [Has backtrace support])
|
AC_DEFINE(HAVE_BACKTRACE, 1, [Has backtrace support])
|
||||||
|
AC_DEFINE(HAVE_EXECINFO_H, 1, [Have execinfo.h])
|
||||||
])]
|
])]
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -1220,6 +1221,10 @@ int main () {
|
||||||
fi
|
fi
|
||||||
AC_SUBST([SOLARIS_ASM_CFLAGS])
|
AC_SUBST([SOLARIS_ASM_CFLAGS])
|
||||||
;;
|
;;
|
||||||
|
gnu*)
|
||||||
|
XORG_OS="gnu"
|
||||||
|
XORG_OS_SUBDIR="hurd"
|
||||||
|
;;
|
||||||
*)
|
*)
|
||||||
XORG_OS="unknown"
|
XORG_OS="unknown"
|
||||||
XORG_OS_SUBDIR="unknown"
|
XORG_OS_SUBDIR="unknown"
|
||||||
|
@ -1742,6 +1747,7 @@ hw/xfree86/os-support/Makefile
|
||||||
hw/xfree86/os-support/bsd/Makefile
|
hw/xfree86/os-support/bsd/Makefile
|
||||||
hw/xfree86/os-support/bus/Makefile
|
hw/xfree86/os-support/bus/Makefile
|
||||||
hw/xfree86/os-support/drm/Makefile
|
hw/xfree86/os-support/drm/Makefile
|
||||||
|
hw/xfree86/os-support/hurd/Makefile
|
||||||
hw/xfree86/os-support/misc/Makefile
|
hw/xfree86/os-support/misc/Makefile
|
||||||
hw/xfree86/os-support/linux/Makefile
|
hw/xfree86/os-support/linux/Makefile
|
||||||
hw/xfree86/os-support/lynxos/Makefile
|
hw/xfree86/os-support/lynxos/Makefile
|
||||||
|
|
|
@ -906,13 +906,7 @@ InitPtrFeedbackClassDeviceStruct(DeviceIntPtr dev, PtrCtrlProcPtr controlProc)
|
||||||
if (!feedc)
|
if (!feedc)
|
||||||
return FALSE;
|
return FALSE;
|
||||||
feedc->CtrlProc = controlProc;
|
feedc->CtrlProc = controlProc;
|
||||||
#ifdef sgi
|
|
||||||
feedc->ctrl.num = 1;
|
|
||||||
feedc->ctrl.den = 1;
|
|
||||||
feedc->ctrl.threshold = 1;
|
|
||||||
#else
|
|
||||||
feedc->ctrl = defaultPointerControl;
|
feedc->ctrl = defaultPointerControl;
|
||||||
#endif
|
|
||||||
feedc->ctrl.id = 0;
|
feedc->ctrl.id = 0;
|
||||||
if ( (feedc->next = dev->ptrfeed) )
|
if ( (feedc->next = dev->ptrfeed) )
|
||||||
feedc->ctrl.id = dev->ptrfeed->ctrl.id + 1;
|
feedc->ctrl.id = dev->ptrfeed->ctrl.id + 1;
|
||||||
|
|
|
@ -3018,7 +3018,7 @@ static void
|
||||||
CheckGenericGA()
|
CheckGenericGA()
|
||||||
{
|
{
|
||||||
/* This needs to be changed for multiple domains */
|
/* This needs to be changed for multiple domains */
|
||||||
#if !defined(__sparc__) && !defined(__powerpc__) && !defined(__mips__) && !defined(__ia64__)
|
#if !defined(__sparc__) && !defined(__powerpc__) && !defined(__mips__) && !defined(__ia64__) && !defined(__arm__) && !defined(__s390__)
|
||||||
IOADDRESS GenericIOBase = VGAHW_GET_IOBASE();
|
IOADDRESS GenericIOBase = VGAHW_GET_IOBASE();
|
||||||
CARD8 CurrentValue, TestValue;
|
CARD8 CurrentValue, TestValue;
|
||||||
|
|
||||||
|
|
|
@ -3,7 +3,7 @@ DRI_SUBDIRS=drm
|
||||||
endif
|
endif
|
||||||
|
|
||||||
SUBDIRS = bus @XORG_OS_SUBDIR@ misc $(DRI_SUBDIRS)
|
SUBDIRS = bus @XORG_OS_SUBDIR@ misc $(DRI_SUBDIRS)
|
||||||
DIST_SUBDIRS = bsd bus drm misc linux lynxos solaris sysv sco usl
|
DIST_SUBDIRS = bsd bus drm misc linux lynxos solaris sysv sco usl hurd
|
||||||
|
|
||||||
sdk_HEADERS = xf86_OSproc.h xf86_OSlib.h xf86_ansic.h xf86_libc.h \
|
sdk_HEADERS = xf86_OSproc.h xf86_OSlib.h xf86_ansic.h xf86_libc.h \
|
||||||
assyntax.h xf86OSmouse.h
|
assyntax.h xf86OSmouse.h
|
||||||
|
|
17
hw/xfree86/os-support/hurd/Makefile.am
Normal file
17
hw/xfree86/os-support/hurd/Makefile.am
Normal file
|
@ -0,0 +1,17 @@
|
||||||
|
noinst_LTLIBRARIES = libhurd.la
|
||||||
|
|
||||||
|
libhurd_la_SOURCES = hurd_init.c hurd_mmap.c \
|
||||||
|
hurd_mouse.c hurd_video.c \
|
||||||
|
$(srcdir)/../shared/VTsw_noop.c \
|
||||||
|
$(srcdir)/../shared/posix_tty.c \
|
||||||
|
$(srcdir)/../shared/libc_wrapper.c \
|
||||||
|
$(srcdir)/../shared/stdResource.c \
|
||||||
|
$(srcdir)/../shared/stdPci.c \
|
||||||
|
$(srcdir)/../shared/sigiostubs.c \
|
||||||
|
$(srcdir)/../shared/pm_noop.c \
|
||||||
|
$(srcdir)/../shared/kmod_noop.c \
|
||||||
|
$(srcdir)/../shared/agp_noop.c
|
||||||
|
|
||||||
|
AM_CFLAGS = -DUSESTDRES -DHAVE_SYSV_IPC $(XORG_CFLAGS) @SERVER_DEFINES@ @LOADER_DEFINES@
|
||||||
|
|
||||||
|
INCLUDES = $(XORG_INCS)
|
90
hw/xfree86/os-support/hurd/hurd_init.c
Normal file
90
hw/xfree86/os-support/hurd/hurd_init.c
Normal file
|
@ -0,0 +1,90 @@
|
||||||
|
/*
|
||||||
|
* Copyright 1997,1998 by UCHIYAMA Yasushi
|
||||||
|
*
|
||||||
|
* Permission to use, copy, modify, distribute, and sell this software and its
|
||||||
|
* documentation for any purpose is hereby granted without fee, provided that
|
||||||
|
* the above copyright notice appear in all copies and that both that
|
||||||
|
* copyright notice and this permission notice appear in supporting
|
||||||
|
* documentation, and that the name of UCHIYAMA Yasushi not be used in
|
||||||
|
* advertising or publicity pertaining to distribution of the software without
|
||||||
|
* specific, written prior permission. UCHIYAMA Yasushi makes no representations
|
||||||
|
* about the suitability of this software for any purpose. It is provided
|
||||||
|
* "as is" without express or implied warranty.
|
||||||
|
*
|
||||||
|
* UCHIYAMA YASUSHI DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
|
||||||
|
* INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
|
||||||
|
* EVENT SHALL UCHIYAMA YASUSHI BE LIABLE FOR ANY SPECIAL, INDIRECT OR
|
||||||
|
* CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
|
||||||
|
* DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
|
||||||
|
* TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||||
|
* PERFORMANCE OF THIS SOFTWARE.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
/* $XFree86: xc/programs/Xserver/hw/xfree86/os-support/hurd/hurd_init.c,v 1.1 1998/08/16 10:25:48 dawes Exp $ */
|
||||||
|
|
||||||
|
#ifdef HAVE_XORG_CONFIG_H
|
||||||
|
#include <xorg-config.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <X11/X.h>
|
||||||
|
|
||||||
|
#include "input.h"
|
||||||
|
#include "scrnintstr.h"
|
||||||
|
|
||||||
|
#include "compiler.h"
|
||||||
|
|
||||||
|
#include "xf86.h"
|
||||||
|
#include "xf86Priv.h"
|
||||||
|
#include "xf86_OSlib.h"
|
||||||
|
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <errno.h>
|
||||||
|
#include <sys/time.h>
|
||||||
|
#include <sys/file.h>
|
||||||
|
#include <assert.h>
|
||||||
|
#include <mach.h>
|
||||||
|
|
||||||
|
int
|
||||||
|
xf86ProcessArgument( int argc,char **argv, int i )
|
||||||
|
{
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
void
|
||||||
|
xf86UseMsg()
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void
|
||||||
|
xf86OpenConsole()
|
||||||
|
{
|
||||||
|
if( serverGeneration == 1 )
|
||||||
|
{
|
||||||
|
kern_return_t err;
|
||||||
|
mach_port_t device;
|
||||||
|
int fd;
|
||||||
|
err = get_privileged_ports( NULL, &device );
|
||||||
|
if( err )
|
||||||
|
{
|
||||||
|
errno = err;
|
||||||
|
FatalError( "xf86KbdInit can't get_privileged_ports. (%s)\n" , strerror(errno) );
|
||||||
|
}
|
||||||
|
mach_port_deallocate (mach_task_self (), device);
|
||||||
|
|
||||||
|
if( ( fd = open( "/dev/kbd" , O_RDONLY|O_NONBLOCK ) ) < 0 )
|
||||||
|
{
|
||||||
|
fprintf( stderr , "Cannot open keyboard (%s)\n",strerror(errno) );
|
||||||
|
exit(1);
|
||||||
|
}
|
||||||
|
xf86Info.consoleFd = fd;
|
||||||
|
}
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
xf86CloseConsole()
|
||||||
|
{
|
||||||
|
close( xf86Info.consoleFd );
|
||||||
|
return;
|
||||||
|
}
|
96
hw/xfree86/os-support/hurd/hurd_mmap.c
Normal file
96
hw/xfree86/os-support/hurd/hurd_mmap.c
Normal file
|
@ -0,0 +1,96 @@
|
||||||
|
/*
|
||||||
|
* Copyright 1997 by UCHIYAMA Yasushi
|
||||||
|
*
|
||||||
|
* Permission to use, copy, modify, distribute, and sell this software and its
|
||||||
|
* documentation for any purpose is hereby granted without fee, provided that
|
||||||
|
* the above copyright notice appear in all copies and that both that
|
||||||
|
* copyright notice and this permission notice appear in supporting
|
||||||
|
* documentation, and that the name of UCHIYAMA Yasushi not be used in
|
||||||
|
* advertising or publicity pertaining to distribution of the software without
|
||||||
|
* specific, written prior permission. UCHIYAMA Yasushi makes no representations
|
||||||
|
* about the suitability of this software for any purpose. It is provided
|
||||||
|
* "as is" without express or implied warranty.
|
||||||
|
*
|
||||||
|
* UCHIYAMA YASUSHI DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
|
||||||
|
* INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
|
||||||
|
* EVENT SHALL UCHIYAMA YASUSHI BE LIABLE FOR ANY SPECIAL, INDIRECT OR
|
||||||
|
* CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
|
||||||
|
* DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
|
||||||
|
* TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||||
|
* PERFORMANCE OF THIS SOFTWARE.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
/* $XFree86$ */
|
||||||
|
#ifdef HAVE_XORG_CONFIG_H
|
||||||
|
#include <xorg-config.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include<mach.h>
|
||||||
|
#include<device/device.h>
|
||||||
|
#include<mach/machine/mach_i386.h>
|
||||||
|
|
||||||
|
#include <X11/X.h>
|
||||||
|
|
||||||
|
#include "xf86.h"
|
||||||
|
#include "xf86Priv.h"
|
||||||
|
#include "xf86_OSlib.h"
|
||||||
|
|
||||||
|
#define BIOS_SIZE 0x20000
|
||||||
|
|
||||||
|
int
|
||||||
|
xf86ReadBIOS(unsigned long Base,unsigned long Offset,unsigned char *Buf,int Len)
|
||||||
|
{
|
||||||
|
mach_port_t device,iopl_dev;
|
||||||
|
memory_object_t iopl_mem;
|
||||||
|
vm_address_t addr = (vm_address_t)0; /* serach starting address */
|
||||||
|
kern_return_t err;
|
||||||
|
|
||||||
|
|
||||||
|
err = get_privileged_ports (NULL, &device);
|
||||||
|
if( err )
|
||||||
|
{
|
||||||
|
errno = err;
|
||||||
|
FatalError("xf86ReadBIOS() can't get_privileged_ports. (%s)\n",strerror(errno));
|
||||||
|
}
|
||||||
|
err = device_open(device,D_READ|D_WRITE,"iopl",&iopl_dev);
|
||||||
|
mach_port_deallocate (mach_task_self (), device);
|
||||||
|
if( err )
|
||||||
|
{
|
||||||
|
errno = err;
|
||||||
|
FatalError("xf86ReadBIOS() can't device_open. (%s)\n",strerror(errno));
|
||||||
|
}
|
||||||
|
err = device_map(iopl_dev,VM_PROT_READ|VM_PROT_WRITE, Base , BIOS_SIZE ,&iopl_mem,0);
|
||||||
|
if( err )
|
||||||
|
{
|
||||||
|
errno = err;
|
||||||
|
FatalError("xf86ReadBIOS() can't device_map. (%s)\n",strerror(errno));
|
||||||
|
}
|
||||||
|
err = vm_map(mach_task_self(),
|
||||||
|
&addr,
|
||||||
|
BIOS_SIZE,
|
||||||
|
0,
|
||||||
|
TRUE,
|
||||||
|
iopl_mem,
|
||||||
|
Base,
|
||||||
|
FALSE,
|
||||||
|
VM_PROT_READ|VM_PROT_WRITE,
|
||||||
|
VM_PROT_READ|VM_PROT_WRITE,
|
||||||
|
VM_INHERIT_SHARE);
|
||||||
|
mach_port_deallocate(mach_task_self(),iopl_mem);
|
||||||
|
if( err )
|
||||||
|
{
|
||||||
|
errno = err;
|
||||||
|
FatalError("xf86ReadBIOS() can't vm_map. (%s)\n",strerror(errno));
|
||||||
|
}
|
||||||
|
|
||||||
|
memcpy(Buf,(void*)((int)addr + Offset), Len);
|
||||||
|
|
||||||
|
err = vm_deallocate(mach_task_self(), addr, BIOS_SIZE);
|
||||||
|
if( err )
|
||||||
|
{
|
||||||
|
errno = err;
|
||||||
|
FatalError("xf86ReadBIOS() can't vm_deallocate. (%s)\n",strerror(errno));
|
||||||
|
}
|
||||||
|
|
||||||
|
return Len;
|
||||||
|
}
|
301
hw/xfree86/os-support/hurd/hurd_mouse.c
Normal file
301
hw/xfree86/os-support/hurd/hurd_mouse.c
Normal file
|
@ -0,0 +1,301 @@
|
||||||
|
/*
|
||||||
|
* Copyright 1997,1998 by UCHIYAMA Yasushi
|
||||||
|
*
|
||||||
|
* Permission to use, copy, modify, distribute, and sell this software and its
|
||||||
|
* documentation for any purpose is hereby granted without fee, provided that
|
||||||
|
* the above copyright notice appear in all copies and that both that
|
||||||
|
* copyright notice and this permission notice appear in supporting
|
||||||
|
* documentation, and that the name of UCHIYAMA Yasushi not be used in
|
||||||
|
* advertising or publicity pertaining to distribution of the software without
|
||||||
|
* specific, written prior permission. UCHIYAMA Yasushi makes no representations
|
||||||
|
* about the suitability of this software for any purpose. It is provided
|
||||||
|
* "as is" without express or implied warranty.
|
||||||
|
*
|
||||||
|
* UCHIYAMA YASUSHI DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
|
||||||
|
* INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
|
||||||
|
* EVENT SHALL UCHIYAMA YASUSHI BE LIABLE FOR ANY SPECIAL, INDIRECT OR
|
||||||
|
* CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
|
||||||
|
* DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
|
||||||
|
* TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||||
|
* PERFORMANCE OF THIS SOFTWARE.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
/* $XFree86: xc/programs/Xserver/hw/xfree86/os-support/hurd/hurd_mouse.c,v 1.7 2000/02/10 22:33:44 dawes Exp $ */
|
||||||
|
|
||||||
|
#define NEED_EVENTS
|
||||||
|
#ifdef HAVE_XORG_CONFIG_H
|
||||||
|
#include <xorg-config.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <X11/X.h>
|
||||||
|
#include <X11/Xproto.h>
|
||||||
|
#include "inputstr.h"
|
||||||
|
#include "scrnintstr.h"
|
||||||
|
#include "mipointer.h"
|
||||||
|
|
||||||
|
#include "xf86.h"
|
||||||
|
#include "xf86Xinput.h"
|
||||||
|
#include "xf86OSmouse.h"
|
||||||
|
#include "xf86_OSlib.h"
|
||||||
|
#include "xisb.h"
|
||||||
|
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <errno.h>
|
||||||
|
#include <sys/time.h>
|
||||||
|
#include <sys/file.h>
|
||||||
|
#include <assert.h>
|
||||||
|
#include <mach.h>
|
||||||
|
#include <sys/ioctl.h>
|
||||||
|
|
||||||
|
typedef unsigned short kev_type; /* kd event type */
|
||||||
|
typedef unsigned char Scancode;
|
||||||
|
|
||||||
|
struct mouse_motion {
|
||||||
|
short mm_deltaX; /* units? */
|
||||||
|
short mm_deltaY;
|
||||||
|
};
|
||||||
|
|
||||||
|
typedef struct {
|
||||||
|
kev_type type; /* see below */
|
||||||
|
struct timeval time; /* timestamp */
|
||||||
|
union { /* value associated with event */
|
||||||
|
boolean_t up; /* MOUSE_LEFT .. MOUSE_RIGHT */
|
||||||
|
Scancode sc; /* KEYBD_EVENT */
|
||||||
|
struct mouse_motion mmotion; /* MOUSE_MOTION */
|
||||||
|
} value;
|
||||||
|
} kd_event;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* kd_event ID's.
|
||||||
|
*/
|
||||||
|
#define MOUSE_LEFT 1 /* mouse left button up/down */
|
||||||
|
#define MOUSE_MIDDLE 2
|
||||||
|
#define MOUSE_RIGHT 3
|
||||||
|
#define MOUSE_MOTION 4 /* mouse motion */
|
||||||
|
#define KEYBD_EVENT 5 /* key up/down */
|
||||||
|
|
||||||
|
#define NUMEVENTS 64
|
||||||
|
|
||||||
|
/*
|
||||||
|
* OsMouseProc --
|
||||||
|
* Handle the initialization, etc. of a mouse
|
||||||
|
*/
|
||||||
|
static int
|
||||||
|
OsMouseProc(DeviceIntPtr pPointer, int what)
|
||||||
|
{
|
||||||
|
InputInfoPtr pInfo;
|
||||||
|
MouseDevPtr pMse;
|
||||||
|
unsigned char map[MSE_MAXBUTTONS + 1];
|
||||||
|
int nbuttons;
|
||||||
|
|
||||||
|
pInfo = pPointer->public.devicePrivate;
|
||||||
|
pMse = pInfo->private;
|
||||||
|
pMse->device = pPointer;
|
||||||
|
|
||||||
|
switch (what) {
|
||||||
|
case DEVICE_INIT:
|
||||||
|
pPointer->public.on = FALSE;
|
||||||
|
|
||||||
|
for (nbuttons = 0; nbuttons < MSE_MAXBUTTONS; ++nbuttons)
|
||||||
|
map[nbuttons + 1] = nbuttons + 1;
|
||||||
|
|
||||||
|
InitPointerDeviceStruct((DevicePtr)pPointer,
|
||||||
|
map,
|
||||||
|
min(pMse->buttons, MSE_MAXBUTTONS),
|
||||||
|
miPointerGetMotionEvents,
|
||||||
|
pMse->Ctrl,
|
||||||
|
miPointerGetMotionBufferSize());
|
||||||
|
|
||||||
|
/* X valuator */
|
||||||
|
xf86InitValuatorAxisStruct(pPointer, 0, 0, -1, 1, 0, 1);
|
||||||
|
xf86InitValuatorDefaults(pPointer, 0);
|
||||||
|
/* Y valuator */
|
||||||
|
xf86InitValuatorAxisStruct(pPointer, 1, 0, -1, 1, 0, 1);
|
||||||
|
xf86InitValuatorDefaults(pPointer, 1);
|
||||||
|
xf86MotionHistoryAllocate(pInfo);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case DEVICE_ON:
|
||||||
|
pInfo->fd = xf86OpenSerial(pInfo->options);
|
||||||
|
if (pInfo->fd == -1)
|
||||||
|
xf86Msg(X_WARNING, "%s: cannot open input device\n", pInfo->name);
|
||||||
|
else {
|
||||||
|
pMse->buffer = XisbNew(pInfo->fd,
|
||||||
|
NUMEVENTS * sizeof(kd_event));
|
||||||
|
if (!pMse->buffer) {
|
||||||
|
xfree(pMse);
|
||||||
|
xf86CloseSerial(pInfo->fd);
|
||||||
|
pInfo->fd = -1;
|
||||||
|
} else {
|
||||||
|
xf86FlushInput(pInfo->fd);
|
||||||
|
AddEnabledDevice(pInfo->fd);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
pMse->lastButtons = 0;
|
||||||
|
pMse->lastMappedButtons = 0;
|
||||||
|
pMse->emulateState = 0;
|
||||||
|
pPointer->public.on = TRUE;
|
||||||
|
break;
|
||||||
|
|
||||||
|
case DEVICE_OFF:
|
||||||
|
case DEVICE_CLOSE:
|
||||||
|
if (pInfo->fd != -1) {
|
||||||
|
RemoveEnabledDevice(pInfo->fd);
|
||||||
|
if (pMse->buffer) {
|
||||||
|
XisbFree(pMse->buffer);
|
||||||
|
pMse->buffer = NULL;
|
||||||
|
}
|
||||||
|
xf86CloseSerial(pInfo->fd);
|
||||||
|
pInfo->fd = -1;
|
||||||
|
}
|
||||||
|
pPointer->public.on = FALSE;
|
||||||
|
usleep(300000);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
return Success;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* OsMouseReadInput --
|
||||||
|
* Get some events from our queue. Process all outstanding events now.
|
||||||
|
*/
|
||||||
|
static void
|
||||||
|
OsMouseReadInput(InputInfoPtr pInfo)
|
||||||
|
{
|
||||||
|
MouseDevPtr pMse;
|
||||||
|
static kd_event eventList[NUMEVENTS];
|
||||||
|
int n, c;
|
||||||
|
kd_event *event = eventList;
|
||||||
|
unsigned char *pBuf;
|
||||||
|
|
||||||
|
pMse = pInfo->private;
|
||||||
|
|
||||||
|
XisbBlockDuration(pMse->buffer, -1);
|
||||||
|
pBuf = (unsigned char *)eventList;
|
||||||
|
n = 0;
|
||||||
|
while ((c = XisbRead(pMse->buffer)) >= 0 && n < sizeof(eventList))
|
||||||
|
pBuf[n++] = (unsigned char)c;
|
||||||
|
|
||||||
|
if (n == 0)
|
||||||
|
return;
|
||||||
|
|
||||||
|
n /= sizeof(kd_event);
|
||||||
|
while( n-- ) {
|
||||||
|
int buttons = pMse->lastButtons;
|
||||||
|
int dx = 0, dy = 0;
|
||||||
|
switch (event->type) {
|
||||||
|
case MOUSE_RIGHT:
|
||||||
|
buttons = buttons & 6 |(event->value.up ? 0 : 1);
|
||||||
|
break;
|
||||||
|
case MOUSE_MIDDLE:
|
||||||
|
buttons = buttons & 5 |(event->value.up ? 0 : 2);
|
||||||
|
break;
|
||||||
|
case MOUSE_LEFT:
|
||||||
|
buttons = buttons & 3 |(event->value.up ? 0 : 4) ;
|
||||||
|
break;
|
||||||
|
case MOUSE_MOTION:
|
||||||
|
dx = event->value.mmotion.mm_deltaX;
|
||||||
|
dy = - event->value.mmotion.mm_deltaY;
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
ErrorF("Bad mouse event (%d)\n",event->type);
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
pMse->PostEvent(pInfo, buttons, dx, dy, 0, 0);
|
||||||
|
++event;
|
||||||
|
}
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
static Bool
|
||||||
|
OsMousePreInit(InputInfoPtr pInfo, const char *protocol, int flags)
|
||||||
|
{
|
||||||
|
MouseDevPtr pMse;
|
||||||
|
|
||||||
|
/* This is called when the protocol is "OSMouse". */
|
||||||
|
|
||||||
|
pMse = pInfo->private;
|
||||||
|
pMse->protocol = protocol;
|
||||||
|
xf86Msg(X_CONFIG, "%s: Protocol: %s\n", pInfo->name, protocol);
|
||||||
|
|
||||||
|
/* Collect the options, and process the common options. */
|
||||||
|
xf86CollectInputOptions(pInfo, NULL, NULL);
|
||||||
|
xf86ProcessCommonOptions(pInfo, pInfo->options);
|
||||||
|
|
||||||
|
/* Check if the device can be opened. */
|
||||||
|
pInfo->fd = xf86OpenSerial(pInfo->options);
|
||||||
|
if (pInfo->fd == -1) {
|
||||||
|
if (xf86GetAllowMouseOpenFail())
|
||||||
|
xf86Msg(X_WARNING, "%s: cannot open input device\n", pInfo->name);
|
||||||
|
else {
|
||||||
|
xf86Msg(X_ERROR, "%s: cannot open input device\n", pInfo->name);
|
||||||
|
xfree(pMse);
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
xf86CloseSerial(pInfo->fd);
|
||||||
|
pInfo->fd = -1;
|
||||||
|
|
||||||
|
/* Process common mouse options (like Emulate3Buttons, etc). */
|
||||||
|
pMse->CommonOptions(pInfo);
|
||||||
|
|
||||||
|
/* Setup the local procs. */
|
||||||
|
pInfo->device_control = OsMouseProc;
|
||||||
|
pInfo->read_input = OsMouseReadInput;
|
||||||
|
|
||||||
|
pInfo->flags |= XI86_CONFIGURED;
|
||||||
|
return TRUE;
|
||||||
|
}
|
||||||
|
|
||||||
|
static int
|
||||||
|
SupportedInterfaces(void)
|
||||||
|
{
|
||||||
|
/* XXX Need to check this. */
|
||||||
|
return MSE_SERIAL | MSE_BUS | MSE_PS2 | MSE_XPS2 | MSE_AUTO;
|
||||||
|
}
|
||||||
|
|
||||||
|
static const char *internalNames[] = {
|
||||||
|
"OSMouse",
|
||||||
|
NULL
|
||||||
|
};
|
||||||
|
|
||||||
|
static const char **
|
||||||
|
BuiltinNames(void)
|
||||||
|
{
|
||||||
|
return internalNames;
|
||||||
|
}
|
||||||
|
|
||||||
|
static Bool
|
||||||
|
CheckProtocol(const char *protocol)
|
||||||
|
{
|
||||||
|
int i;
|
||||||
|
|
||||||
|
for (i = 0; internalNames[i]; i++)
|
||||||
|
if (xf86NameCmp(protocol, internalNames[i]) == 0)
|
||||||
|
return TRUE;
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* XXX Is this appropriate? If not, this function should be removed. */
|
||||||
|
static const char *
|
||||||
|
DefaultProtocol(void)
|
||||||
|
{
|
||||||
|
return "OSMouse";
|
||||||
|
}
|
||||||
|
|
||||||
|
OSMouseInfoPtr
|
||||||
|
xf86OSMouseInit(int flags)
|
||||||
|
{
|
||||||
|
OSMouseInfoPtr p;
|
||||||
|
|
||||||
|
p = xcalloc(sizeof(OSMouseInfoRec), 1);
|
||||||
|
if (!p)
|
||||||
|
return NULL;
|
||||||
|
p->SupportedInterfaces = SupportedInterfaces;
|
||||||
|
p->BuiltinNames = BuiltinNames;
|
||||||
|
p->DefaultProtocol = DefaultProtocol;
|
||||||
|
p->CheckProtocol = CheckProtocol;
|
||||||
|
p->PreInit = OsMousePreInit;
|
||||||
|
return p;
|
||||||
|
}
|
||||||
|
|
191
hw/xfree86/os-support/hurd/hurd_video.c
Normal file
191
hw/xfree86/os-support/hurd/hurd_video.c
Normal file
|
@ -0,0 +1,191 @@
|
||||||
|
/*
|
||||||
|
* Copyright 1997, 1998 by UCHIYAMA Yasushi
|
||||||
|
*
|
||||||
|
* Permission to use, copy, modify, distribute, and sell this software and its
|
||||||
|
* documentation for any purpose is hereby granted without fee, provided that
|
||||||
|
* the above copyright notice appear in all copies and that both that
|
||||||
|
* copyright notice and this permission notice appear in supporting
|
||||||
|
* documentation, and that the name of UCHIYAMA Yasushi not be used in
|
||||||
|
* advertising or publicity pertaining to distribution of the software without
|
||||||
|
* specific, written prior permission. UCHIYAMA Yasushi makes no representations
|
||||||
|
* about the suitability of this software for any purpose. It is provided
|
||||||
|
* "as is" without express or implied warranty.
|
||||||
|
*
|
||||||
|
* UCHIYAMA YASUSHI DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
|
||||||
|
* INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
|
||||||
|
* EVENT SHALL UCHIYAMA YASUSHI BE LIABLE FOR ANY SPECIAL, INDIRECT OR
|
||||||
|
* CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
|
||||||
|
* DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
|
||||||
|
* TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||||
|
* PERFORMANCE OF THIS SOFTWARE.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
/* $XFree86: xc/programs/Xserver/hw/xfree86/os-support/hurd/hurd_video.c,v 1.3 1999/04/29 12:24:52 dawes Exp $ */
|
||||||
|
|
||||||
|
#ifdef HAVE_XORG_CONFIG_H
|
||||||
|
#include <xorg-config.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <mach.h>
|
||||||
|
#include <device/device.h>
|
||||||
|
#include <mach/machine/mach_i386.h>
|
||||||
|
|
||||||
|
#include <X11/X.h>
|
||||||
|
#include "input.h"
|
||||||
|
#include "scrnintstr.h"
|
||||||
|
|
||||||
|
#include "xf86.h"
|
||||||
|
#include "xf86Priv.h"
|
||||||
|
#include "xf86_OSlib.h"
|
||||||
|
#include "xf86OSpriv.h"
|
||||||
|
|
||||||
|
/**************************************************************************
|
||||||
|
* Video Memory Mapping section
|
||||||
|
***************************************************************************/
|
||||||
|
pointer
|
||||||
|
xf86MapVidMem(int ScreenNum,int Flags, unsigned long Base, unsigned long Size)
|
||||||
|
{
|
||||||
|
mach_port_t device,iopl_dev;
|
||||||
|
memory_object_t iopl_mem;
|
||||||
|
kern_return_t err;
|
||||||
|
vm_address_t addr=(vm_address_t)0;
|
||||||
|
|
||||||
|
err = get_privileged_ports (NULL, &device);
|
||||||
|
if( err )
|
||||||
|
{
|
||||||
|
errno = err;
|
||||||
|
FatalError("xf86MapVidMem() can't get_privileged_ports. (%s)\n",strerror(errno));
|
||||||
|
}
|
||||||
|
err = device_open(device,D_READ|D_WRITE,"iopl",&iopl_dev);
|
||||||
|
mach_port_deallocate (mach_task_self(), device);
|
||||||
|
if( err )
|
||||||
|
{
|
||||||
|
errno = err;
|
||||||
|
FatalError("xf86MapVidMem() can't device_open. (%s)\n",strerror(errno));
|
||||||
|
}
|
||||||
|
|
||||||
|
err = device_map(iopl_dev,VM_PROT_READ|VM_PROT_WRITE, Base , Size ,&iopl_mem,0);
|
||||||
|
if( err )
|
||||||
|
{
|
||||||
|
errno = err;
|
||||||
|
FatalError("xf86MapVidMem() can't device_map. (%s)\n",strerror(errno));
|
||||||
|
}
|
||||||
|
err = vm_map(mach_task_self(),
|
||||||
|
&addr,
|
||||||
|
Size,
|
||||||
|
0, /* mask */
|
||||||
|
TRUE, /* anywhere */
|
||||||
|
iopl_mem,
|
||||||
|
(vm_offset_t)Base,
|
||||||
|
FALSE, /* copy on write */
|
||||||
|
VM_PROT_READ|VM_PROT_WRITE,
|
||||||
|
VM_PROT_READ|VM_PROT_WRITE,
|
||||||
|
VM_INHERIT_SHARE);
|
||||||
|
mach_port_deallocate(mach_task_self(),iopl_mem);
|
||||||
|
if( err )
|
||||||
|
{
|
||||||
|
errno = err;
|
||||||
|
FatalError("xf86MapVidMem() can't vm_map.(iopl_mem) (%s)\n",strerror(errno));
|
||||||
|
}
|
||||||
|
mach_port_deallocate(mach_task_self(),iopl_dev);
|
||||||
|
if( err )
|
||||||
|
{
|
||||||
|
errno = err;
|
||||||
|
FatalError("xf86MapVidMem() can't mach_port_deallocate.(iopl_dev) (%s)\n",strerror(errno));
|
||||||
|
}
|
||||||
|
return (pointer)addr;
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
xf86UnMapVidMem(int ScreenNum,pointer Base,unsigned long Size)
|
||||||
|
{
|
||||||
|
kern_return_t err = vm_deallocate(mach_task_self(), (int)Base, Size);
|
||||||
|
if( err )
|
||||||
|
{
|
||||||
|
errno = err;
|
||||||
|
ErrorF("xf86UnMapVidMem: can't dealloc framebuffer space (%s)\n",strerror(errno));
|
||||||
|
}
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
Bool
|
||||||
|
xf86LinearVidMem()
|
||||||
|
{
|
||||||
|
return(TRUE);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**************************************************************************
|
||||||
|
* I/O Permissions section
|
||||||
|
***************************************************************************/
|
||||||
|
mach_port_t io_port;
|
||||||
|
|
||||||
|
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));
|
||||||
|
}
|
||||||
|
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);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**************************************************************************
|
||||||
|
* Interrupt Handling section
|
||||||
|
**************************************************************************/
|
||||||
|
Bool
|
||||||
|
xf86DisableInterrupts()
|
||||||
|
{
|
||||||
|
return TRUE;
|
||||||
|
}
|
||||||
|
void
|
||||||
|
xf86EnableInterrupts()
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
xf86MapReadSideEffects(int ScreenNum, int Flags, pointer Base,
|
||||||
|
unsigned long Size)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
Bool
|
||||||
|
xf86CheckMTRR(int s)
|
||||||
|
{
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
|
|
@ -464,7 +464,7 @@ mapVidMem(int ScreenNum, unsigned long Base, unsigned long Size, int flags)
|
||||||
Base,realBase,alignOff);
|
Base,realBase,alignOff);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if defined(__ia64__)
|
#if defined(__ia64__) || defined(__arm__) || defined(__s390__)
|
||||||
#ifndef MAP_WRITECOMBINED
|
#ifndef MAP_WRITECOMBINED
|
||||||
#define MAP_WRITECOMBINED 0x00010000
|
#define MAP_WRITECOMBINED 0x00010000
|
||||||
#endif
|
#endif
|
||||||
|
@ -594,7 +594,7 @@ xf86DisableIO(void)
|
||||||
#if defined(__powerpc__)
|
#if defined(__powerpc__)
|
||||||
munmap(ioBase, 0x20000);
|
munmap(ioBase, 0x20000);
|
||||||
ioBase = NULL;
|
ioBase = NULL;
|
||||||
#elif !defined(__mc68000__) && !defined(__sparc__) && !defined(__mips__) && !defined(__sh__) && !defined(__hppa__)
|
#elif !defined(__mc68000__) && !defined(__sparc__) && !defined(__mips__) && !defined(__sh__) && !defined(__hppa__) && !defined(__arm__) && !defined(__s390__)
|
||||||
iopl(0);
|
iopl(0);
|
||||||
ioperm(0, 1024, 0);
|
ioperm(0, 1024, 0);
|
||||||
#endif
|
#endif
|
||||||
|
@ -613,12 +613,12 @@ xf86DisableIO(void)
|
||||||
_X_EXPORT Bool
|
_X_EXPORT Bool
|
||||||
xf86DisableInterrupts()
|
xf86DisableInterrupts()
|
||||||
{
|
{
|
||||||
#if !defined(__mc68000__) && !defined(__powerpc__) && !defined(__sparc__) && !defined(__mips__) && !defined(__ia64__) && !defined(__sh__) && !defined(__hppa__)
|
#if !defined(__mc68000__) && !defined(__powerpc__) && !defined(__sparc__) && !defined(__mips__) && !defined(__ia64__) && !defined(__sh__) && !defined(__hppa__) && !defined(__arm__) && !defined(__s390__)
|
||||||
if (!ExtendedEnabled)
|
if (!ExtendedEnabled)
|
||||||
if (iopl(3) || ioperm(0, 1024, 1))
|
if (iopl(3) || ioperm(0, 1024, 1))
|
||||||
return (FALSE);
|
return (FALSE);
|
||||||
#endif
|
#endif
|
||||||
#if defined(__alpha__) || defined(__mc68000__) || defined(__powerpc__) || defined(__sparc__) || defined(__mips__) || defined(__arm__) || defined(__sh__) || defined(__ia64__) || defined(__hppa__)
|
#if defined(__alpha__) || defined(__mc68000__) || defined(__powerpc__) || defined(__sparc__) || defined(__mips__) || defined(__arm__) || defined(__sh__) || defined(__ia64__) || defined(__hppa__) || defined(__s390__)
|
||||||
#else
|
#else
|
||||||
# ifdef __GNUC__
|
# ifdef __GNUC__
|
||||||
# if defined(__ia64__)
|
# if defined(__ia64__)
|
||||||
|
@ -632,7 +632,7 @@ xf86DisableInterrupts()
|
||||||
asm("cli");
|
asm("cli");
|
||||||
# endif
|
# endif
|
||||||
#endif
|
#endif
|
||||||
#if !defined(__mc68000__) && !defined(__powerpc__) && !defined(__sparc__) && !defined(__mips__) && !defined(__sh__) && !defined(__ia64__) && !defined(__hppa__)
|
#if !defined(__mc68000__) && !defined(__powerpc__) && !defined(__sparc__) && !defined(__mips__) && !defined(__sh__) && !defined(__ia64__) && !defined(__hppa__) && !defined(__arm__) && !defined(__s390__)
|
||||||
if (!ExtendedEnabled) {
|
if (!ExtendedEnabled) {
|
||||||
iopl(0);
|
iopl(0);
|
||||||
ioperm(0, 1024, 0);
|
ioperm(0, 1024, 0);
|
||||||
|
@ -645,12 +645,12 @@ xf86DisableInterrupts()
|
||||||
_X_EXPORT void
|
_X_EXPORT void
|
||||||
xf86EnableInterrupts()
|
xf86EnableInterrupts()
|
||||||
{
|
{
|
||||||
#if !defined(__mc68000__) && !defined(__powerpc__) && !defined(__sparc__) && !defined(__mips__) && !defined(__ia64__) && !defined(__sh__) && !defined(__hppa__)
|
#if !defined(__mc68000__) && !defined(__powerpc__) && !defined(__sparc__) && !defined(__mips__) && !defined(__ia64__) && !defined(__sh__) && !defined(__hppa__) && !defined(__arm__) && !defined(__s390__)
|
||||||
if (!ExtendedEnabled)
|
if (!ExtendedEnabled)
|
||||||
if (iopl(3) || ioperm(0, 1024, 1))
|
if (iopl(3) || ioperm(0, 1024, 1))
|
||||||
return;
|
return;
|
||||||
#endif
|
#endif
|
||||||
#if defined(__alpha__) || defined(__mc68000__) || defined(__powerpc__) || defined(__sparc__) || defined(__mips__) || defined(__arm__) || defined(__sh__) || defined(__ia64__) || defined(__hppa__)
|
#if defined(__alpha__) || defined(__mc68000__) || defined(__powerpc__) || defined(__sparc__) || defined(__mips__) || defined(__arm__) || defined(__sh__) || defined(__ia64__) || defined(__hppa__) || defined(__s390__)
|
||||||
#else
|
#else
|
||||||
# ifdef __GNUC__
|
# ifdef __GNUC__
|
||||||
# if defined(__ia64__)
|
# if defined(__ia64__)
|
||||||
|
@ -664,7 +664,7 @@ xf86EnableInterrupts()
|
||||||
asm("sti");
|
asm("sti");
|
||||||
# endif
|
# endif
|
||||||
#endif
|
#endif
|
||||||
#if !defined(__mc68000__) && !defined(__powerpc__) && !defined(__sparc__) && !defined(__mips__) && !defined(__sh__) && !defined(__ia64__) && !defined(__hppa__)
|
#if !defined(__mc68000__) && !defined(__powerpc__) && !defined(__sparc__) && !defined(__mips__) && !defined(__sh__) && !defined(__ia64__) && !defined(__hppa__) && !defined(__arm__) && !defined(__s390__)
|
||||||
if (!ExtendedEnabled) {
|
if (!ExtendedEnabled) {
|
||||||
iopl(0);
|
iopl(0);
|
||||||
ioperm(0, 1024, 0);
|
ioperm(0, 1024, 0);
|
||||||
|
|
|
@ -175,7 +175,7 @@ typedef struct _vgaHWRec {
|
||||||
#define BITS_PER_GUN 6
|
#define BITS_PER_GUN 6
|
||||||
#define COLORMAP_SIZE 256
|
#define COLORMAP_SIZE 256
|
||||||
|
|
||||||
#if defined(__powerpc__)
|
#if defined(__powerpc__) || defined(__arm__) || defined(__s390__)
|
||||||
#define DACDelay(hw) /* No legacy VGA support */
|
#define DACDelay(hw) /* No legacy VGA support */
|
||||||
#else
|
#else
|
||||||
#define DACDelay(hw) \
|
#define DACDelay(hw) \
|
||||||
|
|
|
@ -109,4 +109,7 @@
|
||||||
/* Name of the period field in struct kbd_repeat */
|
/* Name of the period field in struct kbd_repeat */
|
||||||
#undef LNX_KBD_PERIOD_NAME
|
#undef LNX_KBD_PERIOD_NAME
|
||||||
|
|
||||||
|
/* Have execinfo.h */
|
||||||
|
#undef HAVE_EXECINFO_H
|
||||||
|
|
||||||
#endif /* _XORG_CONFIG_H_ */
|
#endif /* _XORG_CONFIG_H_ */
|
||||||
|
|
|
@ -271,10 +271,6 @@ long Memory_fail = 0;
|
||||||
#include <stdlib.h> /* for random() */
|
#include <stdlib.h> /* for random() */
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef sgi
|
|
||||||
int userdefinedfontpath = 0;
|
|
||||||
#endif /* sgi */
|
|
||||||
|
|
||||||
char *dev_tty_from_init = NULL; /* since we need to parse it anyway */
|
char *dev_tty_from_init = NULL; /* since we need to parse it anyway */
|
||||||
|
|
||||||
OsSigHandlerPtr
|
OsSigHandlerPtr
|
||||||
|
@ -843,9 +839,6 @@ ProcessCommandLine(int argc, char *argv[])
|
||||||
{
|
{
|
||||||
if(++i < argc)
|
if(++i < argc)
|
||||||
{
|
{
|
||||||
#ifdef sgi
|
|
||||||
userdefinedfontpath = 1;
|
|
||||||
#endif /* sgi */
|
|
||||||
defaultFontPath = argv[i];
|
defaultFontPath = argv[i];
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
|
|
@ -150,11 +150,7 @@ unsigned ndx;
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
ErrorF("unknown key behavior 0x%04x\n",behavior.type);
|
ErrorF("unknown key behavior 0x%04x\n",behavior.type);
|
||||||
#if defined(MetroLink)
|
|
||||||
return;
|
|
||||||
#else
|
|
||||||
break;
|
break;
|
||||||
#endif
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
XkbHandleActions(keybd,keybd,xE,count);
|
XkbHandleActions(keybd,keybd,xE,count);
|
||||||
|
|
Loading…
Reference in New Issue
Block a user