usbser_edge(7D)
NAME
usbser_edge - Digi Edgeport USB to serial converter driver
SYNOPSIS
#include <fcntl.h>
#include <sys/termios.h>
usbser_edge@unit
DESCRIPTION
The usbser_edge driver is a loadable STREAMS and USBA
(Solaris USB architecture) compliant client driver that pro-
vides basic asynchronous communication support for Digi
Edgeport USB-to-serial converters. Supported devices include
Edgeport/1, Edgeport/2, Edgeport/21, Edgeport/4,
Edgeport/421, Edgeport/8, and Edgeport/416. Serial device
streams are built with appropriate modules that are pushed
atop the usbser_edge driver by the autopush(1M) facility.
The usbser_edge module supports the termio(7I) device con-
trol functions specified by flags in the c_cflag word of the
termios structure, and by the IGNBRK, IGNPAR, PARMRK and
INPCK 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 automat-
ically pushed on top of the stream, providing the standard
termio(7I) interface.
Use device logical names /dev/term/[0-9]* to access the
serial ports. These 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 through device logical name/dev/cua/[0-9]*, you
can open a port without the Carrier Detect signal being
asserted, either through hardware or an equivalent software
mechanism. These devices are commonly known as dial-out
lines.
Unlike onboard serial ports, the usbser_edge ports cannot
serve as a local serial console.
APPLICATION PROGRAMMING INTERFACE
A dial-in line can be opened only if the corresponding
dial-out line is closed. A blocking /dev/term open waits
until the /dev/cua line is closed (which drops Data Terminal
Ready, after which Carrier Detect usually drops as well) and
carrier is detected again. A non-blocking/dev/term open
returns an error if the /dev/cua is open.
If the /dev/term line is opened successfully (usually only
when carrier is recognized on the modem), the corresponding
/dev/cua line cannot be opened. This allows a modem and port
to be used for dial-in (by enabling the line for login in
/etc/inittab) or dial-out (by tip(1), or uucp(1C)) when no
one is logged in on the line.
Device hot-removal is functionally equivalent to modem
disconnect event, as defined in termio(7I).
IOCTLS
The usbser_edge driver supports the standard set of
termio(7I) ioctl calls.
Input and output line speeds can be set to the following
baud rates: 0, 50, 75, 110, 134, 150, 200, 300, 600, 1200,
1800, 2400, 4800, 9600, 19200, 38400, 57600, 115200, or
230400. Input and output line speeds cannot be set
independently; for example, when the output speed is set,
the input speed is automatically set to the same speed.
ERRORS
An open() fails under the following conditions:
ENXIO The unit being opened does not exist.
EBUSY The /dev/cua (dial-out) device is being opened while
the/dev/term (dial-in device) is open, or the dial-in
device is being opened with a no-delay open while the
dial-out device is open.
EBUSY The unit has been marked as exclusive-use by another
process with a TIOCEXCL ioctl() call.
EIO USB device I/O error.
FILES
/kernel/drv/usbser_edge
32 bit ELF kernel module for original USBA framework.*
/kernel/drv/sparcv9/usbser_edge
64 bit ELF kernel module for original USBA framework.*
(SPARC only).
/kernel/drv/usba10_usbser_edge
32 bit ELF kernel module for USBA 1.0 framework.*
/kernel/drv/sparcv9/usba10_usbser_edge
64 bit ELF kernel module for USBA 1.0 framework.*
(SPARC only).
/kernel/drv/usba10_usbser_edge.conf
usba10_usbser_edge configuration file.
/dev/cua/[0-9]*
dial-out tty lines.
/dev/term/[0-9]*
dial-in tty lines.
ATTRIBUTES
See attributes(5) for descriptions of the following attri-
butes:
____________________________________________________________
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
| ____________________________|_____________________________|_
| Architecture | PCI-based systems |
| ____________________________|_____________________________|_
| Availability | SUNWusb (All architectures)|
| | SUNWusbx (SPARC only) |
|_____________________________|_____________________________|
SEE ALSO
strconf(1), tip(1), uucp(1C), autopush(1M), ioctl(2),
open(2), termios(3C), attributes(5), usba(7D), termio(7I),
ldterm(7M), ttcompat(7M)
http://www.sun.com/desktop/whitepapers.html
DIAGNOSTICS
In addition to being logged, the following messages may
appear on the system console. All messages are formatted in
the following manner:
Warning: <device path> usbser_edge<instance num>: Error Message...
or
Warning: <device path> usba10_usbser_edge<instance num>: Error Message...
Device was disconnected while open. Data may have been lost.
The device was hot-removed or powered off while it was
open and a possible data transfer was in progress.
disconnect and reconnect.
Device is not identical to the previous one on this port. Please
The device was hot-removed while open. A new device
was hot-inserted which is not identical to the origi-
nal device. Please disconnect the device and
reconnect the original device to the same port.
Device has been reconnected, but data may have been lost.
The device that was hot-removed from its USB port has
been re-inserted again to the same port. It is avail-
able for access but data from a previous transfer may
be lost.
Cannot access device. Please reconnect <name>.
This device has been disconnected because a device
other than the original one has been inserted. The
driver informs you of this fact by displaying the name
of the original device.
Man(1) output converted with
man2html