---
name: "ocs_fc"
section: "4freebsd"
platform: "linux"
package: "freebsd-manpages"
version: "12.2-2"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/ocs_fc/4freebsd"
---

# ocs\_fc(4freebsd)

Device driver for Emulex Fibre Channel Host Adapters

## NAME

**ocs\_fc** – Device driver for Emulex Fibre Channel Host Adapters

## SYNOPSIS

To compile this driver into the kernel, add this line to the kernel configuration file:

**device ocs\_fc**

To load the driver as a module at boot, add this line to [loader.conf(5)](/loader.conf/5.md):

```
ocs_fc_load="YES"
```

## DESCRIPTION

The **ocs\_fc** driver provides access to Fibre Channel SCSI devices.

The **ocs\_fc** driver supports initiator and target modes. Support is available for Arbitrated loops, Point-to-Point, and Fabric connections. FC-Tape is highly recommended for connections to tape drives that support it. FC-Tape includes four elements from the T-10 FCP-4 specification:

- Precise Delivery of Commands

- Confirmed Completion of FCP I/O Operations

- Retransmission of Unsuccessfully Transmitted IUs

- Task Retry Identification

Together these features allow for link level error recovery with tape devices. Without link level error recovery, an initiator cannot, for instance, tell whether a tape write command that has timed out resulted in all, part, or none of the data going to the tape drive. FC-Tape is automatically enabled when both the controller and target support it.

## HARDWARE

The **ocs\_fc** driver supports these Fibre Channel adapters:

- Emulex 16/8G FC GEN 5 HBAS

  ```
  LPe15004 FC Host Bus Adapters
  LPe160XX FC Host Bus Adapters
  ```

- Emulex 32/16G FC GEN 6 HBAS

  ```
  LPe3100X FC Host Bus Adapters
  LPe3200X FC Host Bus Adapters
  ```

## UPDATING FIRMWARE

Adapter firmware updates are persistent.

Firmware can be updated by following these steps:

1. Copy this code to a *Makefile*:

   ```
   KMOD=ocsflash
   FIRMWS=imagename.grp:ocsflash
   .include <bsd.kmod.mk>
   ```

2. Replace *imagename* with the name of the GRP file.

3. Copy the *Makefile* and GRP file to a local directory

4. Execute **make** and copy the generated *ocsflash.ko* file to */lib/modules*

5. **sysctl** **dev.ocs\_fc.\<N\>.fw\_upgrade=ocsflash**

6. Check kernel messages regarding status of the operation

7. Reboot the machine

## BOOT OPTIONS

Options are controlled by setting values in */boot/device.hints*.

They are:

- *hint.ocs\_fc.N.initiator*

  Enable initiator functionality. Default 1 (enabled), 0 to disable.

- *hint.ocs\_fc.N.target*

  Enable target functionality. Default 1 (enabled), 0 to disable.

- *hint.ocs\_fc.N.topology*

  Topology: 0 for Auto, 1 for NPort only, 2 for Loop only.

- *hint.ocs\_fc.N.speed*

  Link speed in megabits per second. Possible values include: 0 Auto-speed negotiation (default), 4000 (4GFC), 8000 (8GFC), 16000 (16GFC).

## SYSCTL OPTIONS

- *dev.ocs\_fc.N.port\_state*

  Port state (read/write). Valid values are online and offline.

- *dev.ocs\_fc.N.wwpn*

  World Wide Port Name (read/write).

- *dev.ocs\_fc.N.wwnn*

  World Wide Node Name (read/write).

- *dev.ocs\_fc.N.fwrev*

  Firmware revision (read-only).

- *dev.ocs\_fc.N.sn*

  Adapter serial number (read-only).

- *dev.ocs\_fc.N.configured\_speed*

  Configured Port Speed (read/write). Valid values are: 0 Auto-speed negotiation (default), 4000 (4GFC), 8000 (8GFC), 16000 (16GFC).

- *dev.ocs\_fc.N.configured\_topology*

  Configured Port Topology (read/write). Valid values are: 0-Auto; 1-NPort; 2-Loop.

- *dev.ocs\_fc.N.current\_speed*

  Current Port Speed (read-only).

- *dev.ocs\_fc.N.current\_topology*

  Current Port Topology (read-only).

## SUPPORT

For general information and support, go to the Broadcom website at: *http://www.broadcom.com/* or E-Mail at *ocs-driver-team.pdl@broadcom.com.*

## SEE ALSO

[ifconfig(8)](/ifconfig/8.md)

## AUTHORS

The **ocs\_fc** driver was written by Broadcom.
