162306a36Sopenharmony_ci.. SPDX-License-Identifier: GPL-2.0
262306a36Sopenharmony_ci
362306a36Sopenharmony_ci========================================
462306a36Sopenharmony_ciThe COPS LocalTalk Linux driver (cops.c)
562306a36Sopenharmony_ci========================================
662306a36Sopenharmony_ci
762306a36Sopenharmony_ciBy Jay Schulist <jschlst@samba.org>
862306a36Sopenharmony_ci
962306a36Sopenharmony_ciThis driver has two modes and they are: Dayna mode and Tangent mode.
1062306a36Sopenharmony_ciEach mode corresponds with the type of card. It has been found
1162306a36Sopenharmony_cithat there are 2 main types of cards and all other cards are
1262306a36Sopenharmony_cithe same and just have different names or only have minor differences
1362306a36Sopenharmony_cisuch as more IO ports. As this driver is tested it will
1462306a36Sopenharmony_cibecome more clear exactly what cards are supported.
1562306a36Sopenharmony_ci
1662306a36Sopenharmony_ciRight now these cards are known to work with the COPS driver. The
1762306a36Sopenharmony_ciLT-200 cards work in a somewhat more limited capacity than the
1862306a36Sopenharmony_ciDL200 cards, which work very well and are in use by many people.
1962306a36Sopenharmony_ci
2062306a36Sopenharmony_ciTANGENT driver mode:
2162306a36Sopenharmony_ci	- Tangent ATB-II, Novell NL-1000, Daystar Digital LT-200
2262306a36Sopenharmony_ci
2362306a36Sopenharmony_ciDAYNA driver mode:
2462306a36Sopenharmony_ci	- Dayna DL2000/DaynaTalk PC (Half Length), COPS LT-95,
2562306a36Sopenharmony_ci	- Farallon PhoneNET PC III, Farallon PhoneNET PC II
2662306a36Sopenharmony_ci
2762306a36Sopenharmony_ciOther cards possibly supported mode unknown though:
2862306a36Sopenharmony_ci	- Dayna DL2000 (Full length)
2962306a36Sopenharmony_ci
3062306a36Sopenharmony_ciThe COPS driver defaults to using Dayna mode. To change the driver's
3162306a36Sopenharmony_cimode if you built a driver with dual support use board_type=1 or
3262306a36Sopenharmony_ciboard_type=2 for Dayna or Tangent with insmod.
3362306a36Sopenharmony_ci
3462306a36Sopenharmony_ciOperation/loading of the driver
3562306a36Sopenharmony_ci===============================
3662306a36Sopenharmony_ci
3762306a36Sopenharmony_ciUse modprobe like this:	/sbin/modprobe cops.o (IO #) (IRQ #)
3862306a36Sopenharmony_ciIf you do not specify any options the driver will try and use the IO = 0x240,
3962306a36Sopenharmony_ciIRQ = 5. As of right now I would only use IRQ 5 for the card, if autoprobing.
4062306a36Sopenharmony_ci
4162306a36Sopenharmony_ciTo load multiple COPS driver Localtalk cards you can do one of the following::
4262306a36Sopenharmony_ci
4362306a36Sopenharmony_ci	insmod cops io=0x240 irq=5
4462306a36Sopenharmony_ci	insmod -o cops2 cops io=0x260 irq=3
4562306a36Sopenharmony_ci
4662306a36Sopenharmony_ciOr in lilo.conf put something like this::
4762306a36Sopenharmony_ci
4862306a36Sopenharmony_ci	append="ether=5,0x240,lt0 ether=3,0x260,lt1"
4962306a36Sopenharmony_ci
5062306a36Sopenharmony_ciThen bring up the interface with ifconfig. It will look something like this::
5162306a36Sopenharmony_ci
5262306a36Sopenharmony_ci  lt0       Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-F7-00-00-00-00-00-00-00-00
5362306a36Sopenharmony_ci	    inet addr:192.168.1.2  Bcast:192.168.1.255  Mask:255.255.255.0
5462306a36Sopenharmony_ci	    UP BROADCAST RUNNING NOARP MULTICAST  MTU:600  Metric:1
5562306a36Sopenharmony_ci	    RX packets:0 errors:0 dropped:0 overruns:0 frame:0
5662306a36Sopenharmony_ci	    TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 coll:0
5762306a36Sopenharmony_ci
5862306a36Sopenharmony_ciNetatalk Configuration
5962306a36Sopenharmony_ci======================
6062306a36Sopenharmony_ci
6162306a36Sopenharmony_ciYou will need to configure atalkd with something like the following to make
6262306a36Sopenharmony_ciit work with the cops.c driver.
6362306a36Sopenharmony_ci
6462306a36Sopenharmony_ci* For single LTalk card use::
6562306a36Sopenharmony_ci
6662306a36Sopenharmony_ci    dummy -seed -phase 2 -net 2000 -addr 2000.10 -zone "1033"
6762306a36Sopenharmony_ci    lt0 -seed -phase 1 -net 1000 -addr 1000.50 -zone "1033"
6862306a36Sopenharmony_ci
6962306a36Sopenharmony_ci* For multiple cards, Ethernet and LocalTalk::
7062306a36Sopenharmony_ci
7162306a36Sopenharmony_ci    eth0 -seed -phase 2 -net 3000 -addr 3000.20 -zone "1033"
7262306a36Sopenharmony_ci    lt0 -seed -phase 1 -net 1000 -addr 1000.50 -zone "1033"
7362306a36Sopenharmony_ci
7462306a36Sopenharmony_ci* For multiple LocalTalk cards, and an Ethernet card.
7562306a36Sopenharmony_ci
7662306a36Sopenharmony_ci* Order seems to matter here, Ethernet last::
7762306a36Sopenharmony_ci
7862306a36Sopenharmony_ci    lt0 -seed -phase 1 -net 1000 -addr 1000.10 -zone "LocalTalk1"
7962306a36Sopenharmony_ci    lt1 -seed -phase 1 -net 2000 -addr 2000.20 -zone "LocalTalk2"
8062306a36Sopenharmony_ci    eth0 -seed -phase 2 -net 3000 -addr 3000.30 -zone "EtherTalk"
81