Update to xf86-input-mouse-1.4.0, based on patch from hasso@
From xorg-announce@ mail: The big change in 1.4.0 is the move of the OS-specific mouse handling code from the Xorg server to the mouse driver. This code was removed from the Xorg server in the Xorg 1.6 development cycle, so users of non-evdev systems (i.e. non-Linux or pre-evdev Linux) will need this version of the mouse driver to run with Xorg 1.6. Remove useless call to xf86AddModuleInfo Merge some hardware support information from README.mouse into man page Fix sun_mouse.c build on Solaris Rename OS_SOURCES to stop automake complaints about not building program "OS" Remove checks for Solaris x86 versions older than Solaris 8 sun_mouse.c: remove unused variables sun_mouse.c: Use miPointerGetScreen instead of miPointerCurrentScreen Fix solarisMouseAutoProbe to use device name & protocol specified by HAL sun_mouse: check for Device in commonOptions if pInfo->options isn't set yet Replace static changelog with one generated via XORG_CHANGELOG Add XORG_CWARNFLAGS & XORG_WITH_LINT for more compiler checking Clear assorted compiler, sparse & lint warnings sun_mouse: fallback to commonOptions for StreamsModule too Comment typo fixes Remove some #if 1 statements Unifdef XFree86LOADER Add copyright notices for OS mouse code to COPYING file Add note on hal-based configuration to man page Version 1.4.0 Add OS mouse sources to the driver build Change screen private key to an integer variable. Build fix: Add a prototype for FindDevice function. Include xorg-server.h to get the WSCONS_SUPPORT define from prevent a double free of mouse private structure. W axis support for bsd_mouse. Make sure xf86MouseProtocolIDToName is of public visibility. Compile warning fixes. Fix linux build man: Note that the server may probe default "Device" options. Nuke RCS tags. Check for XINPUT ABI 3. fix compilation (upper/lower case typo)
This commit is contained in:
parent
ef2877fa21
commit
c38575fb83
4 changed files with 153 additions and 7 deletions
|
@ -1,7 +1,6 @@
|
|||
# $NetBSD: Makefile,v 1.9 2009/03/14 11:09:37 apb Exp $
|
||||
# $NetBSD: Makefile,v 1.10 2009/05/22 19:05:57 tnn Exp $
|
||||
|
||||
DISTNAME= xf86-input-mouse-1.3.0
|
||||
PKGREVISION= 2
|
||||
DISTNAME= xf86-input-mouse-1.4.0
|
||||
CATEGORIES= x11
|
||||
MASTER_SITES= ${MASTER_SITE_XORG:=driver/}
|
||||
EXTRACT_SUFX= .tar.bz2
|
||||
|
|
|
@ -1,7 +1,9 @@
|
|||
$NetBSD: distinfo,v 1.7 2009/03/14 11:09:37 apb Exp $
|
||||
$NetBSD: distinfo,v 1.8 2009/05/22 19:05:57 tnn Exp $
|
||||
|
||||
SHA1 (xf86-input-mouse-1.3.0.tar.bz2) = 79ecd994b2820d24a00d4c4af9aa9189bdd9db93
|
||||
RMD160 (xf86-input-mouse-1.3.0.tar.bz2) = a691e809e61e14e2383f1d4533b0eb454373667f
|
||||
Size (xf86-input-mouse-1.3.0.tar.bz2) = 282157 bytes
|
||||
SHA1 (xf86-input-mouse-1.4.0.tar.bz2) = d16c09580a0a5deb1675874e914f616548859747
|
||||
RMD160 (xf86-input-mouse-1.4.0.tar.bz2) = 17985f0493711a25ffa8fdeae4d741d7f602ca4e
|
||||
Size (xf86-input-mouse-1.4.0.tar.bz2) = 292626 bytes
|
||||
SHA1 (patch-aa) = baf529a3ae260e98fb068cb9549f749705d8213b
|
||||
SHA1 (patch-ab) = 632ec0e3908ccd16678a480b5ffa00dba7db640f
|
||||
SHA1 (patch-ac) = d32bbb082c0898e6eb6bf9dadb2af401b1e79312
|
||||
SHA1 (patch-ad) = 8301f21624cecdb19b2f705d546b6bd37d105dc3
|
||||
|
|
106
x11/xf86-input-mouse/patches/patch-ac
Normal file
106
x11/xf86-input-mouse/patches/patch-ac
Normal file
|
@ -0,0 +1,106 @@
|
|||
$NetBSD: patch-ac,v 1.1 2009/05/22 19:05:57 tnn Exp $
|
||||
|
||||
Changes from NetBSD xsrc/external/mit/xorg-server/dist/\
|
||||
hw/xfree86/os-support/bsd/bsd_mouse.c
|
||||
|
||||
----------------------------
|
||||
revision 1.5
|
||||
date: 2009/02/09 09:49:39; author: plunky; state: Exp; lines: +16 -0
|
||||
add horizontal mouse-wheel functionality to USB and WSMOUSE drivers
|
||||
----------------------------
|
||||
revision 1.4
|
||||
date: 2009/02/02 03:06:37; author: christos; state: Exp; lines: +7 -11
|
||||
add a SetupMouse proc to condition the fd. Convert NetBSD's SetupAuto to
|
||||
SetupMouse.
|
||||
----------------------------
|
||||
revision 1.3
|
||||
date: 2009/01/19 00:54:29; author: christos; state: Exp; lines: +2 -1
|
||||
fix ioctl.
|
||||
----------------------------
|
||||
revision 1.2
|
||||
date: 2009/01/13 18:43:46; author: christos; state: Exp; lines: +25 -0
|
||||
Set the mouse event protocol version. (untested, but head will be broken
|
||||
unless I add this).
|
||||
----------------------------
|
||||
|
||||
--- src/bsd_mouse.c.orig 2009-05-19 15:12:28 +0300
|
||||
+++ src/bsd_mouse.c 2009-05-19 15:13:13 +0300
|
||||
@@ -53,12 +53,15 @@
|
||||
|
||||
#define HUP_GENERIC_DESKTOP 0x0001
|
||||
#define HUP_BUTTON 0x0009
|
||||
+#define HUP_CONSUMER 0x000c
|
||||
|
||||
#define HUG_X 0x0030
|
||||
#define HUG_Y 0x0031
|
||||
#define HUG_Z 0x0032
|
||||
#define HUG_WHEEL 0x0038
|
||||
|
||||
+#define HUC_AC_PAN 0x0238
|
||||
+
|
||||
#define HID_USAGE2(p,u) (((p) << 16) | u)
|
||||
|
||||
/* The UMS mices have middle button as number 3 */
|
||||
@@ -339,6 +342,23 @@ FindDevice(InputInfoPtr pInfo, const cha
|
||||
}
|
||||
#endif
|
||||
|
||||
+#if defined(__NetBSD__)
|
||||
+static Bool
|
||||
+SetupMouse(InputInfoPtr pInfo)
|
||||
+{
|
||||
+#ifdef WSCONS_SUPPORT
|
||||
+#ifdef WSMOUSEIO_SETVERSION
|
||||
+ int version = WSMOUSE_EVENT_VERSION;
|
||||
+ if (ioctl(pInfo->fd, WSMOUSEIO_SETVERSION, &version) == -1) {
|
||||
+ xf86Msg(X_WARNING, "%s: cannot set version\n", pInfo->name);
|
||||
+ return FALSE;
|
||||
+ }
|
||||
+#endif
|
||||
+#endif
|
||||
+ return TRUE;
|
||||
+}
|
||||
+#endif
|
||||
+
|
||||
#if (defined(__OpenBSD__) || defined(__NetBSD__)) && defined(WSCONS_SUPPORT)
|
||||
|
||||
/* Only support wsmouse configuration for now */
|
||||
@@ -496,7 +516,7 @@ typedef struct _UsbMseRec {
|
||||
hid_item_t loc_x; /* x locator item */
|
||||
hid_item_t loc_y; /* y locator item */
|
||||
hid_item_t loc_z; /* z (wheel) locator item */
|
||||
- hid_item_t loc_w; /* z (wheel) locator item */
|
||||
+ hid_item_t loc_w; /* w (pan) locator item */
|
||||
hid_item_t loc_btn[MSE_MAXBUTTONS]; /* buttons locator items */
|
||||
unsigned char *buffer;
|
||||
} UsbMseRec, *UsbMsePtr;
|
||||
@@ -708,6 +728,9 @@ usbPreInit(InputInfoPtr pInfo, const cha
|
||||
if (hid_locate(reportDesc, HID_USAGE2(HUP_GENERIC_DESKTOP, HUG_WHEEL),
|
||||
hid_input, &pUsbMse->loc_z, pUsbMse->iid) < 0) {
|
||||
}
|
||||
+ if (hid_locate(reportDesc, HID_USAGE2(HUP_CONSUMER, HUC_AC_PAN),
|
||||
+ hid_input, &pUsbMse->loc_w, pUsbMse->iid) < 0) {
|
||||
+ }
|
||||
#else
|
||||
if (hid_locate(reportDesc, HID_USAGE2(HUP_GENERIC_DESKTOP, HUG_X),
|
||||
hid_input, &pUsbMse->loc_x) < 0) {
|
||||
@@ -720,6 +743,9 @@ usbPreInit(InputInfoPtr pInfo, const cha
|
||||
if (hid_locate(reportDesc, HID_USAGE2(HUP_GENERIC_DESKTOP, HUG_WHEEL),
|
||||
hid_input, &pUsbMse->loc_z) < 0) {
|
||||
}
|
||||
+ if (hid_locate(reportDesc, HID_USAGE2(HUP_CONSUMER, HUC_AC_PAN),
|
||||
+ hid_input, &pUsbMse->loc_w) < 0) {
|
||||
+ }
|
||||
#endif
|
||||
/* Probe for number of buttons */
|
||||
for (i = 1; i <= MSE_MAXBUTTONS; i++) {
|
||||
@@ -790,6 +816,9 @@ xf86OSMouseInit(int flags)
|
||||
p->SetupAuto = SetupAuto;
|
||||
p->SetMiscRes = SetMouseRes;
|
||||
#endif
|
||||
+#if defined(__NetBSD__)
|
||||
+ p->SetupMouse = SetupMouse;
|
||||
+#endif
|
||||
#if defined(__FreeBSD__) || defined(__FreeBSD_kernel__) || defined(__OpenBSD__) || defined(__DragonFly__) || defined(__NetBSD__)
|
||||
p->FindDevice = FindDevice;
|
||||
#endif
|
39
x11/xf86-input-mouse/patches/patch-ad
Normal file
39
x11/xf86-input-mouse/patches/patch-ad
Normal file
|
@ -0,0 +1,39 @@
|
|||
$NetBSD: patch-ad,v 1.1 2009/05/22 19:05:57 tnn Exp $
|
||||
|
||||
Changes from NetBSD xsrc/external/mit/xorg-server/dist/\
|
||||
hw/xfree86/os-support/xf86OSmouse.h
|
||||
|
||||
----------------------------
|
||||
revision 1.2
|
||||
date: 2009/02/02 03:06:37; author: christos; state: Exp; lines: +4 -0
|
||||
add a SetupMouse proc to condition the fd. Convert NetBSD's SetupAuto to
|
||||
SetupMouse.
|
||||
----------------------------
|
||||
|
||||
--- ./src/xf86OSmouse.h.orig 2009-05-19 15:15:31 +0300
|
||||
+++ ./src/xf86OSmouse.h 2009-05-19 15:18:54 +0300
|
||||
@@ -82,6 +82,7 @@ typedef Bool (*BuiltinPreInitProc)(Input
|
||||
int flags);
|
||||
typedef const char *(*DefaultProtocolProc)(void);
|
||||
typedef const char *(*SetupAutoProc)(InputInfoPtr pInfo, int *protoPara);
|
||||
+typedef Bool (*SetupMouseProc)(InputInfoPtr pInfo);
|
||||
typedef void (*SetResProc)(InputInfoPtr pInfo, const char* protocol, int rate,
|
||||
int res);
|
||||
typedef const char *(*FindDeviceProc)(InputInfoPtr pInfo, const char *protocol,
|
||||
@@ -99,6 +100,7 @@ typedef struct {
|
||||
BuiltinPreInitProc PreInit;
|
||||
DefaultProtocolProc DefaultProtocol;
|
||||
SetupAutoProc SetupAuto;
|
||||
+ SetupMouseProc SetupMouse;
|
||||
SetResProc SetPS2Res;
|
||||
SetResProc SetBMRes;
|
||||
SetResProc SetMiscRes;
|
||||
@@ -141,6 +143,8 @@ typedef struct {
|
||||
*
|
||||
* SetBMRes: Set the resolution and sample rate for MSE_BM protocol types.
|
||||
*
|
||||
+ * SetupMouse: Called once after open to condition the file descriptor.
|
||||
+ *
|
||||
* SetMiscRes: Set the resolution and sample rate for MSE_MISC protocol types.
|
||||
*
|
||||
* FindDevice: This function gets called when no Device has been specified
|
Loading…
Reference in a new issue