xref: /netbsd-src/share/man/man4/wsmux.4 (revision 946379e7b37692fc43f68eb0d1c10daa0a7f3b6c)
1.\" $NetBSD: wsmux.4,v 1.12 2011/03/06 17:39:05 wiz Exp $
2.\"
3.\" Copyright (c) 1999 The NetBSD Foundation, Inc.
4.\" All rights reserved.
5.\"
6.\" Redistribution and use in source and binary forms, with or without
7.\" modification, are permitted provided that the following conditions
8.\" are met:
9.\" 1. Redistributions of source code must retain the above copyright
10.\"    notice, this list of conditions and the following disclaimer.
11.\" 2. Redistributions in binary form must reproduce the above copyright
12.\"    notice, this list of conditions and the following disclaimer in the
13.\"    documentation and/or other materials provided with the distribution.
14.\"
15.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
16.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
17.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
18.\" PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
19.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
20.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
21.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
22.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
23.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
24.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
25.\" POSSIBILITY OF SUCH DAMAGE.
26.\"
27.Dd July 26, 1999
28.Dt WSMUX 4
29.Os
30.Sh NAME
31.Nm wsmux
32.Nd console keyboard/mouse multiplexor for wscons
33.Sh SYNOPSIS
34.Cd "wskbd*   at ... mux 1"
35.Cd "wsmouse* at ... mux 0"
36.Pp
37.Cd pseudo-device wsmux
38.Sh DESCRIPTION
39The
40.Nm
41is a pseudo-device driver that allows several
42.Xr wscons 4
43input devices to have their events multiplexed into one stream.
44.Pp
45The typical usage for this device is to have two multiplexors, one
46for mouse events and one for keyboard events.
47All
48.Xr wsmouse 4
49devices should direct their events to the mouse mux (normally 0)
50and all keyboard devices, except the console, should direct their
51events to the keyboard mux (normally 1).
52A device will send its events to the mux indicated by the
53.Va mux
54locator.
55If none is given the device will not use a multiplexor.
56The keyboard multiplexor should be connected to the display, using
57the
58.Xr wsconscfg 8
59command.
60It will then receive all keystrokes from all keyboards
61and, furthermore, keyboards can be dynamically attached and detached without
62further user interaction.
63In a similar way, the window system will open the mouse multiplexor
64and receive all mouse events; mice can also be dynamically attached
65and detached.
66.Pp
67If a
68.Xr wskbd 4
69or
70.Xr wsmouse 4
71device is opened despite having a mux it will be detached from the mux.
72.Pp
73It is also possible to inject events into a multiplexor from a
74user program.
75.\" This is used by the
76.\" .Xr moused 8
77.\" daemon to take data from a mouse connected to a serial port and
78.\" make it appear on the standard mouse mux.
79.Sh FILES
80For each mux device,
81.Pa /dev/wsmuxN
82there is a control device
83.Pa /dev/wsmuxctlN .
84The control device has a minor number 128 greater than the regular
85mux device.
86It can be used to control the mux even when it is open,
87e.g., by
88.Xr wsmuxctl 8 .
89.Bl -item
90.It
91.Pa /dev/wsmouse
92a.k.a.
93.Pa /dev/wsmux0
94.It
95.Pa /dev/wskbd
96a.k.a.
97.Pa /dev/wsmux1
98.It
99.Pa /usr/include/dev/wscons/wsconsio.h
100.El
101.Sh SEE ALSO
102.Xr wscons 4 ,
103.Xr wsdisplay 4 ,
104.Xr wskbd 4 ,
105.Xr wsmouse 4 ,
106.Xr moused 8 ,
107.Xr wsconscfg 8 ,
108.Xr wsconsctl 8 ,
109.Xr wsfontload 8 ,
110.Xr wsmoused 8 ,
111.Xr wsmuxctl 8
112