summaryrefslogtreecommitdiff
path: root/static/freebsd/man4/lpt.4 3.html
blob: 42ff0867871d273addc3dcdf21ce450dbbadaa6c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
<table class="head">
  <tr>
    <td class="head-ltitle">LPT(4)</td>
    <td class="head-vol">Device Drivers Manual</td>
    <td class="head-rtitle">LPT(4)</td>
  </tr>
</table>
<div class="manual-text">
<section class="Sh">
<h1 class="Sh" id="NAME"><a class="permalink" href="#NAME">NAME</a></h1>
<p class="Pp"><code class="Nm">lpt</code> &#x2014; <span class="Nd">generic
    printer device driver</span></p>
</section>
<section class="Sh">
<h1 class="Sh" id="SYNOPSIS"><a class="permalink" href="#SYNOPSIS">SYNOPSIS</a></h1>
<p class="Pp"><code class="Cd">device ppc</code>
  <br/>
  <code class="Cd">device ppbus</code>
  <br/>
  <code class="Cd">device lpt</code></p>
</section>
<section class="Sh">
<h1 class="Sh" id="DESCRIPTION"><a class="permalink" href="#DESCRIPTION">DESCRIPTION</a></h1>
<p class="Pp">The current
    <a class="permalink" href="#lpt"><i class="Em" id="lpt">lpt</i></a> driver
    is the port of the original lpt driver to the <a class="Xr">ppbus(4)</a>
    system.</p>
<p class="Pp">One purpose of this port was to allow parallel port sharing with
    other parallel devices. Secondly, inb()/outb() calls have been replaced by
    ppbus function calls. lpt is now arch-independent thanks to the ppbus
    interface. See <a class="Xr">ppbus(4)</a> for more info about the ppbus
    system.</p>
<p class="Pp">The parallel port bus is allocated by lpt when the printer device
    is opened and released only when the transfer is completed: either when the
    device is closed or when the entire buffer is sent in interrupt driven
  mode.</p>
<p class="Pp">The driver can be configured to be either interrupt-driven, or to
    poll the printer. Ports that are configured to be interrupt-driven can be
    switched to polled mode by using the <a class="Xr">lptcontrol(8)</a>
    command.</p>
<p class="Pp">Depending on your hardware, extended capabilities may be
    configured with the <a class="Xr">lptcontrol(8)</a> command. With an ECP/ISA
    port, you can take advantage of FIFO and DMA.</p>
<p class="Pp">In order to retrieve printer info from /dev/lpt0, just apply the
    <code class="Nm">cat</code> command to the device. If the printer supports
    IEEE1284 nibble mode and has data to send to the host, you will get it.</p>
</section>
<section class="Sh">
<h1 class="Sh" id="FILES"><a class="permalink" href="#FILES">FILES</a></h1>
<dl class="Bl-tag Bl-compact">
  <dt><span class="Pa">/dev/lpt0</span></dt>
  <dd>first parallel port driver</dd>
</dl>
</section>
<section class="Sh">
<h1 class="Sh" id="SEE_ALSO"><a class="permalink" href="#SEE_ALSO">SEE
  ALSO</a></h1>
<p class="Pp"><a class="Xr">ppbus(4)</a>, <a class="Xr">ppc(4)</a>,
    <a class="Xr">lptcontrol(8)</a></p>
</section>
<section class="Sh">
<h1 class="Sh" id="HISTORY"><a class="permalink" href="#HISTORY">HISTORY</a></h1>
<p class="Pp">This driver replaces the functionality of the lpa driver, which is
    now defunct.</p>
</section>
<section class="Sh">
<h1 class="Sh" id="BUGS"><a class="permalink" href="#BUGS">BUGS</a></h1>
<p class="Pp">There are lots of them, especially in cheap parallel port
    implementations.</p>
<p class="Pp">It is only possible to open a lpt port when a printer is connected
    and on-line, making it impossible to run <a class="Xr">lptcontrol(8)</a>
    when there is no printer connected.</p>
<p class="Pp">This driver could still stand a rewrite.</p>
</section>
</div>
<table class="foot">
  <tr>
    <td class="foot-date">February 14, 1999</td>
    <td class="foot-os">FreeBSD 15.0</td>
  </tr>
</table>