Print this page
12745 man page typos
   1 '\" te
   2 .\"  Copyright (c) 2004, Sun Microsystems, Inc.  All Rights Reserved
   3 .\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License").  You may not use this file except in compliance with the License.
   4 .\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.  See the License for the specific language governing permissions and limitations under the License.
   5 .\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE.  If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
   6 .TH ECPP 7D "Jan 10, 2020"
   7 .SH NAME
   8 ecpp \- IEEE 1284 compliant parallel port driver
   9 .SH SYNOPSIS
  10 .nf
  11 #include <sys/types.h>
  12 .fi
  13 
  14 .LP
  15 .nf
  16 #include <sys/ecppio.h>
  17 .fi
  18 
  19 .LP
  20 .nf
  21 ecpp@unit-address
  22 .fi
  23 
  24 .SH DESCRIPTION
  25 The \fBecpp\fR driver provides a bi-directional interface to \fIIEEE 1284\fR
  26 compliant devices as well as a forward single-directional interface to
  27 Centronics devices. In addition to the Centronics protocol, the \fBecpp\fR
  28 driver supports the \fIIEEE 1284\fRCompatibility, Nibble, and ECP protocols.
  29 \fBECPP_COMPAT_MODE\fR and \fBECPP_CENTRONICS\fR modes of operation have
  30 logically identical handshaking protocols, however devices that support
  31 \fBECPP_COMPAT_MODE\fR are \fIIEEE 1284\fR compliant devices. \fIIEEE 1284\fR
  32 compliant devices support at least \fBECPP_COMPAT_MODE\fR and
  33 \fBECPP_NIBBLE_MODE\fR. Centronics devices support only \fBECPP_CENTRONICS\fR
  34 mode.
  35 .sp
  36 .LP
  37 By default, \fBECPP_COMPAT_MODE\fR devices have a strobe handshaking pulse
  38 width of 500ns. For this mode, forward data transfers are conducted by DMA. By
  39 default, the strobe pulse width for \fBECPP_CENTRONICS\fR devices is two
  40 microseconds. Forward transfers for these devices are managed through PIO. The
  41 default characteristics for both \fBECPP_COMPAT_MODE\fR and
  42 \fBECPP_CENTRONICS\fR devices may be changed through tunable variables defined
  43 in \fBecpp.conf\fR.
  44 .sp
  45 .LP
  46 The \fBecpp\fR driver is an \fIexclusive-use\fR device, meaning that if the
  47 device is already open, subsequent opens fail with \fBEBUSY\fR.
  48 .SS "Default Operation"


 214 .RS 20n
 215 Tests the forward transfer readiness of a peripheral operating in Centronics or
 216 Compatibility mode.
 217 .sp
 218 \fBTESTIO\fR determines if the peripheral is ready to receive data by checking
 219 the open flags and the Centronics status signals. If the current mode of the
 220 device is \fBECPP_NIBBLE_MODE\fR, the driver negotiates the link into
 221 \fBECPP_COMPAT_MODE\fR, check the status signals and then return the link to
 222 \fBECPP_NIBBLE_MODE\fR mode. If the current mode is \fBECPP_CENTRONICS\fR or
 223 \fBECPP_COMPAT_MODE\fR, \fBTESTIO\fR examines the Centronics status signals in
 224 the current mode. To receive data, the device must have the \fBnErr\fR and
 225 \fBSelect\fR signals asserted and must not have the \fBPE\fR and \fBBusy\fR
 226 signals asserted. If \fBecpp\fR is transferring data, \fBTESTIO\fR waits until
 227 the previous data sent to the driver is delivered before executing
 228 \fBTESTIO\fR. However if an error condition occurs while a \fBTESTIO\fR is
 229 waiting, \fBTESTIO\fR returns immediately. If \fBTESTIO\fR determines that the
 230 conditions are ok, \fB0\fR is returned. Otherwise, \fB-1\fR is returned, errno
 231 is set to \fBEIO\fR and the state of the status pins is captured. The captured
 232 status can be retrieved using the \fBBPPIOC_GETERR\fR \fBioctl\fR(2) call. The
 233 \fBtimeout_occurred\fR and \fBbus_error\fR fields will never be set by this
 234 \fBioctl\fR(2). \fBBPPIOC_TESTIO\fR and \fBBPPIOC_GETERR\fR are compatible to
 235 the ioctls specified in \fBbpp\fR(7D).
 236 .RE
 237 
 238 .sp
 239 .ne 2
 240 .na
 241 \fB\fBBPPIOC_GETERR\fR\fR
 242 .ad
 243 .RS 20n
 244 Get last error status. The argument is a pointer to a \fBstruct
 245 bpp_error_status\fR defined in \fB<sys/bpp_io.h>\fR header file. The error
 246 status structure is:
 247 .sp
 248 .in +2
 249 .nf
 250 struct bpp_error_status {
 251    char    timeout_occurred; /* 1=timeout */
 252    char    bus_error;        /* not used */
 253    uchar_t pin_status;       /* status of pins which
 254                              /* could cause error */
 255 };


 433 See \fBattributes\fR(5) for descriptions of the following attributes:
 434 .sp
 435 
 436 .sp
 437 .TS
 438 box;
 439 c | c
 440 l | l .
 441 ATTRIBUTE TYPE  ATTRIBUTE VALUE
 442 _
 443 Architecture    PCI-based systems
 444 _
 445         ISA-based systems (x86)
 446 _
 447 Interface stability     Evolving
 448 .TE
 449 
 450 .SH SEE ALSO
 451 \fBmodload\fR(1M), \fBmodunload\fR(1M), \fBupdate_drv\fR(1M), \fBioctl\fR(2),
 452 \fBopen\fR(2), \fBread\fR(2), \fBwrite\fR(2), \fBattributes\fR(5),
 453 \fBbpp\fR(7D), \fBusbprn\fR(7D), \fBprnio\fR(7I), \fBstreamio\fR(7I)
 454 .sp
 455 .LP
 456 \fIIEEE Std 1284-1994\fR
 457 .SH DIAGNOSTICS
 458 .ne 2
 459 .na
 460 \fBParallel port controller not supported\fR
 461 .ad
 462 .sp .6
 463 .RS 4n
 464 Driver does not support parallel port controller on the given host. Attach
 465 failed.
 466 .RE
 467 
   1 '\" te
   2 .\"  Copyright (c) 2004, Sun Microsystems, Inc.  All Rights Reserved
   3 .\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License").  You may not use this file except in compliance with the License.
   4 .\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.  See the License for the specific language governing permissions and limitations under the License.
   5 .\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE.  If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
   6 .TH ECPP 7D "May 17, 2020"
   7 .SH NAME
   8 ecpp \- IEEE 1284 compliant parallel port driver
   9 .SH SYNOPSIS
  10 .nf
  11 #include <sys/types.h>
  12 .fi
  13 
  14 .LP
  15 .nf
  16 #include <sys/ecppio.h>
  17 .fi
  18 
  19 .LP
  20 .nf
  21 ecpp@unit-address
  22 .fi
  23 
  24 .SH DESCRIPTION
  25 The \fBecpp\fR driver provides a bi-directional interface to \fIIEEE 1284\fR
  26 compliant devices as well as a forward single-directional interface to
  27 Centronics devices. In addition to the Centronics protocol, the \fBecpp\fR
  28 driver supports the \fIIEEE 1284\fR Compatibility, Nibble, and ECP protocols.
  29 \fBECPP_COMPAT_MODE\fR and \fBECPP_CENTRONICS\fR modes of operation have
  30 logically identical handshaking protocols, however devices that support
  31 \fBECPP_COMPAT_MODE\fR are \fIIEEE 1284\fR compliant devices. \fIIEEE 1284\fR
  32 compliant devices support at least \fBECPP_COMPAT_MODE\fR and
  33 \fBECPP_NIBBLE_MODE\fR. Centronics devices support only \fBECPP_CENTRONICS\fR
  34 mode.
  35 .sp
  36 .LP
  37 By default, \fBECPP_COMPAT_MODE\fR devices have a strobe handshaking pulse
  38 width of 500ns. For this mode, forward data transfers are conducted by DMA. By
  39 default, the strobe pulse width for \fBECPP_CENTRONICS\fR devices is two
  40 microseconds. Forward transfers for these devices are managed through PIO. The
  41 default characteristics for both \fBECPP_COMPAT_MODE\fR and
  42 \fBECPP_CENTRONICS\fR devices may be changed through tunable variables defined
  43 in \fBecpp.conf\fR.
  44 .sp
  45 .LP
  46 The \fBecpp\fR driver is an \fIexclusive-use\fR device, meaning that if the
  47 device is already open, subsequent opens fail with \fBEBUSY\fR.
  48 .SS "Default Operation"


 214 .RS 20n
 215 Tests the forward transfer readiness of a peripheral operating in Centronics or
 216 Compatibility mode.
 217 .sp
 218 \fBTESTIO\fR determines if the peripheral is ready to receive data by checking
 219 the open flags and the Centronics status signals. If the current mode of the
 220 device is \fBECPP_NIBBLE_MODE\fR, the driver negotiates the link into
 221 \fBECPP_COMPAT_MODE\fR, check the status signals and then return the link to
 222 \fBECPP_NIBBLE_MODE\fR mode. If the current mode is \fBECPP_CENTRONICS\fR or
 223 \fBECPP_COMPAT_MODE\fR, \fBTESTIO\fR examines the Centronics status signals in
 224 the current mode. To receive data, the device must have the \fBnErr\fR and
 225 \fBSelect\fR signals asserted and must not have the \fBPE\fR and \fBBusy\fR
 226 signals asserted. If \fBecpp\fR is transferring data, \fBTESTIO\fR waits until
 227 the previous data sent to the driver is delivered before executing
 228 \fBTESTIO\fR. However if an error condition occurs while a \fBTESTIO\fR is
 229 waiting, \fBTESTIO\fR returns immediately. If \fBTESTIO\fR determines that the
 230 conditions are ok, \fB0\fR is returned. Otherwise, \fB-1\fR is returned, errno
 231 is set to \fBEIO\fR and the state of the status pins is captured. The captured
 232 status can be retrieved using the \fBBPPIOC_GETERR\fR \fBioctl\fR(2) call. The
 233 \fBtimeout_occurred\fR and \fBbus_error\fR fields will never be set by this
 234 \fBioctl\fR(2).

 235 .RE
 236 
 237 .sp
 238 .ne 2
 239 .na
 240 \fB\fBBPPIOC_GETERR\fR\fR
 241 .ad
 242 .RS 20n
 243 Get last error status. The argument is a pointer to a \fBstruct
 244 bpp_error_status\fR defined in \fB<sys/bpp_io.h>\fR header file. The error
 245 status structure is:
 246 .sp
 247 .in +2
 248 .nf
 249 struct bpp_error_status {
 250    char    timeout_occurred; /* 1=timeout */
 251    char    bus_error;        /* not used */
 252    uchar_t pin_status;       /* status of pins which
 253                              /* could cause error */
 254 };


 432 See \fBattributes\fR(5) for descriptions of the following attributes:
 433 .sp
 434 
 435 .sp
 436 .TS
 437 box;
 438 c | c
 439 l | l .
 440 ATTRIBUTE TYPE  ATTRIBUTE VALUE
 441 _
 442 Architecture    PCI-based systems
 443 _
 444         ISA-based systems (x86)
 445 _
 446 Interface stability     Evolving
 447 .TE
 448 
 449 .SH SEE ALSO
 450 \fBmodload\fR(1M), \fBmodunload\fR(1M), \fBupdate_drv\fR(1M), \fBioctl\fR(2),
 451 \fBopen\fR(2), \fBread\fR(2), \fBwrite\fR(2), \fBattributes\fR(5),
 452 \fBusbprn\fR(7D), \fBprnio\fR(7I), \fBstreamio\fR(7I)
 453 .sp
 454 .LP
 455 \fIIEEE Std 1284-1994\fR
 456 .SH DIAGNOSTICS
 457 .ne 2
 458 .na
 459 \fBParallel port controller not supported\fR
 460 .ad
 461 .sp .6
 462 .RS 4n
 463 Driver does not support parallel port controller on the given host. Attach
 464 failed.
 465 .RE