2004-05-12 02:59:56 +04:00
|
|
|
.\" $NetBSD: ntwoc.4,v 1.9 2004/05/11 22:59:56 wiz Exp $
|
2000-01-05 03:17:25 +03:00
|
|
|
.\"
|
|
|
|
.\" Copyright (c) 2000 Christian E. Hopps
|
|
|
|
.\" 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.
|
|
|
|
.\" 3. The name of the author may not be used to endorse or promote products
|
|
|
|
.\" derived from this software without specific prior written permission
|
|
|
|
.\"
|
|
|
|
.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``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 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 October 2, 1998
|
|
|
|
.Dt NTWOC 4
|
|
|
|
.Os
|
|
|
|
.Sh NAME
|
|
|
|
.Nm ntwoc
|
2004-05-12 02:42:47 +04:00
|
|
|
.Nd Riscom/N2, N2pci, WANic 400 synchronous serial interfaces
|
2000-01-05 03:17:25 +03:00
|
|
|
.Sh SYNOPSIS
|
2003-01-25 03:17:30 +03:00
|
|
|
.Cd "ntwoc* at pci? dev ? function ? flags 0"
|
|
|
|
.Cd "ntwoc0 at isa? port 0x300 irq 5 iomem 0xc8000 flags 1"
|
2000-01-05 03:17:25 +03:00
|
|
|
.Sh DESCRIPTION
|
|
|
|
The
|
|
|
|
.Nm
|
|
|
|
device driver supports bit-synchronous serial communication using
|
2004-05-12 02:58:22 +04:00
|
|
|
Cisco HDLC framing.
|
|
|
|
The cards are capable of being driven by
|
2000-01-05 03:17:25 +03:00
|
|
|
the line clock or from an internal baud rate generator.
|
|
|
|
The devices all use the Hitachi hd64570 serial chip.
|
|
|
|
The hd64570 supports 2 asynchronous/byte-synchronous/bit-synchronous
|
|
|
|
serial ports, and has a 4-channel DMA controller for loading
|
|
|
|
the serial port FIFOs.
|
|
|
|
.Pp
|
2004-05-12 02:59:56 +04:00
|
|
|
The ISA Riscom/N2 card has a jumper block to set the IRQ and a DIP switch
|
2004-05-12 02:58:22 +04:00
|
|
|
to set the port address the card will use.
|
|
|
|
The values programmed into the card must be specified with the
|
2000-01-05 03:17:25 +03:00
|
|
|
.Cm port
|
|
|
|
and
|
|
|
|
.Cm irq
|
2001-06-12 15:35:03 +04:00
|
|
|
locators in the kernel configuration line.
|
2000-01-05 03:17:25 +03:00
|
|
|
The
|
2001-06-12 15:35:03 +04:00
|
|
|
.Cm iomem
|
2000-01-05 03:17:25 +03:00
|
|
|
locator must be specified and must occur on a 16k boundary.
|
2004-05-12 02:58:22 +04:00
|
|
|
The driver uses a 16k region of io memory.
|
|
|
|
Bit 0 of the
|
2000-01-05 03:17:25 +03:00
|
|
|
.Cm flags
|
|
|
|
locator indicates if there is a second serial port available on the
|
|
|
|
card.
|
|
|
|
.Pp
|
|
|
|
Currently
|
|
|
|
clock source and speed information is specified with the
|
|
|
|
.Cm flags
|
2004-05-12 02:58:22 +04:00
|
|
|
locator in the kernel configuration file.
|
|
|
|
The flags field has the following format.
|
2000-01-05 03:17:25 +03:00
|
|
|
.Bd -literal
|
|
|
|
3 2 1
|
|
|
|
1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0
|
|
|
|
+-------------+ +-----+ +-----+ + +---+ +-+ + +---+ +-+ +
|
|
|
|
tmc tdiv rdiv e1 rxs1 ts1 e0 rxs0 txs0 np(*)
|
|
|
|
.Ed
|
|
|
|
.Bl -tag -width "rxs0 rxs1"
|
|
|
|
.It Va tmc
|
2004-05-12 02:58:22 +04:00
|
|
|
Defines the timer constant.
|
|
|
|
The base clock frequency is divided by
|
2000-01-05 03:17:25 +03:00
|
|
|
.Va tmc
|
2004-05-12 02:58:22 +04:00
|
|
|
to generate the main clock for receiving and sending.
|
|
|
|
Further division is possible with the
|
2000-01-05 03:17:25 +03:00
|
|
|
.Va tdiv
|
|
|
|
and
|
|
|
|
.Va rdiv
|
2004-05-12 02:58:22 +04:00
|
|
|
divisor options.
|
|
|
|
A value of 0 is treated as 256.
|
2000-01-05 03:17:25 +03:00
|
|
|
.It Va tdiv
|
|
|
|
Defines the transmit divisor as
|
|
|
|
.Pf "2^(" Va tdiv ) .
|
|
|
|
The internal transmit clock
|
|
|
|
frequency is determined by dividing the base clock frequency by
|
|
|
|
.Va tmc
|
|
|
|
and then dividing by
|
|
|
|
.Pf "2^(" Va tdiv ) .
|
|
|
|
.It Va rdiv
|
|
|
|
Defines the receive divisor as
|
|
|
|
.Pf "2^(" Va rdiv ) .
|
|
|
|
The internal receive clock
|
|
|
|
frequency is determined by dividing the base clock frequency by
|
|
|
|
.Va tmc
|
|
|
|
and then dividing by
|
|
|
|
.Pf "2^(" Va rdiv ) .
|
|
|
|
.It Va e0 Va e1
|
|
|
|
If true the internal clock source is used to drive the line clock for port 0
|
|
|
|
or port 1 respectively.
|
|
|
|
.It Va rxs0 Va rxs1
|
|
|
|
Specifies which clock source to use for receiving data on port 0 and
|
2004-05-12 02:58:22 +04:00
|
|
|
port 1 respectively.
|
|
|
|
The following values are accepted:
|
2000-01-05 03:17:25 +03:00
|
|
|
.Pp
|
|
|
|
.Bl -tag -width "000" -compact
|
|
|
|
.It 0
|
|
|
|
Line clock.
|
|
|
|
.It 1
|
|
|
|
Line clock with noise suppression.
|
|
|
|
.It 2
|
|
|
|
Internal clock.
|
|
|
|
.El
|
|
|
|
.It Va txs0 Va txs1
|
|
|
|
Specifies which clock source to use for transmitting data on port 0
|
2004-05-12 02:58:22 +04:00
|
|
|
and port 1 respectively.
|
|
|
|
The following values are accepted:
|
2000-01-05 03:17:25 +03:00
|
|
|
.Pp
|
|
|
|
.Bl -tag -width "000" -compact
|
|
|
|
.It 0
|
|
|
|
Line clock.
|
|
|
|
.It 1
|
|
|
|
Internal clock.
|
|
|
|
.It 2
|
|
|
|
Receive clock.
|
|
|
|
.El
|
|
|
|
.It Va np
|
2004-05-12 02:58:22 +04:00
|
|
|
(For the ISA card only)
|
|
|
|
A value of 1 indicates there is a second serial
|
|
|
|
port present on the card.
|
|
|
|
This is auto-detected on the PCI card and need not be specified.
|
2000-01-05 03:17:25 +03:00
|
|
|
.El
|
|
|
|
.Sh HARDWARE
|
2001-06-12 15:35:03 +04:00
|
|
|
Cards supported by the
|
2000-01-05 03:17:25 +03:00
|
|
|
.Nm
|
|
|
|
driver include:
|
|
|
|
.Pp
|
|
|
|
.Bl -item -compact
|
|
|
|
.It
|
|
|
|
SDL Communications Riscom/N2
|
|
|
|
.It
|
|
|
|
SDL Communications N2pci
|
|
|
|
.It
|
2004-05-12 02:59:56 +04:00
|
|
|
SDL Communications WANic 400 (untested)
|
2000-01-05 03:17:25 +03:00
|
|
|
.El
|
|
|
|
.Sh DIAGNOSTICS
|
|
|
|
.Bl -diag
|
2003-01-25 03:17:30 +03:00
|
|
|
.It "ntwoc0: TXDMA underrun - fifo depth maxed"
|
2000-01-05 03:17:25 +03:00
|
|
|
Indicates that the serial port's FIFO is being drained faster
|
2004-05-12 02:58:22 +04:00
|
|
|
than DMA can fill it.
|
|
|
|
The driver automatically increases the low-water mark at which to
|
|
|
|
begin DMA transfers when underruns occur.
|
|
|
|
This diagnostic is issued when the low-water mark is
|
2000-01-05 03:17:25 +03:00
|
|
|
maximized (i.e., 1 less than the depth of the FIFO).
|
2003-01-25 03:17:30 +03:00
|
|
|
.It "ntwoc0: RXDMA buffer overflow"
|
2000-01-05 03:17:25 +03:00
|
|
|
Indicates that a frame is being received by the card, but
|
|
|
|
there are no free receive buffers.
|
|
|
|
.El
|
|
|
|
.Sh SEE ALSO
|
|
|
|
.Xr intro 4 ,
|
|
|
|
.Xr isa 4 ,
|
|
|
|
.Xr pci 4 ,
|
|
|
|
.Xr ifconfig 8
|
|
|
|
.Sh HISTORY
|
2004-05-12 02:59:56 +04:00
|
|
|
The PCI driver first appeared in
|
2000-01-05 03:17:25 +03:00
|
|
|
.Nx 1.4 .
|
2004-05-12 02:59:56 +04:00
|
|
|
Much of the ISA driver was adapted from the
|
2000-01-05 03:17:25 +03:00
|
|
|
.Fx
|
|
|
|
.Nm sr
|
|
|
|
driver and first appeared in
|
|
|
|
.Nx 1.5 .
|
2001-09-22 05:39:12 +04:00
|
|
|
.Sh BUGS
|
|
|
|
Use of the
|
|
|
|
.Cm flags
|
|
|
|
locator for setting the clock sources and speeds should be replaced with
|
|
|
|
ioctl's and a control program.
|