CY(4)                     OpenBSD Programmer's Manual                    CY(4)

NAME
     cy - Cyclades Cyclom-{4, 8, 16}Y asynchronous comms board device driver

SYNOPSIS
     cy0 at isa? tty irq 10 iomem 0xdc000 iosiz 8192 vector cyintr
     cy1 at pci?

DESCRIPTION
     This driver provides an interface to Cyclades Cyclom-4Y, Cyclom-8Y and
     Cyclom-16Y asynchronous multiport serial boards.  These boards are based
     around Cirrus Logic CD1400 communication controllers.

     The device minor numbers for this driver are encoded as follows:

         c c x x u u u u     - bits in the minor device number

         bits    meaning
         ----    -------
         uuuu    physical serial line (i.e., unit) to use
                     0-7 on a cyclom-8Y, 0-15 on a cyclom-16Y

         xx      unused

         cc      carrier control mode
                     00      complete hardware carrier control of the tty.
                             DCD must be high for the open(2) to complete.
                     01      reserved
                     10      carrier ignored until a high->low transition
                     11      carrier completed ignored

DIAGNOSTICS
     cy%d: tty input queue overflow  Incoming characters have been discarded
     due to a buffer overflow.  This is caused by the process in control of
     the device not read(2)'ing characters fast enough.

     cy%d: receive fifo overrun  Incoming characters have been discarded due
     to a CD1400 channel overrun.  This is caused by interrupts not being ser-
     viced sufficiently quickly to prevent the 12 byte receive FIFO on a seri-
     al channel from overflowing.  Reducing the value of the RxFifoThreshold
     #define from 8 to something smaller may help slow machines avoid this
     problem.  The driver must have been compiled with the LogOverruns option
     defined (the default) in order for this condition to be logged.

SEE ALSO
     com(4), termios(4), tty(4)

AUTHORS
     The driver was written by Andrew Herbert <andrew@werple.apana.org.au>,
     and is still under development (from time to time :-).

HISTORY
     Some ideas for the architecture of this driver's two-layer processing
     model were derived from the fas 2.10 driver by Uwe Doering <gemini@gemi-
     nix.in-berlin.de> and the high-performance com driver by Bruce Evans
     <bde@kralizec.zeta.org.au>.

     This work was made possible through the donation of a Cyclom-8Y board by
     the manufacturer, Cyclades Corporation.  However, neither Cyclades nor
     the author make any warranties regarding this software, nor guarantees of
     support.

BUGS
     There is currently no BREAK handling - breaks are ignored.  There is no
     support for bad-character reporting, except via PARMRK.  The Cyclom-[48]Y
     boards do not listen to the RTS signal for receiver flow control.  FIFO
     overruns are only logged when the termios IGNPAR setting is enabled.

OpenBSD 3.0                     October 5, 1993                              2
