- NetBSD Manual Pages
WSMUX(4) NetBSD Kernel Interfaces Manual WSMUX(4)
Powered by man-cgi (2021-06-01).
Maintained for NetBSD
by Kimmo Suominen.
Based on man-cgi by Panagiotis Christias.
wsmux -- console keyboard/mouse multiplexor for wscons
wskbd* at ... mux 1
wsmouse* at ... mux 0
The wsmux is a pseudo-device driver that allows several wscons(4) input
devices to have their events multiplexed into one stream.
The typical usage for this device is to have two multiplexors, one for
mouse events and one for keyboard events. All wsmouse(4) devices should
direct their events to the mouse mux (normally 0) and all keyboard
devices, except the console, should direct their events to the keyboard
mux (normally 1). A device will send its events to the mux indicated by
the mux locator. If none is given the device will not use a multiplexor.
The keyboard multiplexor should be connected to the display, using the
wsconscfg(8) command. It will then receive all keystrokes from all key-
boards and, furthermore, keyboards can be dynamically attached and
detached without further user interaction. In a similar way, the window
system will open the mouse multiplexor and receive all mouse events; mice
can also be dynamically attached and detached.
If a wskbd(4) or wsmouse(4) device is opened despite having a mux it will
be detached from the mux.
It is also possible to inject events into a multiplexor from a user pro-
For each mux device, /dev/wsmuxN there is a control device
/dev/wsmuxctlN. The control device has a minor number 128 greater than
the regular mux device. It can be used to control the mux even when it
is open, e.g., by wsmuxctl(8).
/dev/wsmouse a.k.a. /dev/wsmux0
/dev/wskbd a.k.a. /dev/wsmux1
wscons(4), wsdisplay(4), wskbd(4), wsmouse(4), moused(8), wsconscfg(8),
wsconsctl(8), wsfontload(8), wsmoused(8), wsmuxctl(8)
NetBSD 8.1 July 26, 1999 NetBSD 8.1