asy(4d) 맨 페이지 - 윈디하나의 솔라나라

개요

섹션
맨 페이지 이름
검색(S)

asy(4d)

asy(4D)                   Device Drivers & /dev files                  asy(4D)

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(4I) device control functions specified by flags in  the  c_cflag
       word  of  the termios structure, and by the IGNBRK, IGNPAR, PARMRK, IN‐
       PCK, IXON, IXANY, or IXOFF flags in the c_iflag  word  of  the  termios
       structure.  All other termio(4I) functions must be performed by STREAMS
       modules pushed atop the driver. When a device is opened, the ldterm(4M)
       and ttcompat(4M)  STREAMS modules are automatically pushed  on  top  of
       the stream, providing the standard termio(4I) 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 re‐
       spectively). Serial ports on non-standard ISA-bus I/O addresses are ac‐
       cessed 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 in‐
       coming and outgoing calls, a special feature is available that is  con‐
       trolled  by the minor device number. By accessing character-special de‐
       vices with names of the form /dev/cua/n, it is possible to open a  port
       without  the Carrier Detect signal being asserted, either through hard‐
       ware or an equivalent software mechanism. These  devices  are  commonly
       known as dial-out lines.

       Note -



         This  module is affected by the setting of the eeprom variables, tty-
         ignore-cd and tty-rts-dtr-off, where tty represents the name  of  the
         tty  interface  in  question: ttya, ttyb, ttyc, or ttyd. For example,
         ttya is affected by variables  ttya-ignore-cd  and  ttya-rts-dtr-off.
         For information on these parameters, see the eeprom(8) 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)) 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.


       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(4M).

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]          dial-in tty lines
       /dev/term/[012...]


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


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


       /kernel/drv/asy.conf     asy configuration file


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

       tab()  box; cw(2.75i) |cw(2.75i) lw(2.75i) |lw(2.75i) ATTRIBUTE TYPEAT‐
       TRIBUTE VALUE _ Architecturex86 _ Availabilitydriver/serial/asy


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

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.


Oracle Solaris 11.4               15 Mar 2024                          asy(4D)
맨 페이지 내용의 저작권은 맨 페이지 작성자에게 있습니다.
RSS ATOM XHTML 5 CSS3