ntwoc —
Riscom/N2, N2pci, WANic 400 synchronous serial interfaces
ntwoc* at pci? dev ? function ? flags 0
ntwoc0 at isa? port 0x300 irq 5 iomem 0xc8000 flags 1
The ntwoc device driver supports bit-synchronous serial
  communication using Cisco HDLC framing. The cards are capable of being driven
  by 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.
The ISA Riscom/N2 card has a jumper block to set the IRQ and a DIP
    switch to set the port address the card will use. The values programmed into
    the card must be specified with the port and
    irq locators in the kernel configuration line. The
    iomem locator must be specified and must occur on a
    16k boundary. The driver uses a 16k region of io memory. Bit 0 of the
    flags locator indicates if there is a second serial
    port available on the card.
Currently clock source and speed information is specified with the
    flags locator in the kernel configuration file. The
    flags field has the following format.
  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(*)
 
  - tmc
- Defines the timer constant. The base clock frequency is divided by
      tmc to generate the main clock for receiving and
      sending. Further division is possible with the tdiv
      and rdiv divisor options. A value of 0 is treated as
      256.
- tdiv
- Defines the transmit divisor as 2^(tdiv). The
      internal transmit clock frequency is determined by dividing the base clock
      frequency by tmc and then dividing by
      2^(tdiv).
- rdiv
- Defines the receive divisor as 2^(rdiv). The
      internal receive clock frequency is determined by dividing the base clock
      frequency by tmc and then dividing by
      2^(rdiv).
- e0 e1
- If true the internal clock source is used to drive the line clock for port
      0 or port 1 respectively.
- rxs0 rxs1
- Specifies which clock source to use for receiving data on port 0 and port
      1 respectively. The following values are accepted:
    
    
      - 0
- Line clock.
- 1
- Line clock with noise suppression.
- 2
- Internal clock.
 
- txs0 txs1
- Specifies which clock source to use for transmitting data on port 0 and
      port 1 respectively. The following values are accepted:
    
    
      - 0
- Line clock.
- 1
- Internal clock.
- 2
- Receive clock.
 
- np
- (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.
Cards supported by thentwoc driver include:
  - SDL Communications Riscom/N2
- SDL Communications N2pci
- SDL Communications WANic 400 (untested)
  - ntwoc0: TXDMA underrun - fifo depth maxed
- Indicates that the serial port's FIFO is being drained faster 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 maximized (i.e., 1 less than the depth of the
    FIFO).
- ntwoc0: RXDMA buffer overflow
- Indicates that a frame is being received by the card, but there are no
      free receive buffers.
The PCI driver first appeared in NetBSD 1.4. Much of the
  ISA driver was adapted from the FreeBSDsr driver and first appeared in
  NetBSD 1.5.
Use of the flags locator for setting the clock sources
  and speeds should be replaced with ioctl's and a control program.