1.. SPDX-License-Identifier: GPL-2.0
2.. include:: <isonum.txt>
3
4================
5g_NCR5380 driver
6================
7
8Copyright |copy| 1993 Drew Eckhard
9
10NCR53c400 extensions Copyright |copy| 1994,1995,1996 Kevin Lentin
11
12This file documents the NCR53c400 extensions by Kevin Lentin and some
13enhancements to the NCR5380 core.
14
15This driver supports NCR5380 and NCR53c400 and compatible cards in port or
16memory mapped modes.
17
18Use of an interrupt is recommended, if supported by the board, as this will
19allow targets to disconnect and thereby improve SCSI bus utilization.
20
21If the irq parameter is 254 or is omitted entirely, the driver will probe
22for the correct IRQ line automatically. If the irq parameter is 0 or 255
23then no IRQ will be used.
24
25The NCR53c400 does not support DMA but it does have Pseudo-DMA which is
26supported by the driver.
27
28This driver provides some information on what it has detected in
29/proc/scsi/g_NCR5380/x where x is the scsi card number as detected at boot
30time. More info to come in the future.
31
32This driver works as a module.
33When included as a module, parameters can be passed on the insmod/modprobe
34command line:
35
36  ============= ===============================================================
37  irq=xx[,...]	the interrupt(s)
38  base=xx[,...]	the port or base address(es) (for port or memory mapped, resp.)
39  card=xx[,...]	card type(s):
40
41		==  ======================================
42		0   NCR5380,
43		1   NCR53C400,
44		2   NCR53C400A,
45		3   Domex Technology Corp 3181E (DTC3181E)
46		4   Hewlett Packard C2502
47		==  ======================================
48  ============= ===============================================================
49
50These old-style parameters can support only one card:
51
52  ============= =================================================
53  ncr_irq=xx    the interrupt
54  ncr_addr=xx   the port or base address (for port or memory
55                mapped, resp.)
56  ncr_5380=1    to set up for a NCR5380 board
57  ncr_53c400=1  to set up for a NCR53C400 board
58  ncr_53c400a=1 to set up for a NCR53C400A board
59  dtc_3181e=1   to set up for a Domex Technology Corp 3181E board
60  hp_c2502=1    to set up for a Hewlett Packard C2502 board
61  ============= =================================================
62
63E.g. Trantor T130B in its default configuration::
64
65	modprobe g_NCR5380 irq=5 base=0x350 card=1
66
67or alternatively, using the old syntax::
68
69	modprobe g_NCR5380 ncr_irq=5 ncr_addr=0x350 ncr_53c400=1
70
71E.g. a port mapped NCR5380 board, driver to probe for IRQ::
72
73	modprobe g_NCR5380 base=0x350 card=0
74
75or alternatively::
76
77	modprobe g_NCR5380 ncr_addr=0x350 ncr_5380=1
78
79E.g. a memory mapped NCR53C400 board with no IRQ::
80
81	modprobe g_NCR5380 irq=255 base=0xc8000 card=1
82
83or alternatively::
84
85	modprobe g_NCR5380 ncr_irq=255 ncr_addr=0xc8000 ncr_53c400=1
86
87E.g. two cards, DTC3181 (in non-PnP mode) at 0x240 with no IRQ
88and HP C2502 at 0x300 with IRQ 7::
89
90	modprobe g_NCR5380 irq=0,7 base=0x240,0x300 card=3,4
91
92Kevin Lentin
93K.Lentin@cs.monash.edu.au
94