Manpages

NAME

lp − 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 IA 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 succeed, 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 readiness 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 IA lp driver.

ERRORS

EIO

A BPPIOC_TESTIO ioctl() call is attempted while a condition 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:

SEE ALSO

sysbus(4), attributes(5), streamio(7I)

NOTES

A read operation on a bi-directional parallel port is not supported.