xref: /freebsd/share/man/man4/isp.4 (revision 2b4ccfbbc65b2f140fab6db998e9654c5c2bb972)
11b760be4SAlexander Motin.\" Copyright (c) 2009-2020 Alexander Motin <mav@FreeBSD.org>
2a4ccb5d6SAlexander Motin.\" Copyright (c) 2006 Marcus Alves Grando
3a4ccb5d6SAlexander Motin.\" Copyright (c) 1998-2001 Matthew Jacob, for NASA/Ames Research Center
4a90b37e0SMatt Jacob.\"
5a90b37e0SMatt Jacob.\" Redistribution and use in source and binary forms, with or without
6a90b37e0SMatt Jacob.\" modification, are permitted provided that the following conditions
7a90b37e0SMatt Jacob.\" are met:
8a90b37e0SMatt Jacob.\" 1. Redistributions of source code must retain the above copyright
9a90b37e0SMatt Jacob.\"    notice, this list of conditions and the following disclaimer.
10a90b37e0SMatt Jacob.\" 2. Redistributions in binary form must reproduce the above copyright
11a90b37e0SMatt Jacob.\"    notice, this list of conditions and the following disclaimer in the
12a90b37e0SMatt Jacob.\"    documentation and/or other materials provided with the distribution.
13a90b37e0SMatt Jacob.\" 3. The name of the author may not be used to endorse or promote products
143f7da69fSMike Pritchard.\"    derived from this software without specific prior written permission.
15a90b37e0SMatt Jacob.\"
16a90b37e0SMatt Jacob.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
17a90b37e0SMatt Jacob.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
18a90b37e0SMatt Jacob.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
19a90b37e0SMatt Jacob.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
20a90b37e0SMatt Jacob.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
21a90b37e0SMatt Jacob.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
22a90b37e0SMatt Jacob.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
23a90b37e0SMatt Jacob.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
24a90b37e0SMatt Jacob.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
25a90b37e0SMatt Jacob.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26a90b37e0SMatt Jacob.\"
276b806d21SRuslan Ermilov.\" $FreeBSD$
28a90b37e0SMatt Jacob.\"
29*2b4ccfbbSJoerg Pulz.Dd April 25, 2023
30a90b37e0SMatt Jacob.Dt ISP 4
31a90b37e0SMatt Jacob.Os
32a90b37e0SMatt Jacob.Sh NAME
33a90b37e0SMatt Jacob.Nm isp
341b760be4SAlexander Motin.Nd Qlogic FibreChannel SCSI Host Adapters driver
35a90b37e0SMatt Jacob.Sh SYNOPSIS
362d431ba6SChristian BruefferTo compile this driver into the kernel,
372d431ba6SChristian Bruefferplace the following lines in your
382d431ba6SChristian Bruefferkernel configuration file:
392d431ba6SChristian Brueffer.Bd -ragged -offset indent
402d431ba6SChristian Brueffer.Cd "device scbus"
41a90b37e0SMatt Jacob.Cd "device isp"
4208167db8SKenneth D. Merry.Cd "device ispfw"
432d431ba6SChristian Brueffer.Ed
44a90b37e0SMatt Jacob.Pp
452d431ba6SChristian BruefferAlternatively, to load the driver as a
4608167db8SKenneth D. Merrymodule at boot time, place the following lines in
472d431ba6SChristian Brueffer.Xr loader.conf 5 :
482d431ba6SChristian Brueffer.Bd -literal -offset indent
492d431ba6SChristian Bruefferisp_load="YES"
5008167db8SKenneth D. Merryispfw_load="YES"
512d431ba6SChristian Brueffer.Ed
52a90b37e0SMatt Jacob.Sh DESCRIPTION
53a90b37e0SMatt JacobThis driver provides access to
54a90b37e0SMatt Jacob.Tn FibreChannel
55a4ccb5d6SAlexander MotinSCSI devices.
56a90b37e0SMatt Jacob.Pp
571b760be4SAlexander MotinIt supports initiator and target modes of FCP SCSI profile,
581b760be4SAlexander Motinutilizing Class 3 and Class 2 connections.
593e6deb33SAlexander MotinSupport is available for Public and Private loops, Point-to-Point
603e6deb33SAlexander Motinand Fabric connections.
6108167db8SKenneth D. Merry.Pp
621b760be4SAlexander MotinSupported FC-Tape functionality is highly recommended for connections
631b760be4SAlexander Motinto tape drives that support it.
6495f289d5SEitan AdlerIt encompasses four elements from the T-10 FCP-4 specification:
6508167db8SKenneth D. Merry.Bl -bullet -offset indent
6608167db8SKenneth D. Merry.It
6708167db8SKenneth D. MerryPrecise Delivery of Commands
6808167db8SKenneth D. Merry.It
6908167db8SKenneth D. MerryConfirmed Completion of FCP I/O Operations
7008167db8SKenneth D. Merry.It
7108167db8SKenneth D. MerryRetransmission of Unsuccessfully Transmitted IUs
7208167db8SKenneth D. Merry.It
7308167db8SKenneth D. MerryTask Retry Identification
7408167db8SKenneth D. Merry.El
7508167db8SKenneth D. Merry.Pp
7608167db8SKenneth D. MerryTogether these features allow for link level error recovery with tape
7708167db8SKenneth D. Merrydevices.
7808167db8SKenneth D. MerryWithout it, an initiator cannot, for instance, tell whether a tape write
7908167db8SKenneth D. Merrycommand that has timed out resulted in all, part or none of the data going to
8008167db8SKenneth D. Merrythe tape drive.
8108167db8SKenneth D. MerryFC-Tape is automatically enabled when connecting controller that supports
8208167db8SKenneth D. Merryit to a target that supports it.
8308167db8SKenneth D. MerryIt may be disabled using configuration and hint options described below.
845f4796c0SMatt Jacob.Sh FIRMWARE
853e6deb33SAlexander MotinFirmware loading is supported if the
865f4796c0SMatt Jacob.Xr ispfw 4
873e6deb33SAlexander Motinmodule is loaded.
883e6deb33SAlexander MotinIt is strongly recommended that you use the firmware available from
89b128a303SMatt Jacob.Xr ispfw 4
90b128a303SMatt Jacobas it is the most likely to have been tested with this driver.
91a90b37e0SMatt Jacob.Sh HARDWARE
92f0d219daSSimon L. B. NielsenCards supported by the
93f0d219daSSimon L. B. Nielsen.Nm
94f0d219daSSimon L. B. Nielsendriver include:
95a90b37e0SMatt Jacob.Bl -tag -width xxxxxx -offset indent
964c38f2f8SMatt Jacob.It Qlogic 2422
971b760be4SAlexander MotinOptical 4Gb Fibre Channel PCI-X cards.
989872c961SAlexander Motin.It Qlogic 246x (aka 2432)
993e6deb33SAlexander MotinOptical 4Gb Fibre Channel PCIe cards.
1009872c961SAlexander Motin.It Qlogic 256x (aka 2532)
1013e6deb33SAlexander MotinOptical 8Gb Fibre Channel PCIe cards.
1029872c961SAlexander Motin.It Qlogic 267x/836x (aka 2031/8031)
1039872c961SAlexander MotinOptical 16Gb FC/FCoE PCIe cards.
10414e084adSAlexander Motin.It Qlogic 2690/2692/2694 (aka 2684/2692)
10514e084adSAlexander MotinOptical 16Gb Fibre Channel PCIe cards.
10614e084adSAlexander Motin.It Qlogic 2740/2742/2764 (aka 2722/2714)
10714e084adSAlexander MotinOptical 32Gb Fibre Channel PCIe cards.
108*2b4ccfbbSJoerg Pulz.It Qlogic QLE2770/QLE2772 (aka 2812)
109*2b4ccfbbSJoerg PulzOptical 32Gb Fibre Channel PCIe cards.
110*2b4ccfbbSJoerg Pulz.It Qlogic QLE2774 (aka 2814)
111*2b4ccfbbSJoerg PulzOptical 32Gb Fibre Channel PCIe cards.
112*2b4ccfbbSJoerg Pulz.It Qlogic QLE2870/QLE2872 (aka 2812)
113*2b4ccfbbSJoerg PulzOptical 64Gb Fibre Channel PCIe cards.
114*2b4ccfbbSJoerg Pulz.It Qlogic QLE2874 (aka 2814)
115*2b4ccfbbSJoerg PulzOptical 64Gb Fibre Channel PCIe cards.
116a90b37e0SMatt Jacob.El
117a90b37e0SMatt Jacob.Sh CONFIGURATION OPTIONS
118a4ccb5d6SAlexander MotinTarget mode support for Fibre Channel adapters may be enabled with the
119726b61abSRuslan Ermilov.Pp
120a90b37e0SMatt Jacob.Cd options ISP_TARGET_MODE
121726b61abSRuslan Ermilov.Pp
122a90b37e0SMatt Jacoboption.
12308167db8SKenneth D. Merry.Pp
12408167db8SKenneth D. MerryTo disable FC-Tape, use the following configuration option:
12508167db8SKenneth D. Merry.Pp
12608167db8SKenneth D. Merry.Cd options ISP_FCTAPE_OFF
12708167db8SKenneth D. Merry.Pp
12808167db8SKenneth D. MerryNote that even if the ISP_FCTAPE_OFF option is used, it may be overridden
12908167db8SKenneth D. Merryby the fctape hint described below.
130a90b37e0SMatt Jacob.Sh BOOT OPTIONS
131ae15c312SMatt JacobThe following options are switchable by setting values in
132ae15c312SMatt Jacob.Pa /boot/device.hints .
133ae15c312SMatt Jacob.Pp
13492c355d7SRuslan ErmilovThey are:
135ae15c312SMatt Jacob.Bl -tag -width indent
13617ec7746SAlexander Motin.It Va hint.isp. Ns Ar N Ns Va .msi
13717ec7746SAlexander MotinLimit on number of Message Signaled Interrupts (MSI) to be used.
13817ec7746SAlexander Motin.It Va hint.isp. Ns Ar N Ns Va .msix
13917ec7746SAlexander MotinLimit on number of Extended Message Signaled Interrupts (MSI-X) to be used.
14017ec7746SAlexander Motin.It Va hint.isp. Ns Ar N Ns Va .fwload_disable
141ae15c312SMatt JacobA hint value to disable loading of firmware
14281ae4b8dSRuslan Ermilov.Xr ispfw 4 .
14317ec7746SAlexander Motin.It Va hint.isp. Ns Ar N Ns Va .ignore_nvram
14481ae4b8dSRuslan ErmilovA hint value to ignore board NVRAM settings for.
14581ae4b8dSRuslan ErmilovOtherwise use NVRAM settings.
14617ec7746SAlexander Motin.It Va hint.isp. Ns Ar N Ns Va .fullduplex
147ae15c312SMatt JacobA hint value to set full duplex mode.
14817ec7746SAlexander Motin.It Va hint.isp. Ns Ar N Ns Va .topology
14981ae4b8dSRuslan ErmilovA hint value to select topology of connection.
15081ae4b8dSRuslan ErmilovSupported values are:
151ae15c312SMatt Jacob.Pp
15281ae4b8dSRuslan Ermilov.Bl -tag -width ".Li lport-only" -compact
15381ae4b8dSRuslan Ermilov.It Li lport
15481ae4b8dSRuslan ErmilovPrefer loopback and fallback to point to point.
15581ae4b8dSRuslan Ermilov.It Li nport
15681ae4b8dSRuslan ErmilovPrefer point to point and fallback to loopback.
15781ae4b8dSRuslan Ermilov.It Li lport-only
15881ae4b8dSRuslan ErmilovLoopback only.
15981ae4b8dSRuslan Ermilov.It Li nport-only
16081ae4b8dSRuslan ErmilovPoint to point only.
16181ae4b8dSRuslan Ermilov.El
16217ec7746SAlexander Motin.It Va hint.isp. Ns Ar N Ns Va .portwwn
163ae15c312SMatt JacobThis should be the full 64 bit World Wide Port Name you would like
164ae15c312SMatt Jacobto use, overriding the value in NVRAM for the card.
16517ec7746SAlexander Motin.It Va hint.isp. Ns Ar N Ns Va .nodewwn
1665f4796c0SMatt JacobThis should be the full 64 bit World Wide Node Name you would like
1675f4796c0SMatt Jacobto use, overriding the value in NVRAM for the card.
16817ec7746SAlexander Motin.It Va hint.isp. Ns Ar N Ns Va .iid
169dbb3ac38SChristian BruefferA hint to override or set the Initiator ID or Loop ID.
170dbb3ac38SChristian BruefferFor Fibre Channel
1714c38f2f8SMatt Jacobcards in Local Loop topologies it is
1724c38f2f8SMatt Jacob.Ar strongly
1734c38f2f8SMatt Jacobrecommended that you set this value to non-zero.
17417ec7746SAlexander Motin.It Va hint.isp. Ns Ar N Ns Va .role
1753e6deb33SAlexander MotinA hint to define default role for isp instance (0 -- none, 1 -- target,
1763e6deb33SAlexander Motin2 -- initiator, 3 -- both).
17717ec7746SAlexander Motin.It Va hint.isp. Ns Ar N Ns Va .debug
1784c38f2f8SMatt JacobA hint value for a driver debug level (see the file
1794c38f2f8SMatt Jacob.Pa /usr/src/sys/dev/isp/ispvar.h
1804c38f2f8SMatt Jacobfor the values.
18117ec7746SAlexander Motin.It Va hint.isp. Ns Ar N Ns Va .vports
182238e75e5SAlexander MotinA hint to create specified number of additional virtual ports.
18317ec7746SAlexander Motin.It Va hint.isp. Ns Ar N Ns Va .nofctape
18408167db8SKenneth D. MerrySet this to 1 to disable FC-Tape operation on the given isp instance.
18517ec7746SAlexander Motin.It Va hint.isp. Ns Ar N Ns Va .fctape
18608167db8SKenneth D. MerrySet this to 1 to enable FC-Tape operation on the given isp instance for
18708167db8SKenneth D. Merrytargets that support it.
1884c38f2f8SMatt Jacob.El
1894c38f2f8SMatt Jacob.Sh SYSCTL OPTIONS
1904c38f2f8SMatt Jacob.Bl -tag -width indent
19117ec7746SAlexander Motin.It Va dev.isp. Ns Ar N Ns Va .loop_down_limit
1924c38f2f8SMatt JacobThis value says how long to wait in seconds after loop has gone down before
193dbb3ac38SChristian Brueffergiving up and expiring all of the devices that were visible.
194dbb3ac38SChristian BruefferThe default is 300 seconds (5 minutes).
19532ba16b6SUlrich SpörleinA separate (nonadjustable) timeout is used when
1964c38f2f8SMatt Jacobbooting to not stop booting on lack of FC connectivity.
19717ec7746SAlexander Motin.It Va dev.isp. Ns Ar N Ns Va .gone_device_time
1984c38f2f8SMatt JacobThis value says how long to wait for devices to reappear if they (temporarily)
199dbb3ac38SChristian Bruefferdisappear due to loop or fabric events.
200dbb3ac38SChristian BruefferWhile this timeout is running, I/O
2014c38f2f8SMatt Jacobto those devices will simply be held.
20217ec7746SAlexander Motin.It Va dev.isp. Ns Ar N Ns Va .use_gff_id
20317ec7746SAlexander Motin.It Va dev.isp. Ns Ar N Ns Va .use_gft_id
204a94fab67SAlexander MotinSetting those options to 0 allows to disable use of GFF_ID and GFT_ID SNS
205a94fab67SAlexander Motinrequests during FC fabric scan.
206a94fab67SAlexander MotinIt may be useful if switch does not implement them correctly,
207a94fab67SAlexander Motinpreventing some devices from being found.
208a94fab67SAlexander MotinDisabling them may cause unneeded logins to ports not supporting target role
209a94fab67SAlexander Motinor even FCP at all.
210a94fab67SAlexander MotinThe default is 1 (enabled).
21117ec7746SAlexander Motin.It Va dev.isp. Ns Ar N Ns Va .wwnn
2124c38f2f8SMatt JacobThis is the readonly World Wide Node Name value for this port.
21317ec7746SAlexander Motin.It Va dev.isp. Ns Ar N Ns Va .wwpn
2144c38f2f8SMatt JacobThis is the readonly World Wide Port Name value for this port.
215a90b37e0SMatt Jacob.El
2169cbda590SRuslan Ermilov.Sh SEE ALSO
2179cbda590SRuslan Ermilov.Xr da 4 ,
2189cbda590SRuslan Ermilov.Xr intro 4 ,
2199cbda590SRuslan Ermilov.Xr ispfw 4 ,
2209cbda590SRuslan Ermilov.Xr sa 4 ,
22103befb10SEdward Tomasz Napierala.Xr scsi 4 ,
22203befb10SEdward Tomasz Napierala.Xr gmultipath 8
2239cbda590SRuslan Ermilov.Sh AUTHORS
2249cbda590SRuslan ErmilovThe
2259cbda590SRuslan Ermilov.Nm
2260b3504fdSChristian Bruefferdriver was written by
2270b3504fdSChristian Brueffer.An Matthew Jacob
2280fd0e797SAlexander Motinoriginally for NetBSD at NASA/Ames Research Center.
229a94fab67SAlexander MotinLater improvement was done by
230043fd51aSAlexander Motin.An Alexander Motin Aq Mt mav@FreeBSD.org .
231a90b37e0SMatt Jacob.Sh BUGS
232a90b37e0SMatt JacobThe driver currently ignores some NVRAM settings.
233