asy man page on SmartOS

Printed from http://www.polarhome.com/service/man/?qf=asy&af=0&tf=2&of=SmartOS

ASY(7D)								       ASY(7D)

NAME
       asy - asynchronous serial port driver

SYNOPSIS
       #include <fcntl.h>

       #include <sys/termios.h>

       open("/dev/term/n", mode);

       open("/dev/tty/n", mode);

       open("/dev/cua/n", mode);

DESCRIPTION
       The asy module is a loadable STREAMS driver that provides basic support
       for Intel-8250, National Semiconductor-16450, 16550, and some 16650 and
       16750  and  equivalent  UARTs connected via the ISA-bus, in addition to
       basic asynchronous communication support. The asy module supports those
       termio(7I)  device  control functions specified by flags in the c_cflag
       word of the termios structure,  and  by	the  IGNBRK,  IGNPAR,  PARMRK,
       INPCK,  IXON,  IXANY, or IXOFF flags in the c_iflag word of the termios
       structure. 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(7I) interface.

       The character-special devices /dev/term/a, /dev/term/b, /dev/term/c and
       /dev/term/d are used to access the four standard	 serial	 ports	(COM1,
       COM2,  COM3  and	 COM4  at  I/O addresses 3f8, 2f8, 3e8 and 2e8 respec‐
       tively).	 Serial	 ports	on  non-standard  ISA-bus  I/O	addresses  are
       accessed	 via  the  character-special devices /dev/term/0, /dev/term/1,
       etc.  Device names are typically used to provide a logical access point
       for a dial-in line that is used with a modem.

       To  allow  a  single  tty  line to be connected to a modem and used for
       incoming and outgoing calls, a special feature  is  available  that  is
       controlled  by  the minor device number. By accessing character-special
       devices with names of the form /dev/cua/n,  it is possible  to  open  a
       port  without  the Carrier Detect signal being asserted, either through
       hardware or an equivalent software mechanism. These  devices  are  com‐
       monly known as dial-out lines.

       Note -

	 This  module  is affected by the setting of certain eeprom variables,
	 ttya-ignore-cd and ttya-rts-dtr-off (and similarly for ttyb-,	ttyc-,
	 and  ttyd-  parameters). For information on these parameters, see the
	 eeprom(1M) man page.

       Note -

	 For serial ports on the standard COM1 to COM4	I/O  addresses	above,
	 the  default setting for ttya-ignore-cd and ttya-rts-dtr-off is true.
	 If any of these ports are connected to a modem, these settings should
	 be  changed to false. For serial ports on non-standard I/O addresses,
	 the default setting for ttya-ignore-cd and ttya-rts-dtr-off is false.

APPLICATION PROGRAMMING INTERFACE
       Once a /dev/cua/n line is opened, the corresponding tty line cannot  be
       opened  until  the /dev/cua/n line is closed. A blocking open will wait
       until the /dev/cua/n line is closed  (which  will  drop	Data  Terminal
       Ready,  after  which Carrier Detect will usually drop as well) and car‐
       rier is detected again. A non-blocking open will return	an  error.  If
       the  /dev/ttydn	line  has  been opened successfully (usually only when
       carrier is recognized on the modem), the corresponding /dev/cua/n  line
       cannot  be  opened. This allows a modem to be attached to /dev/term/[n]
       (renamed from /dev/tty[n]) and used for dial-in (by enabling  the  line
       for  login  in  /etc/inittab)  or  dial-out  (by tip(1) or uucp(1C)) as
       /dev/cua/n when no one is logged in on the line.

IOCTLS
       The standard set of termio ioctl() calls are supported by asy.

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

       The  input  and output line speeds may be set to any speed that is sup‐
       ported by termio. The speeds cannot be set independently; for  example,
       when  the  output speed is set, the input speed is automatically set to
       the same speed.

       When the asy 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 erroneous electrical signals cannot
       be distinguished from one deliberately sent by remote DCE.  The	Alter‐
       nate Break sequence can be used as a remedy against this. Due to a risk
       of incorrect sequence interpretation, SLIP  and	certain	 other	binary
       protocols should not be run over the serial console port when Alternate
       Break sequence is in effect.  Although PPP is a binary protocol, it  is
       able  to	 avoid these sequences using the ACCM feature in RFC 1662. For
       Solaris PPP 4.0, you do this  by	 adding	 the  following	 line  to  the
       /etc/ppp/options	 file  (or other configuration files used for the con‐
       nection; see pppd(1M) for details):

	 asyncmap 0x00002000

       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 more information on breaking (entering the  debugger
       or monitor), see kbd(1) and kb(7M).

ERRORS
       An open() will fail under the following conditions:

       ENXIO
		The unit being opened does not exist.

       EBUSY
		The  dial-out  device is being opened while 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 open.

       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.

FILES
       /dev/term/[a-d]
       /dev/term/[012...]
				dial-in tty lines

       /dev/cua/[a-d]
       /dev/cua/[012...]
				 dial-out tty lines

       /kernel/drv/amd64/asy
				64-bit kernel module for 64-bit x86 platform

       /kernel/drv/asy.conf
				asy configuration file

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

       ┌───────────────┬─────────────────┐
       │ATTRIBUTE TYPE │ ATTRIBUTE VALUE │
       ├───────────────┼─────────────────┤
       │Architecture   │ x86		 │
       └───────────────┴─────────────────┘

SEE ALSO
       tip(1), kbd(1),	uucp(1C),  eeprom(1M),	pppd(1M),  ioctl(2),  open(2),
       termios(3C),    attributes(5),	 ldterm(7M),   ttcompat(7M),   kb(7M),
       termio(7I)

DIAGNOSTICS
       asyn: silo overflow.

	   The hardware overrun occurred before the input character  could  be
	   serviced.

       asyn: ring buffer overflow.

	   The driver's character input ring buffer overflowed before it could
	   be serviced.

				  Oct 9, 2004			       ASY(7D)
[top]

List of man pages available for SmartOS

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net