lp(7D) Devices lp(7D)NAMElp - driver for parallel port
SYNOPSIS
include <sys/bpp_io.h>
fd = open("/dev/lpn", flags);
DESCRIPTION
The lp driver provides the interface to the parallel ports used by
printers for x86 based systems. The lp driver is implemented as a
STREAMS device.
IOCTLS
BPPIOC_TESTIO Test transfer readiness. This command checks to
see if a read or write transfer would succeed
based on pin status. If a transfer would suc‐
ceed, 0 is returned. If a transfer would fail,
−1 is returned, and errno is set to EIO. The
error status can be retrieved using the
BPPIOC_GETERR ioctl() call.
BPPIOC_GETERR Get last error status. The argument is a
pointer to a struct bpp_error_status. See
below for a description of the elements of this
structure. This structure indicates the status
of all the appropriate status bits at the time
of the most recent error condition during a
read(2) or write(2) call, or the status of the
bits at the most recent BPPIOC_TESTIO ioctl(2)
call. The application can check transfer readi‐
ness without attempting another transfer using
the BPPIOC_TESTIO ioctl().
Error Pins Structure
This structure and symbols are defined in the include file
<sys/bpp_io.h>:
struct bpp_error_status {
char timeout_occurred; /* Not use */
char bus_error; /* Not use */
uchar_t pin_status; /* Status of pins which could cause an error */
};
/* Values for pin_status field */
#define BPP_ERR_ERR 0x01 /* Error pin active */
#define BPP_SLCT_ERR 0x02 /* Select pin active */
#define BPP_PE_ERR 0x04 /* Paper empty pin active */
Note: Other pin statuses are defined in <sys/bpp_io.h>, but
BPP_ERR_ERR, BPP_SLCT_ERR and BPP_PE_ERR are the only ones valid for
the x86 lp driver.
ERRORS
EIO A BPPIOC_TESTIO ioctl() call is attempted while a con‐
dition exists that would prevent a transfer (such as a
peripheral error).
EINVAL An ioctl() is attempted with an invalid value in the
command argument.
FILES
/platform/i86pc/kernel/drv/lp.conf configuration file for lp
driver
ATTRIBUTES
See attributes(5) for descriptions of the following attributes:
┌─────────────────────────────┬─────────────────────────────┐
│ ATTRIBUTE TYPE │ ATTRIBUTE VALUE │
├─────────────────────────────┼─────────────────────────────┤
│Architecture │x86 │
└─────────────────────────────┴─────────────────────────────┘
SEE ALSOsysbus(4), attributes(5), streamio(7I)NOTES
A read operation on a bi-directional parallel port is not supported.
SunOS 5.10 21 May 1997 lp(7D)