xref: /freebsd/share/man/man4/ocs_fc.4 (revision 924226fba12cc9a228c73b956e1b7fa24c60b055)
1.\" Copyright (c) 2017 Broadcom. All rights reserved.
2.\" The term "Broadcom" refers to Broadcom Limited and/or its subsidiaries.
3.\"
4.\" Redistribution and use in source and binary forms, with or without
5.\" modification, are permitted provided that the following conditions are met:
6.\"
7.\" 1. Redistributions of source code must retain the above copyright notice,
8.\"    this list of conditions and the following disclaimer.
9.\"
10.\" 2. Redistributions in binary form must reproduce the above copyright notice,
11.\"    this list of conditions and the following disclaimer in the documentation
12.\"    and/or other materials provided with the distribution.
13.\"
14.\" 3. Neither the name of the copyright holder nor the names of its contributors
15.\"    may be used to endorse or promote products derived from this software
16.\"    without specific prior written permission.
17.\"
18.\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
19.\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
20.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
21.\" ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
22.\" LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
23.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
24.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
25.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
26.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
27.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
28.\" POSSIBILITY OF SUCH DAMAGE.
29.\"
30.\" $FreeBSD$
31.\"
32.Dd December 29, 2021
33.Dt OCS_FC 4
34.Os
35.Sh NAME
36.Nm ocs_fc
37.Nd "Device driver for Emulex Fibre Channel Host Adapters"
38.Sh SYNOPSIS
39To compile this driver into the kernel, add this line to the
40kernel configuration file:
41.Bd -ragged -offset indent
42.Cd "device ocs_fc"
43.Ed
44.Pp
45To load the driver as a module at boot, add this line to
46.Xr loader.conf 5 :
47.Bd -literal -offset indent
48ocs_fc_load="YES"
49.Ed
50.Sh DESCRIPTION
51The
52.Nm
53driver provides access to Fibre Channel SCSI devices.
54.Pp
55The
56.Nm
57driver supports initiator and target modes.
58Support is available for Arbitrated loops, Point-to-Point,
59and Fabric connections.
60FC-Tape is highly recommended for connections to tape drives that support
61it.
62FC-Tape includes four elements from the T-10 FCP-4 specification:
63.Bl -bullet -offset indent
64.It
65Precise Delivery of Commands
66.It
67Confirmed Completion of FCP I/O Operations
68.It
69Retransmission of Unsuccessfully Transmitted IUs
70.It
71Task Retry Identification
72.El
73.Pp
74Together these features allow for link level error recovery with tape
75devices.
76Without link level error recovery, an initiator cannot, for instance, tell whether a tape write
77command that has timed out resulted in all, part, or none of the data going to
78the tape drive.
79FC-Tape is automatically enabled when both the controller and target support it.
80.Sh HARDWARE
81The
82.Nm
83driver supports these Fibre Channel adapters:
84.Bl -tag -width xxxxxx -offset indent
85.It Emulex 16/8G FC GEN 5 HBAS
86.Bd -literal -offset indent
87LPe15004 FC Host Bus Adapters
88LPe160XX FC Host Bus Adapters
89.Ed
90.It Emulex 32/16G FC GEN 6 HBAS
91.Bd -literal -offset indent
92LPe3100X FC Host Bus Adapters
93LPe3200X FC Host Bus Adapters
94.Ed
95.It Emulex 64/32G FC GEN 7 HBAS
96.Bd -literal -offset indent
97LPe3500X FC Host Bus Adapters
98.Ed
99.El
100.Sh UPDATING FIRMWARE
101Adapter firmware updates are persistent.
102.Pp
103Firmware can be updated by following these steps:
104.Bl -enum
105.It
106Copy this code to a
107.Pa Makefile :
108.Bd -literal -offset indent
109KMOD=ocsflash
110FIRMWS=imagename.grp:ocsflash
111\&.include <bsd.kmod.mk>
112.Ed
113.It
114Replace
115.Pa imagename
116with the name of the GRP file.
117.It
118Copy the
119.Pa Makefile
120and GRP file to a local directory
121.It
122Execute
123.Cm make
124and copy the generated
125.Pa ocsflash.ko
126file to
127.Pa /lib/modules
128.It
129.Cm sysctl dev.ocs_fc.<N>.fw_upgrade=ocsflash
130.It
131Check kernel messages regarding status of the operation
132.It
133Reboot the machine
134.El
135.Sh BOOT OPTIONS
136Options are controlled by setting values in
137.Pa /boot/device.hints .
138.Pp
139They are:
140.Bl -tag -width indent
141.It Va hint.ocs_fc.N.initiator
142Enable initiator functionality.
143Default 1 (enabled), 0 to disable.
144.It Va hint.ocs_fc.N.target
145Enable target functionality.
146Default 1 (enabled), 0 to disable.
147.It Va hint.ocs_fc.N.topology
148Topology: 0 for Auto, 1 for NPort only, 2 for Loop only.
149.It Va hint.ocs_fc.N.speed
150Link speed in megabits per second.
151Possible values include:
1520 Auto-speed negotiation (default), 4000 (4GFC), 8000 (8GFC), 16000 (16GFC).
153.El
154.Sh SYSCTL OPTIONS
155.Bl -tag -width indent
156.It Va dev.ocs_fc.N.port_state
157Port state (read/write).
158Valid values are
159.Li online
160and
161.Li offline .
162.It Va dev.ocs_fc.N.wwpn
163World Wide Port Name (read/write).
164.It Va dev.ocs_fc.N.wwnn
165World Wide Node Name (read/write).
166.It Va dev.ocs_fc.N.fwrev
167Firmware revision (read-only).
168.It Va dev.ocs_fc.N.sn
169Adapter serial number (read-only).
170.It Va dev.ocs_fc.N.configured_speed
171Configured Port Speed (read/write).
172Valid values are:
1730 Auto-speed negotiation (default), 4000 (4GFC), 8000 (8GFC), 16000 (16GFC).
174.It Va dev.ocs_fc.N.configured_topology
175Configured Port Topology (read/write).
176Valid values are:
1770-Auto; 1-NPort; 2-Loop.
178.It Va dev.ocs_fc.N.current_speed
179Current Port Speed (read-only).
180.It Va dev.ocs_fc.N.current_topology
181Current Port Topology (read-only).
182.El
183.Sh SUPPORT
184For general information and support,
185go to the Broadcom website at:
186.Pa http://www.broadcom.com/
187or E-Mail at
188.Pa ocs-driver-team.pdl@broadcom.com .
189.Sh SEE ALSO
190.Xr ifconfig 8
191.Sh AUTHORS
192.An -nosplit
193The
194.Nm
195driver was written by
196.An Broadcom .
197