diff options
Diffstat (limited to 'static/netbsd/man4/wsmouse.4')
| -rw-r--r-- | static/netbsd/man4/wsmouse.4 | 181 |
1 files changed, 181 insertions, 0 deletions
diff --git a/static/netbsd/man4/wsmouse.4 b/static/netbsd/man4/wsmouse.4 new file mode 100644 index 00000000..c684e5e5 --- /dev/null +++ b/static/netbsd/man4/wsmouse.4 @@ -0,0 +1,181 @@ +.\" $NetBSD: wsmouse.4,v 1.24 2021/10/12 07:43:49 wiz Exp $ +.\" +.\" Copyright (c) 1999 +.\" Matthias Drochner. All rights reserved. +.\" +.\" Copyright (c) 2006 +.\" Julio M. Merino Vidal. All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.Dd September 25, 2021 +.Dt WSMOUSE 4 +.Os +.Sh NAME +.Nm wsmouse +.Nd generic mouse support in wscons +.Sh SYNOPSIS +.Cd "wsmouse* at pms? mux 0" +(PS/2 mouse, including ``IntelliMouse''-compatible wheel mice) +.Cd "wsmouse* at ums? mux 0" +(USB mouse) +.Cd "wsmouse* at uts? mux 0" +(USB touchscreen) +.Cd "wsmouse* at lms? mux 0" +(Logitech bus mouse, i386 only) +.Cd "wsmouse* at mms? mux 0" +(Microsoft InPort mouse, i386 only) +.Cd "wsmouse0 at ams? mux 0" +(Apple ADB mouse) +.Cd "wsmouse* at btms? mux 0" +(Bluetooth mouse) +.Cd "wsmouse* at lkms? mux 0" +(DEC VSXXX serial mice) +.Sh DESCRIPTION +The +.Nm +driver is an abstraction layer for mice within the +.Xr wscons 4 +framework. +It is attached to the hardware specific mouse drivers and +provides a character device interface which returns +.Fa struct wscons_event +via +.Xr read 2 . +For use with X servers, +.Dq mouse events +can be generated. +.Pp +The +.Xr wsconsctl 8 +utility gives access to several configurable details that affect this +driver. +.Ss Ioctls +The following +.Xr ioctl 2 +calls are provided by the +.Nm +driver or by devices which use it. +Their definitions are found in +.Pa dev/wscons/wsconsio.h . +.Bl -tag -width Dv +.It Dv WSMOUSEIO_GETPARAMS Pq Li "struct wsmouse_parameters" +.It Dv WSMOUSEIO_SETPARAMS Pq Li "struct wsmouse_parameters" +Obtain and set various mouse parameters as a key/value set. +Currently these primarily relate to touchpads. +The structure +.Vt struct wsmouse_parameters +is defined as follows: +.Bd -literal -offset indent +struct wsmouse_param { + enum wsmousecfg key; + int value; +}; + +struct wsmouse_parameters { + struct wsmouse_param *params; + unsigned int nparams; +}; +.Ed +.Pp +The number of parameters to read or write must be specified in +.Va nparams . +For each parameter, when +.Dv WSMOUSEIO_GETPARAMS +is used, a key must be specified. +When +.Dv WSMOUSEIO_SETPARAMS +is used, a key and a value must be specified. +A single ioctl may retrieve up to +.Dv WSMOUSECFG_MAX +.Va nparams . +.It Dv WSMOUSEIO_GETREPEAT Pq Li "struct wsmouse_repeat" +Retrieve the current automatic button repeating configuration. +The structure returned is as follows: +.Bd -literal -offset indent +struct wsmouse_repeat { + unsigned long wr_buttons; + unsigned int wr_delay_first; + unsigned int wr_delay_decrement; + unsigned int wr_delay_minimum; +}; +.Ed +.Pp +The +.Va wr_buttons +field is a bit mask that specifies which buttons send press and +release events periodically while they are physically held down. +The least significant bit corresponds to button 0. +.Pp +The other three fields describe the frequency upon which these +automatic events are sent. +.Va wr_delay_first +specifies the milliseconds before the first repeated event is sent. +.Va wr_delay_decrement +is used to calculate the delay between the most recently generated +event and the forthcoming one: the previous delay is taken and it is +decreased by the value given in this variable. +.Va wr_delay_minimum +specifies the minimum delay, in milliseconds, between two consecutive +events. +.It Dv WSMOUSEIO_SETREPEAT Pq Li "struct wsmouse_repeat" +Set the automatic button repeating configuration. +See +.Dv WSMOUSEIO_GETREPEAT +above for more details. +.It Dv WSMOUSEIO_SETVERSION Pq Li "int" +Set the wscons_event protocol version. +The default is 0 for binary compatibility. +The latest version is +always available as +.Dv WSMOUSE_EVENT_VERSION , +and is currently 1. +All new code should use a call similar to the below to ensure the +correct version is returned. +.Bd -literal -offset indent +int ver = WSMOUSE_EVENT_VERSION; +if (ioctl(fd, WSMOUSEIO_SETVERSION, &ver) == -1) + err(EXIT_FAILURE, "cannot set version"); +.Ed +.El +.Sh FILES +.Bl -item +.It +.Pa /dev/wsmouse* +.It +.Pa /usr/include/dev/wscons/wsconsio.h . +.El +.Sh SEE ALSO +.Xr btms 4 , +.Xr dreamcast/mms 4 , +.Xr i386/lms 4 , +.Xr i386/mms 4 , +.Xr pms 4 , +.Xr uep 4 , +.Xr ums 4 , +.Xr uts 4 , +.Xr wscons 4 , +.Xr wsmux 4 , +.Xr moused 8 , +.Xr wsconsctl 8 , +.Xr wsmoused 8 , +.Xr wsmouse 9 |
