Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
CY(4)			 BSD Kernel Interfaces Manual			 CY(4)

     cy	-- Cyclades Cyclom-Y serial driver

     For one ISA card:
	   device cy

	   In /boot/device.hints:"isa""10""0xd4000""0x2000"

     For two ISA cards:
	   device cy

	   In /boot/device.hints:"isa""10""0xd4000""0x2000""isa""11""0xd6000""0x2000"

     For PCI cards:
	   device cy
	   options CY_PCI_FASTINTR

	   No lines are	required in /boot/device.hints for PCI cards.

     Minor numbering:

     The cy driver provides support for	Cirrus Logic CD1400-based EIA RS-232C
     (CCITT V.24) communications interfaces (ports) on Cyclades	Cyclom-Y
     boards.  Each CD1400 provides 4 ports.  Cyclom-Y boards with various num-
     bers of CD1400's are available.  This driver supports up to 8 CD1400's
     (32 ports)	per board.

     Input and output for each line may	set independently to the following
     speeds: 50, 75, 110, 134.5, 150, 300, 600,	1200, 1800, 2400, 4800,	9600,
     19200, 38400, 57600, or 115200 bps.  Other	speeds of up to	150000 are
     supported by the termios interface	but not	by the sgttyb compatibility
     interface.	 The CD1400 is not fast	enough to handle speeds	above 115200
     bps effectively.  It can transmit on a single line	at slightly more than
     115200 bps, but when 4 lines are active in	both directions	its limit is
     about 90000 bps on	each line.

     Serial ports controlled by	the cy driver can be used for both `callin'
     and `callout'.  For each port there is a callin device and	a callout de-
     vice.  The	minor number of	the callout device is 128 higher than that of
     the corresponding callin port.  The callin	device is general purpose.
     Processes opening it normally wait	for carrier and	for the	callout	device
     to	become inactive.  The callout device is	used to	steal the port from
     processes waiting for carrier on the callin device.  Processes opening it
     do	not wait for carrier and put any processes waiting for carrier on the
     callin device into	a deeper sleep so that they do not conflict with the
     callout session.  The callout device is abused for	handling programs that
     are supposed to work on general ports and need to open the	port without
     waiting but are too stupid	to do so.

     The cy driver also	supports an initial-state and a	lock-state control de-
     vice for each of the callin and the callout "data"	devices.  The minor
     number of the initial-state device	is 32 higher than that of the corre-
     sponding data device.  The	minor number of	the lock-state device is 64
     higher than that of the corresponding data	device.	 The termios settings
     of	a data device are copied from those of the corresponding initial-state
     device on first opens and are not inherited from previous opens.  Use
     stty(1) in	the normal way on the initial-state devices to program initial
     termios states suitable for your setup.

     The lock termios state acts as flags to disable changing the termios
     state.  E.g., to lock a flag variable such	as CRTSCTS, use	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

     Correct programs talking to correctly wired external devices work with
     almost arbitrary initial states and almost	no locking, but	other setups
     may benefit from changing some of the default 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 RTS/CTS handshaking at all
     times and off for devices that do not support it at all.  CLOCAL should
     be	locked on for devices that do not support carrier.  HUPCL may be
     locked off	if you do not 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	set-
     ting.  The	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.

   Kernel Configuration	Options
     The CY_PCI_FASTINTR option	should be used to avoid	suboptimal interrupt
     handling for PCI Cyclades boards.	The PCI	BIOS must be configured	with
     the cy interrupt not shared with any other	active device for this option
     to	work.  This option is not the default because it is currently harmful
     in	certain	cases where it does not	work.

     /dev/ttyc??   for callin ports
     /dev/ttylc??  corresponding callin	initial-state and lock-state devices

     /dev/cuac??   for callout ports
     /dev/cualc??  corresponding callout initial-state and lock-state devices

     /etc/rc.serial  examples of setting the initial-state and lock-state de-

     The first question	mark in	these device names is short for	the card num-
     ber (a decimal number between 0 and 65535 inclusive).  The	second ques-
     tion mark is short	for the	port number (a letter in the range [0-9a-v]).

     cy%d: silo	overflow.  Problem in the interrupt handler.

     cy%d: interrupt-level buffer overflow.  Problem in	the bottom half	of the

     cy%d: tty-level buffer overflow.  Problem in the application.  Input has
     arrived faster than the given module could	process	it and some has	been

     stty(1), termios(4), tty(4), comcontrol(8), pstat(8)

     The cy driver is derived from the sio driver and the NetBSD cy driver and
     is	currently under	development.

     Serial consoles are not implemented.

BSD				 May 24, 2004				   BSD


Want to link to this manual page? Use this URL:

home | help