blob: 0bf3220c715bfd68dbda3c69e6cdd61a3145d4b2 [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001This is the ALPHA version of the ltpc driver.
2
3In order to use it, you will need at least version 1.3.3 of the
4netatalk package, and the Apple or Farallon LocalTalk PC card.
5There are a number of different LocalTalk cards for the PC; this
6driver applies only to the one with the 65c02 processor chip on it.
7
8To include it in the kernel, select the CONFIG_LTPC switch in the
9configuration dialog. You can also compile it as a module.
10
11While the driver will attempt to autoprobe the I/O port address, IRQ
12line, and DMA channel of the card, this does not always work. For
13this reason, you should be prepared to supply these parameters
14yourself. (see "Card Configuration" below for how to determine or
15change the settings on your card)
16
17When the driver is compiled into the kernel, you can add a line such
18as the following to your /etc/lilo.conf:
19
20 append="ltpc=0x240,9,1"
21
22where the parameters (in order) are the port address, IRQ, and DMA
23channel. The second and third values can be omitted, in which case
24the driver will try to determine them itself.
25
26If you load the driver as a module, you can pass the parameters "io=",
27"irq=", and "dma=" on the command line with insmod or modprobe, or add
Lucas De Marchi970e2482012-03-30 13:37:16 -070028them as options in a configuration file in /etc/modprobe.d/ directory:
Linus Torvalds1da177e2005-04-16 15:20:36 -070029
30 alias lt0 ltpc # autoload the module when the interface is configured
31 options ltpc io=0x240 irq=9 dma=1
32
33Before starting up the netatalk demons (perhaps in rc.local), you
34need to add a line such as:
35
36 /sbin/ifconfig lt0 127.0.0.42
37
38The address is unimportant - however, the card needs to be configured
39with ifconfig so that Netatalk can find it.
40
41The appropriate netatalk configuration depends on whether you are
42attached to a network that includes AppleTalk routers or not. If,
43like me, you are simply connecting to your home Macintoshes and
44printers, you need to set up netatalk to "seed". The way I do this
45is to have the lines
46
47 dummy -seed -phase 2 -net 2000 -addr 2000.26 -zone "1033"
48 lt0 -seed -phase 1 -net 1033 -addr 1033.27 -zone "1033"
49
50in my atalkd.conf. What is going on here is that I need to fool
51netatalk into thinking that there are two AppleTalk interfaces
52present; otherwise, it refuses to seed. This is a hack, and a more
53permanent solution would be to alter the netatalk code. Also, make
54sure you have the correct name for the dummy interface - If it's
55compiled as a module, you will need to refer to it as "dummy0" or some
56such.
57
58If you are attached to an extended AppleTalk network, with routers on
59it, then you don't need to fool around with this -- the appropriate
60line in atalkd.conf is
61
62 lt0 -phase 1
63
64--------------------------------------
65
66Card Configuration:
67
68The interrupts and so forth are configured via the dipswitch on the
69board. Set the switches so as not to conflict with other hardware.
70
71 Interrupts -- set at most one. If none are set, the driver uses
72 polled mode. Because the card was developed in the XT era, the
73 original documentation refers to IRQ2. Since you'll be running
74 this on an AT (or later) class machine, that really means IRQ9.
75
76 SW1 IRQ 4
77 SW2 IRQ 3
78 SW3 IRQ 9 (2 in original card documentation only applies to XT)
79
80
81 DMA -- choose DMA 1 or 3, and set both corresponding switches.
82
83 SW4 DMA 3
84 SW5 DMA 1
85 SW6 DMA 3
86 SW7 DMA 1
87
88
89 I/O address -- choose one.
90
91 SW8 220 / 240
92
93--------------------------------------
94
95IP:
96
97Yes, it is possible to do IP over LocalTalk. However, you can't just
98treat the LocalTalk device like an ordinary Ethernet device, even if
99that's what it looks like to Netatalk.
100
101Instead, you follow the same procedure as for doing IP in EtherTalk.
102See Documentation/networking/ipddp.txt for more information about the
103kernel driver and userspace tools needed.
104
105--------------------------------------
106
107BUGS:
108
109IRQ autoprobing often doesn't work on a cold boot. To get around
110this, either compile the driver as a module, or pass the parameters
111for the card to the kernel as described above.
112
113Also, as usual, autoprobing is not recommended when you use the driver
114as a module. (though it usually works at boot time, at least)
115
116Polled mode is *really* slow sometimes, but this seems to depend on
117the configuration of the network.
118
119It may theoretically be possible to use two LTPC cards in the same
120machine, but this is unsupported, so if you really want to do this,
121you'll probably have to hack the initialization code a bit.
122
123______________________________________
124
125THANKS:
126 Thanks to Alan Cox for helpful discussions early on in this
127work, and to Denis Hainsworth for doing the bleeding-edge testing.
128
129-- Bradford Johnson <bradford@math.umn.edu>
130
131-- Updated 11/09/1998 by David Huggins-Daines <dhd@debian.org>