One callout_stop() is enough.
[dragonfly.git] / share / man / man4 / isp.4
1 .\"     $FreeBSD: src/share/man/man4/isp.4,v 1.3.4.9 2001/12/17 11:30:12 ru Exp $
2 .\"     $DragonFly: src/share/man/man4/isp.4,v 1.5 2007/05/17 08:19:01 swildner Exp $
3 .\"     $NetBSD: isp.4,v 1.5 1999/12/18 18:33:05 mjacob Exp $
4 .\"
5 .\" Copyright (c) 1998, 1999
6 .\"     Matthew Jacob, for NASA/Ames Research Center
7 .\"
8 .\" Redistribution and use in source and binary forms, with or without
9 .\" modification, are permitted provided that the following conditions
10 .\" are met:
11 .\" 1. Redistributions of source code must retain the above copyright
12 .\"    notice, this list of conditions and the following disclaimer.
13 .\" 2. Redistributions in binary form must reproduce the above copyright
14 .\"    notice, this list of conditions and the following disclaimer in the
15 .\"    documentation and/or other materials provided with the distribution.
16 .\" 3. The name of the author may not be used to endorse or promote products
17 .\"    derived from this software without specific prior written permission.
18 .\"
19 .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
20 .\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
21 .\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
22 .\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
23 .\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
24 .\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
25 .\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
26 .\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
27 .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
28 .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29 .\"
30 .\"
31 .Dd February 14, 2000
32 .Dt ISP 4
33 .Os
34 .Sh NAME
35 .Nm isp
36 .Nd Qlogic based SCSI and FibreChannel SCSI Host Adapters
37 .Sh SYNOPSIS
38 .Cd "device isp"
39 .Pp
40 For one or more SCSI busses:
41 .Cd device scbus0
42 .Sh DESCRIPTION
43 This driver provides access to
44 .Tn SCSI
45 or
46 .Tn FibreChannel
47 devices.
48 .Pp
49 SCSI features include support for Ultra SCSI and wide mode transactions
50 for
51 .Tn SCSI ,
52 Ultra2 LVD (for the ISP1080 and ISP1280), and Ultra3 LVD (for the
53 ISP12160).
54 .Pp
55 Fibre Channel support uses FCP SCSI profile for
56 .Tn FibreChannel .
57 and utilizes Class 3 and Class 2 connections (Qlogic 2100 is Class
58 3 only, minor patches to the Qlogic 2200 to force Class 2 mode).
59 Support is available for Public and Private loops, and for
60 point-to-point connections (Qlogic 2200 only).
61 The newer 2-Gigabit cards (2300, 2312) are also supported.
62 Command tagging is
63 supported for all (in fact,
64 .Tn FibreChannel
65 requires tagging).
66 Fabric support is enabled by default (but may
67 be contingent upon the correct firmware being loaded).
68 .Sh FIRMWARE
69 Firmware is now available if the
70 .Xr ispfw 4
71 module is loaded during bootstrap (q.v.).
72 .Pp
73 It is very strongly recommended that you use the firmware available
74 from
75 .Xr ispfw 4
76 as it is the most likely to have been tested with this driver.
77 .Sh HARDWARE
78 Supported cards include:
79 .Pp
80 .Bl -tag -width xxxxxx -offset indent
81 .It ISP1000
82 SBus Fast Wide, Ultra Fast Wide cards, Single Ended or Differential
83 cards.
84 .It PTI SBS440
85 Performance Technology ISP1000 variants.
86 .It ISP1020
87 Qlogic 1020 Fast Wide and Differential Fast Wide PCI cards.
88 .It ISP1040
89 Qlogic 1040 Ultra Wide and Differential Ultra Wide PCI cards.
90 .It PTI SBS450
91 Performance Technology ISP1040 variants.
92 .It Qlogic 1240
93 Qlogic 1240 Dual Bus Ultra Wide and Differential Ultra Wide PCI
94 cards.
95 .It Qlogic 1080
96 Qlogic 1280 LVD Ultra2 Wide PCI cards.
97 .It Qlogic 1280
98 Qlogic 1280 Dual Bus LVD Ultra2 Wide PCI cards.
99 .It Qlogic 12160
100 Qlogic 12160 Dual Bus LVD Ultra3 Wide PCI cards.
101 .It Qlogic 2100
102 Qlogic 2100 and 2100A Copper and Optical Fibre Channel Arbitrated
103 Loop
104 .It Qlogic 2102
105 Qlogic Dual Loop 2100A Optical Fibre Channel Arbitrated Loop PCI
106 cards.
107 .It Qlogic 2200
108 Qlogic 2200 Copper and Optical Fibre Channel Arbitrated Loop PCI
109 cards.
110 .It Qlogic 2202
111 Qlogic 2200 Dual Bus Optical Fibre Channel Arbitrated Loop PCI
112 cards.
113 .It Qlogic 2300
114 Qlogic 2300 Optical Fibre Channel PCI cards.
115 .It Qlogic 2312
116 Qlogic 2312 Optical Fibre Channel PCI cards.
117 .It PTI SBS470
118 Performance Technology ISP2100 variants.
119 .It Antares P-0033
120 Antares Microsystems ISP2100 variants.
121 .El
122 .Sh CONFIGURATION OPTIONS
123 Target mode support may be enabled with the
124 .Pp
125 .Cd options ISP_TARGET_MODE
126 .Pp
127 option.
128 .Sh BOOT OPTIONS
129 The following options are switchable by setting values in the loader
130 configuration file (see the
131 .Xr loader 8
132 manual page).
133 They are:
134 .Pp
135 .Bl -tag -width "isp_no_fwload" -compact
136 .It isp_disable
137 A bit mask of units to skip configuration for.
138 .It isp_mem_map
139 A bit mask of units to use PCI Memory space instead of I/O space
140 access for.
141 .It isp_io_map
142 A bit mask of units to use PCI I/O space instead of Memory space
143 access for.
144 .It isp_no_nvram
145 A bit mask of units that you wish to ignore board NVRAM settings
146 for.
147 .It isp_nvram
148 A bit mask of units that you wish to specifically use board NVRAM
149 settings for.
150 .It isp_fcduplex
151 A bit mask of units that you wish to specifically to set into full
152 duplex mode.
153 .It isp_no_fcduplex
154 A bit mask of units that you wish to specifically to not set into
155 full duplex mode.
156 .It isp_wwn
157 This should be the full 64 bit World Wide Node Name you would like
158 to use, overriding the value in NVRAM for the card.
159 .It isp_debug
160 This is a driver debug level- meaningful from 0 through 7.
161 .It isp_tdebug
162 This is a driver target mode debug level- meaningful from 0 through
163 5.
164 .El
165 .Sh SEE ALSO
166 .Xr da 4 ,
167 .Xr intro 4 ,
168 .Xr ispfw 4 ,
169 .Xr sa 4 ,
170 .Xr scsi 4
171 .Sh AUTHORS
172 The
173 .Nm
174 driver was written by Matthew Jacob for NASA/Ames Research Center.
175 .Sh BUGS
176 The driver currently ignores some NVRAM settings.
177 .Pp
178 The driver currently doesn't do error recovery for timed out commands
179 very gracefully.
180 .Pp
181 Target mode support isn't completely debugged yet.
182 It works reasonably
183 well for Fibre Channel, somewhat well for Qlogic 1040 cards, but
184 doesn't yet work for the other cards (due to last minute unannounced
185 changes in firmware interfaces).
186 .Pp
187 Sometimes, when booting, the driver gets stuck waiting for the
188 Fibre Channel f/w to tell it that the loop port database is ready,
189 or waiting for a good loop to be seen (this does not yet support
190 booting without being connected to a fibre channel device).
191 To
192 unwedge the system, unplug and replug the fibre channel connection,
193 or otherwise cause a LIP (Loop Initialization Primitive sequence)-
194 this will kick the f/w into getting unstuck.