mdoc(7) police: use macros wherever possible, remove hard sentence breaks.
This commit is contained in:
parent
42b5df7536
commit
d4b2ddba44
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=71377
@ -48,41 +48,45 @@
|
||||
.Cd "device dgb0 at isa? port 0x220 iomem 0xfc0000 iosiz ? flags 0x0"
|
||||
All values are just examples.
|
||||
.Pp
|
||||
The \fBNDGBPORTS\fR option defines the total number of ports on all cards
|
||||
The
|
||||
.Dv NDGBPORTS
|
||||
option defines the total number of ports on all cards
|
||||
installed in the system.
|
||||
When not defined the number is computed:
|
||||
.Pp
|
||||
.Bd -ragged -offset 4n
|
||||
default \fBNDGBPORTS\fR = number_of_described_DigiBoard_cards * 16
|
||||
default
|
||||
.Dv NDGBPORTS
|
||||
= number_of_described_DigiBoard_cards * 16
|
||||
.Ed
|
||||
.Pp
|
||||
If it is less than the actual number of ports
|
||||
the system will be able to use only the
|
||||
first \fBNDGBPORTS\fR ports.
|
||||
first
|
||||
.Dv NDGBPORTS
|
||||
ports.
|
||||
If it is greater then all ports will be usable
|
||||
but some memory will be wasted.
|
||||
.Pp
|
||||
Meaning of \fBflags\fR:
|
||||
.br
|
||||
\fB0x0001\fR use alternate pinout (exchange DCD and DSR lines)
|
||||
.br
|
||||
\fB0x0002\fR don't use 8K window mode of PC/Xe
|
||||
Meaning of
|
||||
.Cm flags :
|
||||
.Bl -tag -width indent -compact
|
||||
.It 0x0001
|
||||
use alternate pinout (exchange DCD and DSR lines)
|
||||
.It 0x0002
|
||||
don't use 8K window mode of PC/Xe
|
||||
.El
|
||||
.Pp
|
||||
Device numbering:
|
||||
.br
|
||||
0b\fICC\fRmmmmmmmm\fIOLIPPPPP\fR
|
||||
.br
|
||||
\fBCC\fRard number
|
||||
.br
|
||||
mmmmmmmm\fRajor number
|
||||
.br
|
||||
call\fBO\fRut
|
||||
.br
|
||||
\fBL\fRock
|
||||
.br
|
||||
\fBI\fRnitial
|
||||
.br
|
||||
\fBPPPPP\fRort number
|
||||
.Bd -literal -compact
|
||||
0b\fICC\fPmmmmmmmm\fIOLIPPPPP\fP
|
||||
\fBCC\fPard number
|
||||
\fRmmmmmmmm\fPajor number
|
||||
call\fBO\fPut
|
||||
\fBL\fPock
|
||||
\fBI\fPnitial
|
||||
\fBPPPPP\fPort number
|
||||
.Ed
|
||||
.Sh DESCRIPTION
|
||||
The
|
||||
.Nm
|
||||
@ -98,7 +102,9 @@ Input and output for each line may set to one of following baud rates;
|
||||
50, 75, 110, 134.5, 150, 300, 600, 1200, 1800, 2400, 4800, 9600,
|
||||
19200, 38400, 57600, or for newer versions of cards 115200.
|
||||
.Pp
|
||||
The driver doesn't use any interrupts, it is ``polling-based''. This means that
|
||||
The driver doesn't use any interrupts, it is
|
||||
.Dq polling\-based .
|
||||
This means that
|
||||
it uses clock interrupts instead of interrupts generated by DigiBoard cards and
|
||||
checks the state of cards 25 times per second.
|
||||
This is practical because the
|
||||
@ -114,40 +120,44 @@ as in the
|
||||
driver.
|
||||
.Pp
|
||||
The
|
||||
.Em flags
|
||||
.Cm flags
|
||||
keyword may be used on each
|
||||
.Em "device dgb"
|
||||
.Dq Li "device dgb"
|
||||
line in the kernel configuration file
|
||||
to change the pinout of the interface or to use new PC/Xe cards
|
||||
which can work with an 8K memory window in compatibility mode
|
||||
(with a 64K memory window). Note
|
||||
(with a 64K memory window).
|
||||
Note
|
||||
that using 8K memory window doesn't mean shorter input/output buffers, it means
|
||||
only that all buffers will be mapped to the same memory address and switched as
|
||||
needed.
|
||||
.Pp
|
||||
The
|
||||
.Em port
|
||||
.Cm port
|
||||
value must be the same
|
||||
as the
|
||||
.Em port
|
||||
port
|
||||
set on the card by jumpers.
|
||||
For PC/Xi cards the same rule is applicable to the
|
||||
.Em iomem
|
||||
value. It must be the same as the memory address set on the card
|
||||
.Cm iomem
|
||||
value.
|
||||
It must be the same as the memory address set on the card
|
||||
by jumpers.
|
||||
.\"Some documentation gives the address as a ``paragraph'' or ``segment'';
|
||||
.\"you can get the value of address by adding the digit "0" at end of
|
||||
.\"paragraph value, e.g., 0xfc000 -> 0xfc0000.
|
||||
For PC/Xe cards there is no need to use jumpers for this purpose.
|
||||
In fact there are no jumpers to do it. Just
|
||||
In fact there are no jumpers to do it.
|
||||
Just
|
||||
write the address you want as the
|
||||
.Em iomem
|
||||
.Cm iomem
|
||||
value in kernel config file and the card will be programmed
|
||||
to use this address.
|
||||
.Pp
|
||||
The same range of memory addresses may be used
|
||||
for all the DigiBoards installed
|
||||
(but not for any other card or real memory). DigiBoards
|
||||
(but not for any other card or real memory).
|
||||
DigiBoards
|
||||
with a large amount of memory (256K or 512K and perhaps
|
||||
even 128K) must be mapped
|
||||
to memory addresses outside of the first megabyte.
|
||||
@ -158,17 +168,22 @@ In this case you
|
||||
may need to reduce the amount of memory in the computer.
|
||||
But many machines provide a better solution.
|
||||
They have the ability to
|
||||
``turn off'' the memory in the 16th megabyte (addresses 0xF00000 - 0xFFFFFF)
|
||||
.Dq "turn off"
|
||||
the memory in the 16th megabyte (addresses 0xF00000 - 0xFFFFFF)
|
||||
using the
|
||||
BIOS setup.
|
||||
Then the DigiBoard's address space can be set to this ``hole''.
|
||||
Then the DigiBoard's address space can be set to this
|
||||
.Dq hole .
|
||||
.\" XXX the following should be true for all serial drivers and
|
||||
.\" should not be repeated in the man pages for all serial drivers.
|
||||
.\" It was copied from sio.4. The only changes were s/sio/dgb/g.
|
||||
.Pp
|
||||
Serial ports controlled by the
|
||||
.Nm
|
||||
driver can be used for both `callin' and `callout'.
|
||||
driver can be used for both
|
||||
.Dq callin
|
||||
and
|
||||
.Dq callout .
|
||||
For each port there is a callin device and a callout device.
|
||||
The minor number of the callout device is 128 higher
|
||||
than that of the corresponding callin port.
|
||||
@ -187,7 +202,9 @@ but are too stupid to do so.
|
||||
The
|
||||
.Nm
|
||||
driver also supports an initial-state and a lock-state control
|
||||
device for each of the callin and the callout "data" devices.
|
||||
device for each of the callin and the callout
|
||||
.Dq data
|
||||
devices.
|
||||
The minor number of the initial-state device is 32 higher
|
||||
than that of the corresponding data device.
|
||||
The minor number of the lock-state device is 64 higher
|
||||
@ -201,10 +218,13 @@ in the normal way on the initial-state devices to program
|
||||
initial termios states suitable for your setup.
|
||||
.Pp
|
||||
The lock termios state acts as flags to disable changing
|
||||
the termios state. E.g., to lock a flag variable such as
|
||||
CRTSCTS, use
|
||||
.Em "stty crtscts"
|
||||
on the lock-state device. Speeds and special characters
|
||||
the termios state.
|
||||
E.g., to lock a flag variable such as
|
||||
.Dv CRTSCTS ,
|
||||
use
|
||||
.Dq Li "stty crtscts"
|
||||
on the lock-state device.
|
||||
Speeds and special characters
|
||||
may be locked by setting the corresponding value in the lock-state
|
||||
device to any nonzero value.
|
||||
.Pp
|
||||
@ -216,14 +236,23 @@ initial state and locking the state.
|
||||
In particular, the initial states for non (POSIX) standard flags
|
||||
should be set to suit the devices attached and may need to be
|
||||
locked to prevent buggy programs from changing them.
|
||||
E.g., CRTSCTS should be locked on for devices that support
|
||||
E.g.,
|
||||
.Dv CRTSCTS
|
||||
should be locked on for devices that support
|
||||
RTS/CTS handshaking at all times and off for devices that don't
|
||||
support it at all. CLOCAL should be locked on for devices
|
||||
that don't support carrier. HUPCL may be locked off if you don't
|
||||
want to hang up for some reason. In general, very bad things happen
|
||||
support it at all.
|
||||
.Dv CLOCAL
|
||||
should be locked on for devices
|
||||
that don't support carrier.
|
||||
.Dv HUPCL
|
||||
may be locked off if you don't
|
||||
want to hang up for some reason.
|
||||
In general, very bad things happen
|
||||
if something is locked to the wrong state, and things should not
|
||||
be locked for devices that support more than one setting. The
|
||||
CLOCAL flag on callin ports should be locked off for logins
|
||||
be locked for devices that support more than one setting.
|
||||
The
|
||||
.Dv CLOCAL
|
||||
flag on callin ports should be locked off for logins
|
||||
to avoid certain security holes, but this needs to be done by
|
||||
getty if the callin port is used for anything else.
|
||||
.Sh FILES
|
||||
@ -253,97 +282,72 @@ The second question mark is short for the port number
|
||||
(a letter in the range [0-9a-v]).
|
||||
.Sh DIAGNOSTICS
|
||||
You may enable extended diagnostics by defining DEBUG at the
|
||||
start of the source file dgb.c.
|
||||
start of the source file
|
||||
.Pa dgb.c .
|
||||
.Bl -diag
|
||||
.It dgb\fIX\fB: warning: address \fIN\fB truncated to \fIM\fB
|
||||
.It dgb\fIX\fP: warning: address \fIN\fP truncated to \fIM\fP
|
||||
The memory address for the PC/Xe's 8K window is misaligned (it should be
|
||||
on an 8K boundary) or outside of the first megabyte.
|
||||
.El
|
||||
.Bl -diag
|
||||
.It dgb\fIX\fB: 1st reset failed
|
||||
.It dgb\fIX\fP: 1st reset failed
|
||||
Problems with accessing I/O port of the card, probably
|
||||
the wrong \fBport\fR value is specified in the kernel config file.
|
||||
.El
|
||||
.Bl -diag
|
||||
.It dgb\fIX\fB: 2nd reset failed
|
||||
the wrong
|
||||
.Cm port
|
||||
value is specified in the kernel config file.
|
||||
.It dgb\fIX\fP: 2nd reset failed
|
||||
Problems with hardware.
|
||||
.El
|
||||
.Bl -diag
|
||||
.It dgb\fIX\fB: \fIN\fB[st,nd,rd,th] memory test failed
|
||||
.It dgb\fIX\fP: \fIN\fP[st,nd,rd,th] memory test failed
|
||||
Problems with accessing the memory of the card, probably
|
||||
the wrong \fBiomem\fR value is specified in the kernel config file.
|
||||
.El
|
||||
.Bl -diag
|
||||
.It dgb\fIX\fB: BIOS start failed
|
||||
the wrong
|
||||
.Cm iomem
|
||||
value is specified in the kernel config file.
|
||||
.It dgb\fIX\fP: BIOS start failed
|
||||
Problems with starting the on-board BIOS.
|
||||
Probably the memory addresses of the
|
||||
DigiBoard overlap with some other device or with RAM.
|
||||
.El
|
||||
.Bl -diag
|
||||
.It dgb\fIX\fB: BIOS download failed
|
||||
.It dgb\fIX\fP: BIOS download failed
|
||||
Problems with the on-board BIOS.
|
||||
Probably the memory addresses of the
|
||||
DigiBoard overlap with some other device or with RAM.
|
||||
.El
|
||||
.Bl -diag
|
||||
.It dgb\fIX\fB: FEP code download failed
|
||||
.It dgb\fIX\fP: FEP code download failed
|
||||
Problems with downloading of the Front-End Processor's micro-OS.
|
||||
Probably the memory addresses of the
|
||||
DigiBoard overlap with some other device or with RAM.
|
||||
.El
|
||||
.Bl -diag
|
||||
.It dgb\fIX\fB: FEP/OS start failed
|
||||
.It dgb\fIX\fP: FEP/OS start failed
|
||||
Problems with starting of the Front-End Processor's micro-OS.
|
||||
Probably the memory addresses of the
|
||||
DigiBoard overlap with some other device or with RAM.
|
||||
.El
|
||||
.Bl -diag
|
||||
.It dgb\fIX\fB: too many ports
|
||||
.It dgb\fIX\fP: too many ports
|
||||
This DigiBoard reports that it has more than 32 ports.
|
||||
Perhaps a hardware problem or
|
||||
the memory addresses of the
|
||||
DigiBoard overlap with some other device or with RAM.
|
||||
.El
|
||||
.Bl -diag
|
||||
.It dgb\fIX\fB: only \fIN\fB ports are usable
|
||||
The NDGBPORTS parameter is too small and there is only enough space allocated
|
||||
for \fIN\fR ports on this card.
|
||||
.El
|
||||
.Bl -diag
|
||||
.It dgb\fIX\fB: port \fIY\fB is broken
|
||||
.It dgb\fIX\fP: only \fIN\fP ports are usable
|
||||
The
|
||||
.Dv NDGBPORTS
|
||||
parameter is too small and there is only enough space allocated
|
||||
for
|
||||
.Ar N
|
||||
ports on this card.
|
||||
.It dgb\fIX\fP: port \fIY\fP is broken
|
||||
The on-board diagnostic has reported that the specified port has hardware
|
||||
problems.
|
||||
.El
|
||||
.Bl -diag
|
||||
.It dgb\fIX\fB: polling of disabled board stopped
|
||||
.It dgb\fIX\fP: polling of disabled board stopped
|
||||
Internal problems in the polling logic of driver.
|
||||
.El
|
||||
.Bl -diag
|
||||
.It dgb\fIX\fB: event queue's head or tail is wrong!
|
||||
.It dgb\fIX\fP: event queue's head or tail is wrong!
|
||||
Internal problems in the driver or hardware.
|
||||
.El
|
||||
.Bl -diag
|
||||
.It dgb\fIX\fB: port \fIY\fB: got event on nonexisting port
|
||||
.It dgb\fIX\fP: port \fIY\fP: got event on nonexisting port
|
||||
Some status changed on a port that is physically present but is
|
||||
unusable due to misconfiguration.
|
||||
.El
|
||||
.Bl -diag
|
||||
.It dgb\fIX\fB: port \fIY\fB: event \fIN\fB mstat \fIM\fB lstat \fIK\fB
|
||||
.It dgb\fIX\fP: port \fIY\fP: event \fIN\fP mstat \fIM\fP lstat \fIK\fP
|
||||
The driver got a strange event from card.
|
||||
Probably this means that you have a
|
||||
newer card with an extended list of events or some other hardware problem.
|
||||
.El
|
||||
.Bl -diag
|
||||
.It dgb\fIX\fB: port \fIY\fB: overrun
|
||||
.It dgb\fIX\fP: port \fIY\fP: overrun
|
||||
Input buffer has filled up.
|
||||
Problems in polling logic of driver.
|
||||
.El
|
||||
.Bl -diag
|
||||
.It dgb\fIX\fB: port \fIY\fB: FEP command on disabled port
|
||||
.It dgb\fIX\fP: port \fIY\fP: FEP command on disabled port
|
||||
Internal problems in driver.
|
||||
.El
|
||||
.Bl -diag
|
||||
.It dgb\fIX\fB: port \fIY\fB: timeout on FEP command
|
||||
.It dgb\fIX\fP: port \fIY\fP: timeout on FEP command
|
||||
Problems in hardware.
|
||||
.El
|
||||
.Sh SEE ALSO
|
||||
@ -363,7 +367,11 @@ driver and the DigiBoard driver from
|
||||
and is
|
||||
.Ud
|
||||
.Sh BUGS
|
||||
The implementation of sending BREAK is broken. BREAK of fixed length of 1/4 s
|
||||
The implementation of sending
|
||||
.Dv BREAK
|
||||
is broken.
|
||||
.Dv BREAK
|
||||
of fixed length of 1/4 s
|
||||
is sent anyway.
|
||||
.Pp
|
||||
There was a bug in implementation of
|
||||
|
Loading…
Reference in New Issue
Block a user