116 than one second and less than 300 seconds (five
117 minutes.)
118
119 Note -
120
121 Unlike the ecpp(7D) driver, only the
122 ECPP_CENTRONICS mode is currently supported in
123 usbprn. Also, the semantics of write_timeout in
124 usbprn differ from ecpp(7D). Refer to ecpp(7D)
125 for information.
126
127
128 BPPIOC_TESTIO
129 Tests the transfer readiness of a print device and
130 checks status bits to determine if a write(2) will
131 succeed. If status bits are set, a transfer will
132 fail. If a transfer will succeed, zero is returned.
133 If a transfer fails, the driver returns EIO and the
134 state of the status bits are captured. The captured
135 status can be retrieved using the BPPIOC_GETERR
136 ioctl(2) call. BPPIOC_TESTIO and BPPIOC_GETERR are
137 compatible to the ioctls specified in bpp(7D).
138
139 Note -
140
141 Unlike the ecpp(7D) driver, only the
142 ECPP_CENTRONICS mode is currently supported in
143 usbprn. Additionally, bus_error and
144 timeout_occurred fields are not used in the
145 usbprn interface. (In ecpp(7D), timeout_occurred
146 is used.)
147
148
149 BPPIOC_GETERR
150 Get last error status. The argument is a pointer to
151 a struct bpp_error_status. This structure indicates
152 the status of all the appropriate status bits at
153 the time of the most recent error condition during
154 a write(2) call, or the status of the bits at the
155 most recent BPPIOC_TESTIO ioctl(2) call.
156
157 struct bpp_error_status {
266
267
268 /dev/printers/n
269 Character special files
270
271
272 ATTRIBUTES
273 See attributes(5) for descriptions of the following attributes:
274
275
276
277
278 +---------------+-------------------------------+
279 |ATTRIBUTE TYPE | ATTRIBUTE VALUE |
280 +---------------+-------------------------------+
281 |Architecture | SPARC, x86, PCI-based systems |
282 +---------------+-------------------------------+
283
284 SEE ALSO
285 cfgadm_usb(1M), printmgr(1M), ioctl(2), open(2), read(2), write(2),
286 attributes(5), bpp(7D), ecpp(7D), ugen(7D), usba(7D), prnio(7I),
287 attach(9E)
288
289
290 Writing Device Drivers
291
292
293 Universal Serial Bus Specification 1.0 and 1.1
294
295
296 USB Device Class Definition for Printing Devices 1.0
297
298
299 System Administration Guide: Basic Administration
300
301 DIAGNOSTICS
302 In addition to being logged, the following messages may appear on the
303 system console. All messages are formatted in the following manner:
304
305 Warning: <device path> (usbprn<instance num>): Error Message...
306
307
337
338 NOTES
339 The USB printer will be power managed if the device is closed.
340
341
342 If a printer is hot-removed before a job completes, the job is
343 terminated and the driver will return EIO. All subsequent opens will
344 return ENODEV. If a printer is hot-removed, an LP reconfiguration may
345 not be needed if a printer is re-inserted on the same port. If re-
346 inserted on a different port, an LP reconfiguration may be required.
347
348
349 The USB Parallel Printer Adapter is not hotpluggable. The printer
350 should be connected to USB Parallel Printer Adapter before plugging the
351 USB cable into host or hub port and should be removed only after
352 disconnecting the USB cable of USB Parallel Printer Adapter from the
353 host or hub port.
354
355
356
357 May 13, 2017 USBPRN(7D)
|
116 than one second and less than 300 seconds (five
117 minutes.)
118
119 Note -
120
121 Unlike the ecpp(7D) driver, only the
122 ECPP_CENTRONICS mode is currently supported in
123 usbprn. Also, the semantics of write_timeout in
124 usbprn differ from ecpp(7D). Refer to ecpp(7D)
125 for information.
126
127
128 BPPIOC_TESTIO
129 Tests the transfer readiness of a print device and
130 checks status bits to determine if a write(2) will
131 succeed. If status bits are set, a transfer will
132 fail. If a transfer will succeed, zero is returned.
133 If a transfer fails, the driver returns EIO and the
134 state of the status bits are captured. The captured
135 status can be retrieved using the BPPIOC_GETERR
136 ioctl(2) call.
137
138 Note -
139
140 Unlike the ecpp(7D) driver, only the
141 ECPP_CENTRONICS mode is currently supported in
142 usbprn. Additionally, bus_error and
143 timeout_occurred fields are not used in the
144 usbprn interface. (In ecpp(7D), timeout_occurred
145 is used.)
146
147
148 BPPIOC_GETERR
149 Get last error status. The argument is a pointer to
150 a struct bpp_error_status. This structure indicates
151 the status of all the appropriate status bits at
152 the time of the most recent error condition during
153 a write(2) call, or the status of the bits at the
154 most recent BPPIOC_TESTIO ioctl(2) call.
155
156 struct bpp_error_status {
265
266
267 /dev/printers/n
268 Character special files
269
270
271 ATTRIBUTES
272 See attributes(5) for descriptions of the following attributes:
273
274
275
276
277 +---------------+-------------------------------+
278 |ATTRIBUTE TYPE | ATTRIBUTE VALUE |
279 +---------------+-------------------------------+
280 |Architecture | SPARC, x86, PCI-based systems |
281 +---------------+-------------------------------+
282
283 SEE ALSO
284 cfgadm_usb(1M), printmgr(1M), ioctl(2), open(2), read(2), write(2),
285 attributes(5), ecpp(7D), ugen(7D), usba(7D), prnio(7I), attach(9E)
286
287
288 Writing Device Drivers
289
290
291 Universal Serial Bus Specification 1.0 and 1.1
292
293
294 USB Device Class Definition for Printing Devices 1.0
295
296
297 System Administration Guide: Basic Administration
298
299 DIAGNOSTICS
300 In addition to being logged, the following messages may appear on the
301 system console. All messages are formatted in the following manner:
302
303 Warning: <device path> (usbprn<instance num>): Error Message...
304
305
335
336 NOTES
337 The USB printer will be power managed if the device is closed.
338
339
340 If a printer is hot-removed before a job completes, the job is
341 terminated and the driver will return EIO. All subsequent opens will
342 return ENODEV. If a printer is hot-removed, an LP reconfiguration may
343 not be needed if a printer is re-inserted on the same port. If re-
344 inserted on a different port, an LP reconfiguration may be required.
345
346
347 The USB Parallel Printer Adapter is not hotpluggable. The printer
348 should be connected to USB Parallel Printer Adapter before plugging the
349 USB cable into host or hub port and should be removed only after
350 disconnecting the USB cable of USB Parallel Printer Adapter from the
351 host or hub port.
352
353
354
355 May 17, 2020 USBPRN(7D)
|