Print this page
12745 man page typos

Split Close
Expand all
Collapse all
          --- old/usr/src/man/man7d/usbprn.7d
          +++ new/usr/src/man/man7d/usbprn.7d
   1    1  '\" te
   2    2  .\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
   3    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    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    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 USBPRN 7D "May 13, 2017"
        6 +.TH USBPRN 7D "May 17, 2020"
   7    7  .SH NAME
   8    8  usbprn \- USB printer class driver
   9    9  .SH SYNOPSIS
  10      -.LP
  11   10  .nf
  12   11  #include <sys/usb/clients/printer/usb_printer.h>
  13   12  .fi
  14   13  
  15   14  .LP
  16   15  .nf
  17   16  #include <sys/ecppio.h>
  18   17  .fi
  19   18  
  20   19  .LP
  21   20  .nf
  22   21  usbprn@unit-address
  23   22  .fi
  24   23  
  25   24  .SH DESCRIPTION
  26      -.LP
  27   25  The \fBusbprn\fR driver is a USBA (Solaris USB Architecture) compliant client
  28   26  driver that supports the \fIUSB Printer Class 1.0\fR specification. The
  29   27  \fBusbprn\fR driver supports a subset of the \fBecpp\fR(7D) parallel port
  30   28  driver functionality. However, unlike the STREAMS-based \fBecpp\fR driver,
  31   29  \fBusbprn\fR is a character driver.
  32   30  .sp
  33   31  .LP
  34   32  The \fBusbprn\fR driver supports all USB printer-class compliant printers.
  35   33  .sp
  36   34  .LP
  37   35  The \fBusbrpn\fR driver includes support for communicating with many different
  38   36  printers. To use these printers, it may be necessary to install and configure
  39   37  additional format conversion packages available in the Solaris distribution.
  40   38  Configuration of these conversion packages under the Solaris printing system
  41   39  can be simplified through the use of the \fBprintmgr\fR(1M). This tool allows
  42   40  selection of printer manufacturer/model information while creating a print
  43   41  queue. For USB connected printers, it attempts to pre-select the
  44   42  manufacturer and model information based on the 1284 device id supplied by the
  45   43  printer.
  46   44  .SS "UGEN (Generic USB)"
  47      -.LP
  48   45  The \fBusbprn\fR driver also supports a \fBugen\fR(7D) interface allowing raw
  49   46  access to the device, for example by libusb applications, by
  50   47  passing the drivers bound to each interface. Because a libusb application might
  51   48  change the state of the device, you should not access the device through the
  52   49  child interface drivers.
  53   50  .SH DEFAULT OPERATION
  54      -.LP
  55   51  With certain minor exceptions (outlined in the Notes sections below), the
  56   52  \fBusbprn\fR driver supports a subset of the \fBecpp\fR(7D) ioctl interfaces:
  57   53  .sp
  58   54  .LP
  59   55  Configuration variables are set to their default values each time the USB
  60   56  printer device is attached. The \fBwrite_timeout\fR period (defined in the
  61   57  ECPPIOC_SETPARMS ioctl description below) is set to 90 seconds. The mode is set
  62   58  to centronics mode (ECPP_CENTRONICS). Parameters can be changed through the
  63   59  ECPPIOC_SETPARMS ioctl and read through the ECPPIOC_GETPARMS ioctl. Each time
  64   60  the USB printer device is opened, the device is marked as busy and all further
↓ open down ↓ 1 lines elided ↑ open up ↑
  66   62  device and the driver can send data and obtain device id and status.
  67   63  .LP
  68   64  Note -
  69   65  .sp
  70   66  .RS 2
  71   67  Unlike the \fBecpp\fR(7D) driver, \fBusbprn\fR resets configuration variables
  72   68  to their default values with each \fBattach\fR(9E). (The \fBecpp\fR(7D) driver
  73   69  resets configuration variables with each \fBopen\fR(2).)
  74   70  .RE
  75   71  .SH WRITE OPERATION
  76      -.LP
  77   72  A \fBwrite\fR(2) operation returns the number of bytes successfully written to
  78   73  the device. If a failure occurs while a driver is transferring data to printer,
  79   74  the contents of the status bits are captured at the time of the error and can
  80   75  be retrieved by the application program using the ECPPIOC_GETERR \fBioctl\fR(2)
  81   76  call. The captured status information is overwritten each time an
  82   77  ECPPIOC_TESTIO \fBioctl\fR(2) occurs.
  83   78  .SH IOCTLS
  84      -.LP
  85   79  The \fBusbprn\fR driver supports \fBprnio\fR(7I) interfaces. Note that the
  86   80  \fBPRNIOC_RESET\fR command has no effect on USB printers.
  87   81  .sp
  88   82  .LP
  89   83  The following \fBioctl\fR(2) calls are supported for backward compatibility and
  90   84  are not recommended for new applications.
  91   85  .sp
  92   86  .ne 2
  93   87  .na
  94   88  \fB\fBECPPIOC_GETPARMS\fR\fR
