MPS(4)

NAME
mps - LSI Fusion-MPT 2 Serial Attached SCSI driver

SYNOPSIS
To compile this driver into your kernel, place the following lines in your kernel configuration file:

device scbus
device mps

Or, to load the driver as a module at boot, place the following line in loader.conf(5):

    mps_load="YES"

DESCRIPTION
The mps driver provides support for LSI Logic Fusion-MPT 2 SAS controllers and WarpDrive solid state storage cards.

HARDWARE
The mps driver supports the following controllers:

•   LSI Logic SAS2004 (4 Port SAS)
•   LSI Logic SAS2008 (8 Port SAS)
•   LSI Logic SAS2108 (8 Port SAS)
•   LSI Logic SAS2116 (16 Port SAS)
•   LSI Logic SAS2208 (8 Port SAS)

CONFIGURATION
To disable MSI interrupts for all mps driver instances, set the following tunable value in loader.conf(5):

    hw.mps.disable_msi=1

To disable MSI interrupts for a specific mps driver instance, set the following tunable value in loader.conf(5):

    dev.mps.X.disable_msi=1

where X is the adapter number.

To disable MSI-X interrupts for all mps driver instances, set the following tunable value in loader.conf(5):

    hw.mps.disable_msix=1

To disable MSI-X interrupts for a specific mps driver instance, set the following tunable value in loader.conf(5):

    dev.mps.X.disable_msix=1

To set the maximum number of DMA chains allocated for all adapters, set the following variable in loader.conf(5):

    hw.mps.max_chains=NNNN

To set the maximum number of DMA chains allocated for a specific adapter, set the following variable in loader.conf(5):

    dev.mps.X.max_chains=NNNN

This variable may also be viewed via sysctl(8) to see the maximum set for a given adapter.

The current number of free chain frames may be seen via the dev.mps.X.chain_free sysctl(8) variable.

The lowest number of free chain frames may be seen via the dev.mps.X.chain_free_lowwater sysctl(8) variable.

The current number of active I/O commands is shown in the dev.mps.X.io_cmds_active sysctl(8) variable.

The maximum number of active I/O command seen since boot is shown in the dev.mps.X.io_cmds_highwater sysctl(8) variable.

DEBUGGING
To enable debugging prints from the mps driver, set the

    hw.mps.X.debug_level

variable, where X is the adapter number, either in loader.conf(5) or via sysctl(8). The following bits have the described effects:

0x01
    Enable informational prints.

0x02
    Enable tracing prints.

0x04
    Enable prints for driver faults.

0x08
    Enable prints for controller events.

SEE ALSO
cd(4), ch(4), da(4), mpt(4), pci(4), sa(4), scsi(4), targ(4), loader.conf(5), sysctl(8)

HISTORY
The mps driver first appeared in FreeBSD 9.0.

AUTHORS
-nosplit The mps driver was originally written by Scott Long <scottl@FreeBSD.org>. It has been improved and tested by LSI Logic Corporation. This man page was written by Ken Merry <ken@FreeBSD.org>.

BUGS
This driver has a couple of known shortcomings:
•   No userland utility available (e.g. mptutil(8)).
•   The driver probes devices sequentially. If your system has a large number of devices, the probe will take a while.