Penguin
Annotated edit history of lp(4) version 1, including all changes. View license author blame.
Rev Author # Line
1 perry 1 LP
2 !!!LP
3 NAME
4 SYNOPSIS
5 CONFIGURATION
6 DESCRIPTION
7 FILES
8 AUTHORS
9 SEE ALSO
10 ----
11 !!NAME
12
13
14 lp - line printer devices
15 !!SYNOPSIS
16
17
18 __#include __
19 !!CONFIGURATION
20
21
22 __lp__[[0-2] are character devices for the parallel line
23 printers; they have major number 6 and minor number 0-2. The
24 minor numbers correspond to the printer port base addresses
25 0x03bc, 0x0378 and 0x0278. Usually they have mode 220 and
26 are owned by root and group lp. You can use printer ports
27 either with polling or with interrupts. Interrupts are
28 recommended when high traffic is expected, e.g. for laser
29 printers. For usual dot matrix printers polling will usually
30 be enough. The default is polling.
31 !!DESCRIPTION
32
33
34 The following ioctl(2) calls are
35 supported:
36
37
38 __int ioctl(int__ ''fd''__, LPTIME, int__
39 ''arg''__)__
40
41
42 Sets the amount of time that the driver sleeps before
43 rechecking the printer when the printer's buffer appears to
44 be filled to ''arg''. If you have a fast printer,
45 decrease this number; if you have a slow printer then
46 increase it. This is in hundredths of a second, the default
47 2 being 0.02 seconds. It only influences the polling
48 driver.
49
50
51 __int ioctl(int__ ''fd''__, LPCHAR, int__
52 ''arg''__)__
53
54
55 Sets the maximum number of busy-wait iterations which the
56 polling driver does while waiting for the printer to get
57 ready for receiving a character to ''arg''. If printing
58 is too slow, increase this number; if the system gets too
59 slow, decrease this number. The default is 1000. It only
60 influences the polling driver.
61
62
63 __int ioctl(int__ ''fd''__, LPABORT, int__
64 ''arg''__)__
65
66
67 If ''arg'' is 0, the printer driver will retry on errors,
68 otherwise it will abort. The default is 0.
69
70
71 __int ioctl(int__ ''fd''__, LPABORTOPEN, int__
72 ''arg''__)__
73
74
75 If ''arg'' is 0, open(2) will be aborted on error,
76 otherwise error will be ignored. The default is to ignore
77 it.
78
79
80 __int ioctl(int__ ''fd''__, LPCAREFUL, int__
81 ''arg''__)__
82
83
84 If ''arg'' is 0, then the out-of-paper, offline and error
85 signals are required to be false on all writes, otherwise
86 they are ignored. The default is to ignore
87 them.
88
89
90 __int ioctl(int__ ''fd''__, LPWAIT, int__
91 ''arg''__)__
92
93
94 Sets the number of busy waiting iterations to wait before
95 strobing the printer to accept a just-written character, and
96 the number of iterations to wait before turning the strobe
97 off again, to ''arg''. The specification says this time
98 should be 0.5 microseconds, but experience has shown the
99 delay caused by the code is already enough. For that reason,
100 the default value is 0. This is used for both the polling
101 and the interrupt driver.
102
103
104 __int ioctl(int__ ''fd''__, LPSETIRQ, int__
105 ''arg''__)__
106
107
108 This ioctl() requires superuser privileges. It takes an int
109 containing the new IRQ as argument. As a side effect, the
110 printer will be reset. When ''arg'' is 0, the polling
111 driver will be used, which is also default.
112
113
114 __int ioctl(int__ ''fd''__, LPGETIRQ, int
115 *__''arg''__)__
116
117
118 Stores the currently used IRQ in ''arg''.
119
120
121 __int ioctl(int__ ''fd''__, LPGETSTATUS, int
122 *__''arg''__)__
123
124
125 Stores the value of the status port in ''arg''. The bits
126 have the following meaning:
127
128
129 Refer to your printer manual for the meaning of the signals. Note that undocumented bits may also be set, depending on your printer.
130
131
132 __int ioctl(int__ ''fd''__, LPRESET)__
133
134
135 Resets the printer. No argument is used.
136 !!FILES
137
138
139 /dev/lp*
140 !!AUTHORS
141
142
143 The printer driver was originally written by Jim Weigand and
144 Linus Torvalds. It was further improved by Michael K.
145 Johnson. The interrupt code was written by Nigel Gamble.
146 Alan Cox modularised it. LPCAREFUL, LPABORT, LPGETSTATUS
147 were added by Chris Metcalf.
148 !!SEE ALSO
149
150
151 mknod(1), chown(1), chmod(1),
152 tunelp(8), lpcntl(8)
153 ----
This page is a man page (or other imported legacy content). We are unable to automatically determine the license status of this page.