kdrive: dont try MTRR on non-x86, fix backspace mapping

This commit is contained in:
Keith Packard 2000-12-08 23:04:57 +00:00
parent d09a156d92
commit ec4916836c
2 changed files with 11 additions and 5 deletions

View File

@ -1,5 +1,5 @@
/* /*
* $XFree86$ * $XFree86: xc/programs/Xserver/hw/kdrive/linux/keyboard.c,v 1.4 2000/10/10 14:05:48 tsi Exp $
* *
* Copyright © 1999 Keith Packard * Copyright © 1999 Keith Packard
* *
@ -64,7 +64,7 @@ static const KeySym linux_to_x[256] = {
XK_p, XK_q, XK_r, XK_s, XK_p, XK_q, XK_r, XK_s,
XK_t, XK_u, XK_v, XK_w, XK_t, XK_u, XK_v, XK_w,
XK_x, XK_y, XK_z, XK_braceleft, XK_x, XK_y, XK_z, XK_braceleft,
XK_bar, XK_braceright, XK_asciitilde, XK_Delete, XK_bar, XK_braceright, XK_asciitilde, XK_BackSpace,
NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol,
NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol,
NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol, NoSymbol,

View File

@ -26,6 +26,12 @@
#include "kdrive.h" #include "kdrive.h"
#ifdef linux #ifdef linux
#ifdef __i386__
#define HAS_MTRR
#endif
#endif
#ifdef HAS_MTRR
#include <errno.h> #include <errno.h>
#include <unistd.h> #include <unistd.h>
#include <sys/mman.h> #include <sys/mman.h>
@ -91,14 +97,14 @@ KdUnmapDevice (void *addr, CARD32 size)
#endif #endif
} }
#ifdef linux #ifdef HAS_MTRR
static int mtrr; static int mtrr;
#endif #endif
void void
KdSetMappedMode (CARD32 addr, CARD32 size, int mode) KdSetMappedMode (CARD32 addr, CARD32 size, int mode)
{ {
#ifdef linux #ifdef HAS_MTRR
struct mtrr_sentry sentry; struct mtrr_sentry sentry;
unsigned long base, bound; unsigned long base, bound;
unsigned int type; unsigned int type;
@ -131,7 +137,7 @@ KdSetMappedMode (CARD32 addr, CARD32 size, int mode)
void void
KdResetMappedMode (CARD32 addr, CARD32 size, int mode) KdResetMappedMode (CARD32 addr, CARD32 size, int mode)
{ {
#ifdef linux #ifdef HAS_MTRR
struct mtrr_sentry sentry; struct mtrr_sentry sentry;
unsigned long base, bound; unsigned long base, bound;
unsigned int type; unsigned int type;