1.\" $MirOS: src/share/man/man4/plip.4,v 1.3 2008/11/08 22:24:15 tg Exp $ 2.\" 3.\" Copyright (c) 2002 Martin Husemann <martin@rumolt.teuto.de> 4.\" Copyright (c) 2003 Thorsten Glaser <tg@mirbsd.org> 5.\" All rights reserved. 6.\" 7.\" Redistribution and use in source and binary forms, with or without 8.\" modification, are permitted provided that the following conditions 9.\" are met: 10.\" 1. Redistributions of source code must retain the above copyright 11.\" notice, this list of conditions and the following disclaimer. 12.\" 2. The name of the author may not be used to endorse or promote products 13.\" derived from this software without specific prior written permission 14.\" 15.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR 16.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES 17.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 18.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, 19.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 20.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 24.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25.\" 26.Dd January 29, 2002 27.Dt PLIP 4 i386 28.Os 29.Sh NAME 30.Nm plip 31.Nd networking via the standard PC parallel port 32.Sh SYNOPSIS 33.Cd "option PLIP # Ethernet over parallel port" 34.Cd "lpt0 at isa? port 0x378 irq 7 # standard PC parallel ports" 35.Cd "lpt1 at isa? port 0x278 irq 5" 36.Cd "lpt2 at isa? port 0x3bc irq 5 # Hercules cards don't have an IRQ" 37.Sh DESCRIPTION 38The 39.Nm 40network interface shows up as 41.Pa plip0 42when using 43.Pa lpt0 , 44as 45.Pa plip1 46when using 47.Pa lpt1 48and 49.Pa plip2 50when using 51.Pa lpt2 . 52.Pp 53A parallel port can not drive a 54.Nm 55interface when configured without an irq. 56The port can be used to drive other devices when the corresponding 57.Nm 58interface is configured down. 59.Pp 60The 61.Nm 62interface simulates Ethernet on a parallel cable 63with special wiring (see below), known as a 64.Ar "parallel LapLink cable" 65widely available from PC shops. 66.Pp 67Its acronym is derived from SLIP and means 68.Ar "Parallel IP Protocol" , 69which, in fact, is wrong: it can handle any protocol available on 70Ethernet, not just IP. 71.Pp 72Although a 73.Nm 74connection always is point-to-point, the interface is configured 75like every standard Ethernet interface and uses 76.Ar ARP 77to find its neighbor. 78This is inefficient, but provides interoperability 79with other operating systems. 80.Pp 81Set the link2 flag on the interface if it is not working. 82Please report back if it helps for you. 83.Sh INTEROPERABILITY 84.Nm 85uses the 86.Ar "Crynwr protocol" 87(CLPIP) defined by Russel Nelson <nelson@crynwr.com>. 88This makes it interoperable with the GPL licenced MS-DOS packet driver 89.Ar "PLIP.COM" 90available by anonymous ftp from 91.Pa ftp://ftp.crynwr.com/drivers/plip.zip 92and Linux 1.3.x (make sure to configure the interface to use 93.Ar ARP 94when connecting to a Linux system). 95.Sh WIRING 96The following describes the connection of two male 25 pin sub-D connectors 97which fit into standard PC parallel ports (no, PCs don't use Centronics 98connectors). 99.Bl -tag -width "GROUND(25)" -offset indent -compact 100.It INIT(16) 101INIT(16) 102.It SLCTIN(17) 103SLCTIN(17) 104.It GROUND(25) 105GROUND(25) 106.It D0(2) 107ERROR(15) 108.It D1(3) 109SLCT(13) 110.It D2(4) 111PAPOUT(12) 112.It D3(5) 113ACK(10) 114.It D4(6) 115BUSY(11) 116.El 117.Pp 118Additional grounds are 18, 19, 20, 21, 22, 23 and 24. 119Do not connect D5(7), D6(8), D7(9), STROBE(1) and FEED(14). 120.Sh SEE ALSO 121.Xr ifconfig 8 , 122.Xr pppd 8 , 123.Xr slip 8 124.Sh AUTHORS 125Matthias Pfaller wrote the original 126.Nx 127pc532 version. 128.Pp 129Martin Husemann ported it to the 130.Nx 131i386 . 132.Pp 133Thorsten Glaser first ported the port of the 134.Nx 135i386 version for 136.Ox 137by Pablo Ruiz Garcia to 138.Mx , 139then re-did the port using a newer 140.Nx 141source version for 142.Mx 7 . 143.Sh BUGS 144The 145.Nm 146driver has not yet been successfully tested on 147.Mx . 148.Pp 149The driver uses a hard-coded network soft interrupt, which is the only 150thing that makes it i386 architecture dependent. 151As soon as generic soft interrupt allocation is available, 152this should be changed, which would make the driver machine 153independent (but still dependent on the ISA parallel port architecture). 154.Pp 155The protocol is too much overhead, a bidirectional input/output 156routine switchable to a well-designed network line discipline 157with on-line compression would be far superior. 158.Fx 159does this, but it makes it impossible to communicate with MS-DOS 160and Linux boxen. 161.Pp 162There are some parallel ports which can use all 8 data bits for input 163and output, you can make up a parallel handshake protocol and a cable 164with different wiring to get an 8 bit clean (instead of 4 bit now) 165data path out of this. 166This is currently not supported. 167.Pp 168There is apparently work on the way (the parbus) which will integrate 169this and other parallel-port devices (zip drives e.a.) more smoothly. 170.Pp 171The 172.Nm 173driver cannot currently drive a protocol other than IPv4. 174.Sh HINTS 175Go buy a pocket Ethernet adaptor or a PCMCIA Ethernet adaptor and 176write a driver for it. 177It has much better throughput, lower load and 178a less coupled system between client and server. 179