--- /usr/src/sys/sys/mouse.h 2005-04-13 00:25:45.000000000 -0700 +++ mouse.h.new 2008-02-24 15:55:08.000000000 -0800 @@ -22,6 +22,7 @@ * * $FreeBSD: src/sys/sys/mouse.h,v 1.23 2005/04/13 07:25:45 mdodd Exp $ */ +/* UMSPATCH-dhh-1a 02/24/08 */ #ifndef _SYS_MOUSE_H_ #define _SYS_MOUSE_H_ @@ -58,6 +59,7 @@ int dx; /* x movement */ int dy; /* y movement */ int dz; /* z movement */ + int dt; /* wheel tilt data */ } mousestatus_t; /* button */ @@ -182,6 +184,7 @@ #define MOUSE_PROTO_VERSAPAD 15 /* Interlink VersaPad, 6 bytes */ #define MOUSE_PROTO_JOGDIAL 16 /* Vaio's JogDial */ #define MOUSE_PROTO_GTCO_DIGIPAD 17 +#define MOUSE_PROTO_SYSMOUSE_EXT 18 /* Extended sysmouse protocol for tilt */ #define MOUSE_RES_UNKNOWN (-1) #define MOUSE_RES_DEFAULT 0 @@ -340,6 +343,13 @@ * the byte 7 respectively: 1 indicates the button is up. */ #define MOUSE_SYS_PACKETSIZE 8 + +/* Add a third sysmouse format, requiring a larger packet and valid + * only at mode level 3. The wheel tilt datum 'dt' is expressed as the + * sum of byte 8 and byte 9 which contain signed seven bit values. + * The other two bytes are always 0. + */ +#define MOUSE_SYS_EXT_PACKETSIZE 12 #define MOUSE_SYS_SYNCMASK 0xf8 #define MOUSE_SYS_SYNC 0x80 #define MOUSE_SYS_BUTTON1UP 0x04 /* left, 1st byte */ --- /usr/include/sys/mouse.h 2008-02-27 12:45:58.000000000 -0800 +++ mouse.h.new 2008-02-24 15:55:08.000000000 -0800 @@ -59,6 +59,7 @@ int dx; /* x movement */ int dy; /* y movement */ int dz; /* z movement */ + int dt; /* wheel tilt data */ } mousestatus_t; /* button */ @@ -183,6 +184,7 @@ #define MOUSE_PROTO_VERSAPAD 15 /* Interlink VersaPad, 6 bytes */ #define MOUSE_PROTO_JOGDIAL 16 /* Vaio's JogDial */ #define MOUSE_PROTO_GTCO_DIGIPAD 17 +#define MOUSE_PROTO_SYSMOUSE_EXT 18 /* Extended sysmouse protocol for tilt */ #define MOUSE_RES_UNKNOWN (-1) #define MOUSE_RES_DEFAULT 0 @@ -341,6 +343,13 @@ * the byte 7 respectively: 1 indicates the button is up. */ #define MOUSE_SYS_PACKETSIZE 8 + +/* Add a third sysmouse format, requiring a larger packet and valid + * only at mode level 3. The wheel tilt datum 'dt' is expressed as the + * sum of byte 8 and byte 9 which contain signed seven bit values. + * The other two bytes are always 0. + */ +#define MOUSE_SYS_EXT_PACKETSIZE 12 #define MOUSE_SYS_SYNCMASK 0xf8 #define MOUSE_SYS_SYNC 0x80 #define MOUSE_SYS_BUTTON1UP 0x04 /* left, 1st byte */ --- /usr/include/dev/usb/mouse.h 2008-02-27 12:45:58.000000000 -0800 +++ mouse.h.new 2008-02-24 15:55:08.000000000 -0800 @@ -59,6 +59,7 @@ int dx; /* x movement */ int dy; /* y movement */ int dz; /* z movement */ + int dt; /* wheel tilt data */ } mousestatus_t; /* button */ @@ -183,6 +184,7 @@ #define MOUSE_PROTO_VERSAPAD 15 /* Interlink VersaPad, 6 bytes */ #define MOUSE_PROTO_JOGDIAL 16 /* Vaio's JogDial */ #define MOUSE_PROTO_GTCO_DIGIPAD 17 +#define MOUSE_PROTO_SYSMOUSE_EXT 18 /* Extended sysmouse protocol for tilt */ #define MOUSE_RES_UNKNOWN (-1) #define MOUSE_RES_DEFAULT 0 @@ -341,6 +343,13 @@ * the byte 7 respectively: 1 indicates the button is up. */ #define MOUSE_SYS_PACKETSIZE 8 + +/* Add a third sysmouse format, requiring a larger packet and valid + * only at mode level 3. The wheel tilt datum 'dt' is expressed as the + * sum of byte 8 and byte 9 which contain signed seven bit values. + * The other two bytes are always 0. + */ +#define MOUSE_SYS_EXT_PACKETSIZE 12 #define MOUSE_SYS_SYNCMASK 0xf8 #define MOUSE_SYS_SYNC 0x80 #define MOUSE_SYS_BUTTON1UP 0x04 /* left, 1st byte */