xref: /freebsd/share/man/man4/isp.4 (revision a90b37e0a41ada44d1e253a9da3836069bea583a)
1a90b37e0SMatt Jacob.\"	$FreeBSD$
2a90b37e0SMatt Jacob.\"	$NetBSD: isp.4,v 1.5 1999/12/18 18:33:05 mjacob Exp $
3a90b37e0SMatt Jacob.\"
4a90b37e0SMatt Jacob.\" Copyright (c) 1998, 1999
5a90b37e0SMatt Jacob.\" 	Matthew Jacob, for NASA/Ames Research Center
6a90b37e0SMatt Jacob.\"
7a90b37e0SMatt Jacob.\" Redistribution and use in source and binary forms, with or without
8a90b37e0SMatt Jacob.\" modification, are permitted provided that the following conditions
9a90b37e0SMatt Jacob.\" are met:
10a90b37e0SMatt Jacob.\" 1. Redistributions of source code must retain the above copyright
11a90b37e0SMatt Jacob.\"    notice, this list of conditions and the following disclaimer.
12a90b37e0SMatt Jacob.\" 2. Redistributions in binary form must reproduce the above copyright
13a90b37e0SMatt Jacob.\"    notice, this list of conditions and the following disclaimer in the
14a90b37e0SMatt Jacob.\"    documentation and/or other materials provided with the distribution.
15a90b37e0SMatt Jacob.\" 3. The name of the author may not be used to endorse or promote products
16a90b37e0SMatt Jacob.\"    derived from this software withough specific prior written permission.
17a90b37e0SMatt Jacob.\"
18a90b37e0SMatt Jacob.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
19a90b37e0SMatt Jacob.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
20a90b37e0SMatt Jacob.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
21a90b37e0SMatt Jacob.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
22a90b37e0SMatt Jacob.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
23a90b37e0SMatt Jacob.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
24a90b37e0SMatt Jacob.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
25a90b37e0SMatt Jacob.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
26a90b37e0SMatt Jacob.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
27a90b37e0SMatt Jacob.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28a90b37e0SMatt Jacob.\"
29a90b37e0SMatt Jacob.\"
30a90b37e0SMatt Jacob.Dd Feburary 14, 2000
31a90b37e0SMatt Jacob.Dt ISP 4
32a90b37e0SMatt Jacob.Os
33a90b37e0SMatt Jacob.Sh NAME
34a90b37e0SMatt Jacob.Nm isp
35a90b37e0SMatt Jacob.Nd Qlogic based SCSI and FibreChannel SCSI Host Adapters
36a90b37e0SMatt Jacob.Sh SYNOPSIS
37a90b37e0SMatt Jacob.Cd "device isp"
38a90b37e0SMatt Jacob.Pp
39a90b37e0SMatt JacobFor one or more SCSI busses:
40a90b37e0SMatt Jacob.Cd device scbus0
41a90b37e0SMatt Jacob.Sh DESCRIPTION
42a90b37e0SMatt JacobThis driver provides access to
43a90b37e0SMatt Jacob.Tn SCSI
44a90b37e0SMatt Jacobor
45a90b37e0SMatt Jacob.Tn FibreChannel
46a90b37e0SMatt Jacobdevices.
47a90b37e0SMatt Jacob.Pp
48a90b37e0SMatt JacobSCSI features include support for Ultra SCSI and wide mode transactions for
49a90b37e0SMatt Jacob.Tn SCSI ,
50a90b37e0SMatt JacobUltra2 LVD (for the ISP1080 and ISP1280), and Ultra3 LVD (for the ISP12160).
51a90b37e0SMatt Jacob.Pp
52a90b37e0SMatt JacobFibre Channel support uses FCP SCSI profile for
53a90b37e0SMatt Jacob.Tn FibreChannel .
54a90b37e0SMatt Jacoband utilizes Class 3 and Class 2 connections (Qlogic 2100 is Class 3
55a90b37e0SMatt Jacobonly, minor patches to the Qlogic 2200 to force Class 2 mode).
56a90b37e0SMatt JacobSupport is available for Public
57a90b37e0SMatt Jacoband Private loops, and for point-to-point connections (Qlogic 2200
58a90b37e0SMatt Jacobonly).
59a90b37e0SMatt JacobCommand tagging is supported for all (in fact,
60a90b37e0SMatt Jacob.Tn FibreChannel
61a90b37e0SMatt Jacobrequires tagging).
62a90b37e0SMatt Jacob.Sh HARDWARE
63a90b37e0SMatt JacobSupported cards include:
64a90b37e0SMatt Jacob.Pp
65a90b37e0SMatt Jacob.Bl -tag -width xxxxxx -offset indent
66a90b37e0SMatt Jacob.It ISP1000
67a90b37e0SMatt JacobSBus Fast Wide, Ultra Fast Wide cards, Single Ended or Differential cards.
68a90b37e0SMatt Jacob.It PTI SBS440
69a90b37e0SMatt JacobPerfomance Technology ISP1000 variants.
70a90b37e0SMatt Jacob.It ISP1020
71a90b37e0SMatt JacobQlogic 1020 Fast Wide and Differential Fast Wide PCI cards.
72a90b37e0SMatt Jacob.It ISP1040
73a90b37e0SMatt JacobQlogic 1040 Ultra Wide and Differential Ultra Wide PCI cards.
74a90b37e0SMatt Jacob.It PTI SBS450
75a90b37e0SMatt JacobPerfomance Technology ISP1040 variants.
76a90b37e0SMatt Jacob.It Qlogic 1240
77a90b37e0SMatt JacobQlogic 1240 Dual Bus Ultra Wide and Differential Ultra Wide PCI cards.
78a90b37e0SMatt Jacob.It Qlogic 1080
79a90b37e0SMatt JacobQlogic 1280 LVD Ultra2 Wide PCI cards.
80a90b37e0SMatt Jacob.It Qlogic 1280
81a90b37e0SMatt JacobQlogic 1280 Dual Bus LVD Ultra2 Wide PCI cards.
82a90b37e0SMatt Jacob.It Qlogic 12160
83a90b37e0SMatt JacobQlogic 12160 Dual Bus LVD Ultra3 Wide PCI cards.
84a90b37e0SMatt Jacob.It Qlogic 2100
85a90b37e0SMatt JacobQlogic 2100 and 2100A Copper and Optical Fibre Channel Arbitrated Loop
86a90b37e0SMatt Jacob.It Qlogic 2102
87a90b37e0SMatt JacobQlogic Dual Loop 2100A Optical Fibre Channel Arbitrated Loop PCI cards.
88a90b37e0SMatt Jacob.It Qlogic 2200
89a90b37e0SMatt JacobQlogic 2200 Copper and Optical Fibre Channel Arbitrated Loop PCI cards.
90a90b37e0SMatt Jacob.It Qlogic 2202
91a90b37e0SMatt JacobQlogic 2200 Dual Bus Optical Fibre Channel Arbitrated Loop PCI cards.
92a90b37e0SMatt Jacob.It PTI SBS470
93a90b37e0SMatt JacobPerfomance Technology ISP2100 variants.
94a90b37e0SMatt Jacob.It Antares P-0033
95a90b37e0SMatt JacobAntares Microsystems ISP2100 variants.
96a90b37e0SMatt Jacob.El
97a90b37e0SMatt Jacob.Sh CONFIGURATION OPTIONS
98a90b37e0SMatt Jacob.Pp
99a90b37e0SMatt JacobGeneral configuration options for all adapters include:
100a90b37e0SMatt Jacob.sp
101a90b37e0SMatt Jacob.Cd options SCSI_ISP_NO_FWLOAD_MASK
102a90b37e0SMatt Jacob.Cd options SCSI_ISP_NO_NVRAM_MASK
103a90b37e0SMatt Jacob.Cd options SCSI_ISP_PREFER_MEM_MAP
104a90b37e0SMatt Jacob.sp
105a90b37e0SMatt Jacobfor which the option value is a bit mask of units for which you want this
106a90b37e0SMatt Jacoboption to apply. The options are, respectively, for not loading new firmware
107a90b37e0SMatt Jacobat startup, ignoring card NVRAM settings, and preferring memory mapped
108a90b37e0SMatt Jacobversus I/O port PCI access methods.
109a90b37e0SMatt Jacob.Pp
110a90b37e0SMatt JacobPoorly debugged and prototype target mode support may be enabled with the
111a90b37e0SMatt Jacob.sp
112a90b37e0SMatt Jacob.Cd options ISP_TARGET_MODE
113a90b37e0SMatt Jacob.sp
114a90b37e0SMatt Jacoboption.
115a90b37e0SMatt Jacob.Pp
116a90b37e0SMatt JacobConfiguration options that define whether downloadable firmware should be
117a90b37e0SMatt Jacobcompiled into the driver are:
118a90b37e0SMatt Jacob.sp
119a90b37e0SMatt Jacob.Cd options ISP_COMPILE_1020_FW
120a90b37e0SMatt Jacob.Cd options ISP_COMPILE_1080_FW
121a90b37e0SMatt Jacob.Cd options ISP_COMPILE_12160_FW
122a90b37e0SMatt Jacob.Cd options ISP_COMPILE_2100_FW
123a90b37e0SMatt Jacob.Cd options ISP_COMPILE_FW
124a90b37e0SMatt Jacob.sp
125a90b37e0SMatt JacobThe above options either select which board's f/w you wish to compile in,
126a90b37e0SMatt Jacobor for the last, to select all.
127a90b37e0SMatt Jacob.Pp
128a90b37e0SMatt JacobConfiguration options specific to Fibre Channel Cards are:
129a90b37e0SMatt Jacob.sp
130a90b37e0SMatt Jacob.Cd options SCSI_ISP_FCDUPLEX
131a90b37e0SMatt Jacob.Cd options SCSI_ISP_FABRIC
132a90b37e0SMatt Jacob.Cd options SCSI_ISP_SCCLUN
133a90b37e0SMatt Jacob.Cd options SCSI_ISP_WWN
134a90b37e0SMatt Jacob.sp
135a90b37e0SMatt JacobThe first option is a bit mask of units for which you want to enable full
136a90b37e0SMatt Jacobduplex mode. This typically would only make sense if fabric support is
137a90b37e0SMatt Jacobenabled and you are directly connected to a switch.
138a90b37e0SMatt JacobThe second defines whether Fibre Channel Fabric support should be enabled.
139a90b37e0SMatt JacobThe third defines whether whether the first level SCC lun support should
140a90b37e0SMatt Jacobbe enabled- this converts the normal 16 Logical Unit support to support for
141a90b37e0SMatt Jacob65536 Logical Units. The last option should be a string that defines an
142a90b37e0SMatt Jacoboverriding World Wide Node Name (WWNN) should you wish to override NVRAM
143a90b37e0SMatt Jacobsettings. It is recommended that you compile in firmware if you select
144a90b37e0SMatt Jacobany of these options.
145a90b37e0SMatt Jacob.Sh BOOT OPTIONS
146a90b37e0SMatt Jacob.Pp
147a90b37e0SMatt JacobMany of the above options are switchable by setting values in the loader
148a90b37e0SMatt Jacobconfiguration file (see the
149a90b37e0SMatt Jacob.Xr loader 8
150a90b37e0SMatt Jacobmanual page). They are:
151a90b37e0SMatt Jacob.sp
152a90b37e0SMatt Jacob.Bl -tag -width "isp_no_fwload" -compact
153a90b37e0SMatt Jacob.It isp_disable
154a90b37e0SMatt JacobA bit mask of units to skip configuration for.
155a90b37e0SMatt Jacob.It isp_mem_map
156a90b37e0SMatt JacobA bit mask of units to use PCI Memory space instead of I/O
157a90b37e0SMatt Jacobspace access for.
158a90b37e0SMatt Jacob.It isp_io_map
159a90b37e0SMatt JacobA bit mask of units to use PCI I/O space instead of Memory
160a90b37e0SMatt Jacobspace access for.
161a90b37e0SMatt Jacob.It isp_no_fwload
162a90b37e0SMatt JacobA bit mask of units that you wish to skip firmware download for.
163a90b37e0SMatt Jacob.It isp_fwload
164a90b37e0SMatt JacobA bit mask of units that you wish to *do* firmware download for.
165a90b37e0SMatt Jacob.It isp_no_nvram
166a90b37e0SMatt JacobA bit mask of units that you wish to ignore board NVRAM settings for.
167a90b37e0SMatt Jacob.It isp_nvram
168a90b37e0SMatt JacobA bit mask of units that you wish to specifically use board NVRAM settings for.
169a90b37e0SMatt Jacob.It isp_fcduplex
170a90b37e0SMatt JacobA bit mask of units that you wish to specifically to set into full
171a90b37e0SMatt Jacobduplex mode.
172a90b37e0SMatt Jacob.It isp_no_fcduplex
173a90b37e0SMatt JacobA bit mask of units that you wish to specifically to not set into full
174a90b37e0SMatt Jacobduplex mode.
175a90b37e0SMatt Jacob.It isp_wwn
176a90b37e0SMatt JacobThis should be the full 64 bit World Wide Node Name you would like to
177a90b37e0SMatt Jacobuse, overriding the value in NVRAM for the card.
178a90b37e0SMatt Jacob.It isp_debug
179a90b37e0SMatt JacobThis is a driver debug level- meaningful from 0 through 7.
180a90b37e0SMatt Jacob.It isp_tdebug
181a90b37e0SMatt JacobThis is a driver target mode debug level- meaningful from 0 through 5.
182a90b37e0SMatt Jacob.El
183a90b37e0SMatt Jacob.Sh BUGS
184a90b37e0SMatt JacobThe driver currently ignores some NVRAM settings.
185a90b37e0SMatt Jacob.Pp
186a90b37e0SMatt JacobThe driver currently doesn't do error recovery for timed out commands
187a90b37e0SMatt Jacobvery gracefully.
188a90b37e0SMatt Jacob.Pp
189a90b37e0SMatt JacobFabric support isn't very well debugged yet, and with some switches,
190a90b37e0SMatt Jacobfails to work as well as it should because the driver uses the GET ALL NEXT
191a90b37e0SMatt JacobSimple Name Server subcommand which some switches don't handle as well
192a90b37e0SMatt Jacobas they should.
193a90b37e0SMatt Jacob.Pp
194a90b37e0SMatt JacobSometimes, when booting, the driver gets stuck waiting for the Fibre Channel
195a90b37e0SMatt Jacobf/w to tell it that the loop port database is ready. In this case you'll
196a90b37e0SMatt Jacobsee an announcement that the loop state has a value of 0x1. To unwedge
197a90b37e0SMatt Jacobthe system, unplug and replug the fibre channel connection, or otherwise
198a90b37e0SMatt Jacobcause a LIP (Loop Initialization Primitive sequence)- this will kick the f/w
199a90b37e0SMatt Jacobinto getting unstuck.
200a90b37e0SMatt Jacob.Sh SEE ALSO
201a90b37e0SMatt Jacob.Xr intro 4 ,
202a90b37e0SMatt Jacob.Xr scsi 4 ,
203a90b37e0SMatt Jacob.Xr da 4 ,
204a90b37e0SMatt Jacob.Xr sa 4
205a90b37e0SMatt Jacob.Sh AUTHOR
206a90b37e0SMatt JacobThe
207a90b37e0SMatt Jacob.Nm
208a90b37e0SMatt Jacobdriver was written by Matthew Jacob for NASA/Ames Research Center.
209