DMF(4) BSD/vax Kernel Interfaces Manual DMF(4)NAMEdmf — DMF-32 terminal multiplexor
device dmf0 at uba? csr 0160340 vector dmfsrint dmfsxint dmfdaint
dmfdbint dmfrint dmfxint dmflint
The dmf device provides 8 lines of asynchronous serial line support. The
first two of these have full modem control. The device also provides a
line printer port similar to the LP-11. Other features of the DMF-32 are
not supported. During autoconfiguration, the driver examines the config‐
uration of each DMF-32 and adjusts the interrupt vectors so that fewer
vector locations are used if possible.
An optional argument flags may be supplied with the device specification
in the config file indicating that the line corresponding to bit number i
is not properly connected, and should be treated as hard-wired with car‐
rier always present. Thus specifying ‘flags 0x04’ for dmf0 would cause
line ttyA2 to be treated in this way. Flags should be set for all lines
without hardware support for modem control.
Normal I/O control parameters for individual lines are managed by
ioctl(2) calls. Line speeds may be initiated via getty(8) and stty(1) or
may be communicated by other programs which utilize ioctl such as
ifcongif(8), see tty(4).
The serial line part of the dmf driver normally enables the input silos
with a short timeout (30 milliseconds); this allows multiple characters
to be received per interrupt during periods of high-speed input.
A line printer port on a dmf is designated by a minor device number of
the form 128+n. See MAKEDEV(8). Column and lines per page may be
changed from the default 132 columns and 66 lines by encoding the number
of columns in bits 8-15 of flags and the number of lines in bits 16-23.
This device does not provide the fancy output canonicalization features
of the lp(4) driver.
dmf%d: NXM line %d. No response from UNIBUS on a DMA transfer within a
timeout period. This is often followed by a UNIBUS adapter error. This
occurs most frequently when the UNIBUS is heavily loaded and when devices
which hog the bus (such as RK07s) are present. It is not serious.
dmf%d: silo overflow. The character input silo overflowed before it
could be serviced. This can happen if a hard error occurs when the CPU
is running with elevated priority, as the system will then print a mes‐
sage on the console with interrupts disabled. It is not serious.
dmfsrint, dmfsxint, dmfdaint, dmfdbint. One of the unsupported parts of
the dmf interrupted; something is amiss, check your interrupt vectors for
a conflict with another device.
The dmf driver appeared in 4.2BSD.
It should be possible to set the silo timeout with a configuration file
option, as the value is a trade-off between efficiency and response time
for flow control and character echo.
4.2 Berkeley Distribution June 5, 1993 4.2 Berkeley Distribution