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

FreeBSD Manual Pages


home | help
se(7D)				    Devices				se(7D)

       se - Siemens 82532 ESCC serial communications driver


       The se module is	a loadable  STREAMS driver that	provides basic support
       for the 82532 ESCC hardware and basic asynchronous and synchronous com-
       munication  support. This manual	page describes the asynchronous	proto-
       col interface; for information on the synchronous interface, please see
       the se_hdlc(7D) manual page.


	      This  module is affected by the setting of specific eeprom vari-
	      ables. For information on	parameters that	are persistent	across
	      reboots, see the eeprom(1M) man page.

       The  platform  specific device bus address for the se module is bus_ad-
       dress. The se module's port_name	is a single letter (a-z).

       The Siemens 82532 provides two serial input/output channels capable  of
       supporting  a variety of	communication protocols. A typical system will
       use one of these	devices	to implement  two  serial  ports  (port_name),
       usually	configured  for	RS-423 (which also supports most RS-232	equip-
       ment). The Siemens 82532	uses 64	character input	and  output  FIFOs  to
       reduce  system overhead.	When receiving characters, the CPU is notified
       when 32 characters have arrived (one-half of receive buffer is full) or
       no  character  has  arrived  in	the time it would take to receive four
       characters at the current baud rate.

       When sending characters,	the Siemens 82532 places the first 64  charac-
       ters  to	be sent	into its output	FIFO and then notifies the CPU when it
       is half empty (32 characters left).  Because the	 se module  waits  for
       the  Siemens 82532 to transmit the remaining characters within its out-
       put FIFO	before making requested	changes, delays	 may  occur  when  the
       port's attributes are being modified.

       The  se	module implements CTS/RTS flow control in hardware. To prevent
       data overruns, remove CTS/RTS flow control responsibility from the  CPU
       during periods of high system load.

       In  async mode (obtained	by opening  /dev/cua/[a-z], /dev/term/[a-z] or
       /dev/tty[a-z]), the driver supports the termio(7I) device control func-
       tions  specified	by flags in the	c_cflag	word of	the termios structure,
       and by the IGNBRK, IGNPAR, PARMRK, or INPCK flags in the	c_iflag	 word.
       All  other  termio(7I)  functions  must be performed by STREAMS modules
       pushed atop the driver.	When a device is opened,  the  ldterm(7M)  and
       ttcompat(7M)  STREAMS  modules  are  automatically pushed on top	of the
       stream, providing the standard termio interface.

       Each of the following are valid	name  space  entries:  /dev/cua/[a-z],
       /dev/term/[a-z],	 and /dev/tty[a-z]. The	number of entries used in this
       name space are machine dependent. The /dev/tty[a-z] device names	 exist
       only  if	 the  SunOS 4.x	Binary Compatibility Package is	installed. The
       /dev/tty[a-z] device names are created by the ucblinks  command,	 which
       is available only with the SunOS	4.x Binary Compatibility Package.

       You  can	connect	a single tty line to a modem for incoming and outgoing
       calls using a special feature controlled	by the minor device number. By
       accessing character-special devices with	names of the form /dev/cua/[a-
       z], it is possible to open a port without the Carrier Detect signal be-
       ing  asserted, either through hardware or an equivalent software	mecha-
       nism. These devices are commonly	known as dial-out lines.

       After a /dev/cua/[a-z] line is opened, the corresponding	tty line  can-
       not  be opened until the	/dev/cua/[a-z] line is closed. A blocking open
       will wait until the /dev/cua/[a-z] line is closed (which	will drop Data
       Terminal	 Ready	and  Carrier  Detect) and carrier is detected again. A
       non-blocking open will return an	error. If the tty line has been	opened
       successfully  (usually  only  when carrier is recognized	on the modem),
       the corresponding /dev/cua/[a-z]	line cannot be opened. This  allows  a
       modem  to  be  attached to a device, (for example, /dev/term/ [a-z] re-
       named from /dev/tty[a-z]) and used for dial-in (by  enabling  the  line
       for  login  in  /etc/inittab)  and  dial-out (by	tip(1) or uucp(1C)) as
       /dev/cua/[a-z] when no one is logged in on the line.

       The se module supports the standard set of termio ioctl() calls.

       Breaks can be generated by the TCSBRK, TIOCSBRK,	and  TIOCCBRK  ioctl()

       The  state  of  the  DCD,  CTS,	RTS,  and DTR interface	signals	can be
       queried through the use of the TIOCM_CAR, TIOCM_CTS, TIOCM_RTS, and TI-
       OCM_DTR	arguments to the TIOCMGET ioctl	command, respectively.	Due to
       hardware	limitations, only the RTS and DTR signals may be  set  through
       their  respective  arguments  to	 the  TIOCMSET,	TIOCMBIS, and TIOCMBIC
       ioctl commands.

       The input and output line speeds	may be set to all baud rates supported
       by  termio.  Input  and output line speeds cannot be set	independently;
       when you	set the	output speed, the input	speed is automatically set  to
       the same	speed.

       When  using baud	rates over 100,000 baud, the software changes the line
       driver configuration to handle the higher data rates. This  action  de-
       creases	the  theoretical maximum cable length from 70 meters to	30 me-

       When the	se module is used to service the serial	console	port, it  sup-
       ports a BREAK condition that allows the system to enter the debugger or
       the monitor. The	BREAK condition	is generated by	 hardware  and	it  is
       usually	enabled	 by  default. A	BREAK condition	originating from erro-
       neous electrical	signals	cannot be distinguished	from one  deliberately
       sent  by	 remote	DCE. Due to the	risk of	incorrect sequence interpreta-
       tion, binary protocols such as PPP, SLIP	and others should not  be  run
       over  the  serial  console port when the	Alternate Break	sequence is in
       effect. By default, the Alternate Break sequence	is a  three  character
       sequence:  carriage  return, tilde and control-B	(CR ~ CTRL-B), but may
       be changed by the driver. For information on breaking (entering the de-
       bugger or monitor), see kadb(1) and kb(7M.)

       An open() will fail under the following conditions:

	      ENXIO The	unit being opened does not exist.

	      EBUSY The	dial-out device	is being opened	and the	dial-in	device
		    is already open, or	the dial-in  device  is	 being	opened
		    with  a  no-delay  open and	the dial-out device is already

	      EBUSY The	port is	in use by another serial protocol.

	      EBUSY The	unit has  been	marked	as  exclusive-use  by  another
		    process with a TIOCEXCL ioctl() call.

	      EINTR The	open was interrupted by	the delivery of	a signal.

	     dial-out tty lines

	     dial-in tty lines

	     binary compatibility package device names

	     synchronous devices - see	se_hdlc(7D).

	     synchronous control clone device

       See attributes(5) for descriptions of the following attributes:

       |      ATTRIBUTE	TYPE	     |	    ATTRIBUTE VALUE	   |
       |Architecture		     |SPARC			   |

       tip(1), kadb(1),	ucblinks(1B), cu(1C), uucp(1C),	eeprom(1M), ports(1M),
       ioctl(2),   open(2),   attributes(5),zs(7D),   zsh(7D),	  se_hdlc(7D),
       termio(7I), ldterm(7M), ttcompat(7M), kb(7M)

       sen: fifo overrun
	     The Siemens 82532 internal	 FIFO received more data than it could
	     handle. This indicates that Solaris was not servicing data	inter-
	     rupts  fast enough	and suggests a system with too many interrupts
	     or	a data line with a data	rate that is too high.

       sen: buffer overrun
	     The  se module was	unable to  store  data	it  removed  from  the
	     Siemens  82532  FIFO.  The	 user process is not reading data fast
	     enough, and suggests an overloaded	system.	If possible,  the  ap-
	     plication should enable flow control (either  CTSRTS or  XONXOFF)
	     to	allow the driver to backpressure the remote  system  when  the
	     local buffers fill	up.

SunOS 5.9			  12 Jun 2001				se(7D)


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

home | help