↓ open down ↓ 52 lines elided ↑ open up ↑
 147  141  .ne 2
 148  142  .na
 149  143  \fB\fBBPPIOC_TESTIO\fR\fR
 150  144  .ad
 151  145  .RS 20n
 152  146  Tests the transfer readiness of a print device and checks status bits to
 153  147  determine if a \fBwrite\fR(2) will succeed. If status bits are set, a transfer
 154  148  will fail. If a transfer will succeed, zero is returned. If a transfer fails,
 155  149  the driver returns \fBEIO\fR and the state of the status bits are captured. The
 156  150  captured status can be retrieved using the BPPIOC_GETERR \fBioctl\fR(2) call.
 157      -BPPIOC_TESTIO and BPPIOC_GETERR are compatible to the ioctls specified in
 158      -\fBbpp\fR(7D).
 159  151  .LP
 160  152  Note -
 161  153  .sp
 162  154  .RS 2
 163  155  Unlike the \fBecpp\fR(7D) driver, only the ECPP_CENTRONICS mode is currently
 164  156  supported in \fBusbprn\fR. Additionally, \fBbus_error\fR and
 165  157  \fBtimeout_occurred\fR fields are not used in the \fBusbprn\fR interface. (In
 166  158  \fBecpp\fR(7D), \fBtimeout_occurred\fR is used.)
 167  159  .RE
 168  160  .RE
↓ open down ↓ 67 lines elided ↑ open up ↑
 236  228  .LP
 237  229  Note -
 238  230  .sp
 239  231  .RS 2
 240  232  Unlike \fBecpp\fR(7D), only the ECPP_CENTRONICS mode is currently supported in
 241  233  \fBusbprn\fR.
 242  234  .RE
 243  235  .RE
 244  236  
 245  237  .SH READ OPERATION
 246      -.LP
 247  238  The \fBread\fR operation is not supported and returns \fBEIO\fR.
 248  239  .SH ERRORS
 249  240  .ne 2
 250  241  .na
 251  242  \fB\fBEBUSY\fR\fR
 252  243  .ad
 253  244  .RS 19n
 254  245  The device has been opened and another open is attempted. An attempt has been
 255  246  made to unload the driver while one of the units is open.
 256  247  .RE
↓ open down ↓ 90 lines elided ↑ open up ↑
 347  338  .sp
 348  339  .ne 2
 349  340  .na
 350  341  \fB\fB/dev/printers/\fIn\fR\fR\fR
 351  342  .ad
 352  343  .RS 30n
 353  344  Character special files
 354  345  .RE
 355  346  
 356  347  .SH ATTRIBUTES
 357      -.LP
 358  348  See \fBattributes\fR(5) for descriptions of the following attributes:
 359  349  .sp
 360  350  
 361  351  .sp
 362  352  .TS
 363  353  box;
 364  354  c | c
 365  355  l | l .
 366  356  ATTRIBUTE TYPE  ATTRIBUTE VALUE
 367  357  _
 368  358  Architecture    SPARC, x86, PCI-based systems
 369  359  .TE
 370  360  
 371  361  .SH SEE ALSO
 372      -.LP
 373  362  \fBcfgadm_usb\fR(1M), \fBprintmgr\fR(1M), \fBioctl\fR(2), \fBopen\fR(2),
 374  363  \fBread\fR(2), \fBwrite\fR(2), \fBattributes\fR(5),
 375      -\fBbpp\fR(7D), \fBecpp\fR(7D), \fBugen\fR(7D), \fBusba\fR(7D), \fBprnio\fR(7I),
      364 +\fBecpp\fR(7D), \fBugen\fR(7D), \fBusba\fR(7D), \fBprnio\fR(7I),
 376  365  \fBattach\fR(9E)
 377  366  .sp
 378  367  .LP
 379  368  \fIWriting Device Drivers\fR
 380  369  .sp
 381  370  .LP
 382  371  \fIUniversal Serial Bus Specification 1.0 and 1.1\fR
 383  372  .sp
 384  373  .LP
 385  374  \fIUSB Device Class Definition for Printing Devices 1.0\fR
 386  375  .sp
 387  376  .LP
 388  377  \fISystem Administration Guide: Basic Administration\fR
 389  378  .SH DIAGNOSTICS
 390      -.LP
 391  379  In addition to being logged, the following messages may appear on the system
 392  380  console. All messages are formatted in the following manner:
 393  381  .sp
 394  382  .in +2
 395  383  .nf
 396  384  Warning: <device path> (usbprn<instance num>): Error Message...
 397  385  .fi
 398  386  .in -2
 399  387  .sp
 400  388  
↓ open down ↓ 38 lines elided ↑ open up ↑
 439  427  \fBPrinter has been reconnected but data may have been lost.\fR
 440  428  .ad
 441  429  .sp .6
 442  430  .RS 4n
 443  431  The printer that was hot-removed from its USB port has been re-inserted again
 444  432  to the same port. It is available for access but the job that was running prior
 445  433  to the hot-removal may be lost.
 446  434  .RE
 447  435  
 448  436  .SH NOTES
 449      -.LP
 450  437  The USB printer will be power managed if the device is closed.
 451  438  .sp
 452  439  .LP
 453  440  If a printer is hot-removed before a job completes, the job is terminated and
 454  441  the driver will return EIO. All subsequent opens will return \fBENODEV\fR. If a
 455  442  printer is hot-removed, an LP reconfiguration may not be needed if a printer is
 456  443  re-inserted on the same port. If re-inserted on a different port, an LP
 457  444  reconfiguration may be required.
 458  445  .sp
 459  446  .LP
 460  447  The USB Parallel Printer Adapter is not hotpluggable. The printer should be
 461  448  connected to USB Parallel Printer Adapter before plugging the USB cable into
 462  449  host or hub port and should be removed only after disconnecting the USB cable
 463  450  of USB Parallel Printer Adapter from the host or hub port.
    
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX