|
Packit |
7cfc04 |
.\" Copyright (C) 2016-2017, Microsemi Corporation
|
|
Packit |
7cfc04 |
.\" Copyright (C) 2016, PMC-Sierra, Inc.
|
|
Packit |
7cfc04 |
.\" Written by Kevin Barnett <kevin.barnett@microsemi.com>
|
|
Packit |
7cfc04 |
.\"
|
|
Packit |
7cfc04 |
.\" %%%LICENSE_START(GPLv2_ONELINE)
|
|
Packit |
7cfc04 |
.\" Licensed under GNU General Public License version 2 (GPLv2)
|
|
Packit |
7cfc04 |
.\" %%%LICENSE_END
|
|
Packit |
7cfc04 |
.TH SMARTPQI 4 2017-10-19 "Linux" "Linux Programmer's Manual"
|
|
Packit |
7cfc04 |
.SH NAME
|
|
Packit |
7cfc04 |
smartpqi \- Microsemi Smart Family SCSI driver
|
|
Packit |
7cfc04 |
.SH SYNOPSIS
|
|
Packit |
7cfc04 |
.SY "modprobe smartpqi"
|
|
Packit |
7cfc04 |
.RB [ disable_device_id_wildcards= { 0 | 1 }]
|
|
Packit |
7cfc04 |
.RB [ disable_heartbeat= { 0 | 1 }]
|
|
Packit |
7cfc04 |
.RB [ disable_ctrl_shutdown= { 0 | 1 }]
|
|
Packit |
7cfc04 |
.RB [ lockup_action= { none | reboot | panic }]
|
|
Packit |
7cfc04 |
.YS
|
|
Packit |
7cfc04 |
.SH DESCRIPTION
|
|
Packit |
7cfc04 |
.B smartpqi
|
|
Packit |
7cfc04 |
is a SCSI driver for Microsemi Smart Family controllers.
|
|
Packit |
7cfc04 |
.SS Supported \f[BI]ioctl\fP\/() operations
|
|
Packit |
7cfc04 |
For compatibility with applications written for the
|
|
Packit |
7cfc04 |
.BR cciss (4)
|
|
Packit |
7cfc04 |
and
|
|
Packit |
7cfc04 |
.BR hpsa (4)
|
|
Packit |
7cfc04 |
drivers, many, but not all of the
|
|
Packit |
7cfc04 |
.BR ioctl (2)
|
|
Packit |
7cfc04 |
operations supported by the
|
|
Packit |
7cfc04 |
.B hpsa
|
|
Packit |
7cfc04 |
driver are also supported by the
|
|
Packit |
7cfc04 |
.B smartpqi
|
|
Packit |
7cfc04 |
driver.
|
|
Packit |
7cfc04 |
The data structures used by these operations
|
|
Packit |
7cfc04 |
are described in the Linux kernel source file
|
|
Packit |
7cfc04 |
.IR include/linux/cciss_ioctl.h .
|
|
Packit |
7cfc04 |
.TP
|
|
Packit |
7cfc04 |
.BR CCISS_DEREGDISK ", " CCISS_REGNEWDISK ", " CCISS_REGNEWD
|
|
Packit |
7cfc04 |
These operations
|
|
Packit |
7cfc04 |
all do exactly the same thing, which is to cause the driver to re-scan
|
|
Packit |
7cfc04 |
for new devices.
|
|
Packit |
7cfc04 |
This does exactly the same thing as writing to the
|
|
Packit |
7cfc04 |
.BR smartpqi -specific
|
|
Packit |
7cfc04 |
host
|
|
Packit |
7cfc04 |
.I rescan
|
|
Packit |
7cfc04 |
attribute.
|
|
Packit |
7cfc04 |
.TP
|
|
Packit |
7cfc04 |
.B CCISS_GETPCIINFO
|
|
Packit |
7cfc04 |
This operation Returns the PCI domain, bus,
|
|
Packit |
7cfc04 |
device and function and "board ID" (PCI subsystem ID).
|
|
Packit |
7cfc04 |
.TP
|
|
Packit |
7cfc04 |
.B CCISS_GETDRIVVER
|
|
Packit |
7cfc04 |
This operation returns the driver version in four bytes, encoded as:
|
|
Packit |
7cfc04 |
.IP
|
|
Packit |
7cfc04 |
.in +4n
|
|
Packit |
7cfc04 |
.EX
|
|
Packit |
7cfc04 |
(major_version << 28) | (minor_version << 24) |
|
|
Packit |
7cfc04 |
(release << 16) | revision
|
|
Packit |
7cfc04 |
.EE
|
|
Packit |
7cfc04 |
.in
|
|
Packit |
7cfc04 |
.TP
|
|
Packit |
7cfc04 |
.B CCISS_PASSTHRU
|
|
Packit |
7cfc04 |
Allows BMIC and CISS commands to be passed through to the controller.
|
|
Packit |
7cfc04 |
.SS Boot options
|
|
Packit |
7cfc04 |
.TP
|
|
Packit |
7cfc04 |
.BR disable_device_id_wildcards= { 0 | 1 }
|
|
Packit |
7cfc04 |
Disables support for device ID wildcards.
|
|
Packit |
7cfc04 |
The default value is 0.
|
|
Packit |
7cfc04 |
.TP
|
|
Packit |
7cfc04 |
.BR disable_heartbeat= { 0 | 1 }
|
|
Packit |
7cfc04 |
Disables support for the controller's heartbeat check.
|
|
Packit |
7cfc04 |
This parameter is used for debugging purposes.
|
|
Packit |
7cfc04 |
The default value is 0, leaving the controller's heartbeat check active.
|
|
Packit |
7cfc04 |
.TP
|
|
Packit |
7cfc04 |
.BR disable_ctrl_shutdown= { 0 | 1 }
|
|
Packit |
7cfc04 |
Disables support for shutting down the controller in the
|
|
Packit |
7cfc04 |
event of a controller lockup.
|
|
Packit |
7cfc04 |
The default value is 0.
|
|
Packit |
7cfc04 |
.TP
|
|
Packit |
7cfc04 |
.BR lockup_action= { none | reboot | panic }
|
|
Packit |
7cfc04 |
Specifies the action the driver takes when a controller
|
|
Packit |
7cfc04 |
lockup is detected.
|
|
Packit |
7cfc04 |
The default action is
|
|
Packit |
7cfc04 |
.BR none .
|
|
Packit |
7cfc04 |
.TS
|
|
Packit |
7cfc04 |
l l
|
|
Packit |
7cfc04 |
---
|
|
Packit |
7cfc04 |
l l.
|
|
Packit |
7cfc04 |
parameter action
|
|
Packit |
7cfc04 |
\fBnone\fP take controller offline only
|
|
Packit |
7cfc04 |
\fBreboot\fP reboot the system
|
|
Packit |
7cfc04 |
\fBpanic\fP panic the system
|
|
Packit |
7cfc04 |
.TE
|
|
Packit |
7cfc04 |
.RE
|
|
Packit |
7cfc04 |
.SH FILES
|
|
Packit |
7cfc04 |
.SS Device nodes
|
|
Packit |
7cfc04 |
Logical drives are accessed via the SCSI disk driver
|
|
Packit |
7cfc04 |
.RI ( sd ),
|
|
Packit |
7cfc04 |
tape drives via the SCSI tape driver
|
|
Packit |
7cfc04 |
.RI ( st ),
|
|
Packit |
7cfc04 |
and the RAID controller via the SCSI generic driver
|
|
Packit |
7cfc04 |
.RI ( sg ),
|
|
Packit |
7cfc04 |
with device nodes named
|
|
Packit |
7cfc04 |
.IR /dev/sd *,
|
|
Packit |
7cfc04 |
.IR /dev/st *,
|
|
Packit |
7cfc04 |
and
|
|
Packit |
7cfc04 |
.IR /dev/sg *,
|
|
Packit |
7cfc04 |
respectively.
|
|
Packit |
7cfc04 |
.SS SmartPQI-specific host attribute files in \f[BI]/sys\fP
|
|
Packit |
7cfc04 |
.TP
|
|
Packit |
7cfc04 |
.IR /sys/class/scsi_host/host * /rescan
|
|
Packit |
7cfc04 |
The host
|
|
Packit |
7cfc04 |
.I rescan
|
|
Packit |
7cfc04 |
attribute is a write-only attribute.
|
|
Packit |
7cfc04 |
Writing to this attribute will cause the driver to scan for new,
|
|
Packit |
7cfc04 |
changed, or removed devices (e.g., hot-plugged tape drives, or newly
|
|
Packit |
7cfc04 |
configured or deleted logical drives) and notify the SCSI mid-layer of
|
|
Packit |
7cfc04 |
any changes detected.
|
|
Packit |
7cfc04 |
Usually this action is triggered automatically by configuration
|
|
Packit |
7cfc04 |
changes, so the user should not normally have to write to this file.
|
|
Packit |
7cfc04 |
Doing so may be useful when hot-plugging devices such as tape drives or
|
|
Packit |
7cfc04 |
entire storage boxes containing pre-configured logical drives.
|
|
Packit |
7cfc04 |
.TP
|
|
Packit |
7cfc04 |
.IR /sys/class/scsi_host/host * /version
|
|
Packit |
7cfc04 |
The host
|
|
Packit |
7cfc04 |
.I version
|
|
Packit |
7cfc04 |
attribute is a read-only attribute.
|
|
Packit |
7cfc04 |
This attribute contains the driver version and the controller firmware
|
|
Packit |
7cfc04 |
version.
|
|
Packit |
7cfc04 |
.IP
|
|
Packit |
7cfc04 |
For example:
|
|
Packit |
7cfc04 |
.IP
|
|
Packit |
7cfc04 |
.in +4n
|
|
Packit |
7cfc04 |
.EX
|
|
Packit |
7cfc04 |
$ \c
|
|
Packit |
7cfc04 |
.B cat /sys/class/scsi_host/host1/version
|
|
Packit |
7cfc04 |
driver: 1.1.2\-126
|
|
Packit |
7cfc04 |
firmware: 1.29\-112
|
|
Packit |
7cfc04 |
.EE
|
|
Packit |
7cfc04 |
.in
|
|
Packit |
7cfc04 |
.TP
|
|
Packit |
7cfc04 |
.IR /sys/class/scsi_host/host * /lockup_action
|
|
Packit |
7cfc04 |
The host
|
|
Packit |
7cfc04 |
.I lockup_action
|
|
Packit |
7cfc04 |
attribute is a read/write attribute.
|
|
Packit |
7cfc04 |
This attribute will cause the driver to perform a specific action in the
|
|
Packit |
7cfc04 |
unlikely event that a controller lockup has been detected.
|
|
Packit |
7cfc04 |
See
|
|
Packit |
7cfc04 |
.BR OPTIONS
|
|
Packit |
7cfc04 |
above
|
|
Packit |
7cfc04 |
for an explanation of the
|
|
Packit |
7cfc04 |
.I lockup_action
|
|
Packit |
7cfc04 |
values.
|
|
Packit |
7cfc04 |
.SS SmartPQI-specific disk attribute files in \f[BI]/sys\fP
|
|
Packit |
7cfc04 |
In the file specifications below,
|
|
Packit |
7cfc04 |
.I c
|
|
Packit |
7cfc04 |
stands for the number of the appropriate SCSI controller,
|
|
Packit |
7cfc04 |
.I b
|
|
Packit |
7cfc04 |
is the bus number,
|
|
Packit |
7cfc04 |
.I t
|
|
Packit |
7cfc04 |
the target number, and
|
|
Packit |
7cfc04 |
.I l
|
|
Packit |
7cfc04 |
is the logical unit number (LUN).
|
|
Packit |
7cfc04 |
.TP
|
|
Packit |
7cfc04 |
.IR /sys/class/scsi_disk/ c : b : t : l /device/raid_level
|
|
Packit |
7cfc04 |
The
|
|
Packit |
7cfc04 |
.I raid_level
|
|
Packit |
7cfc04 |
attribute is read-only.
|
|
Packit |
7cfc04 |
This attribute contains the RAID level of each logical drive.
|
|
Packit |
7cfc04 |
.IP
|
|
Packit |
7cfc04 |
For example:
|
|
Packit |
7cfc04 |
.IP
|
|
Packit |
7cfc04 |
.in +4n
|
|
Packit |
7cfc04 |
.EX
|
|
Packit |
7cfc04 |
$ \c
|
|
Packit |
7cfc04 |
.B cat /sys/class/scsi_disk/4:0:0:0/device/raid_level
|
|
Packit |
7cfc04 |
RAID 0
|
|
Packit |
7cfc04 |
.EE
|
|
Packit |
7cfc04 |
.in
|
|
Packit |
7cfc04 |
.TP
|
|
Packit |
7cfc04 |
.IR /sys/class/scsi_disk/c : b : t : l/device/sas_address
|
|
Packit |
7cfc04 |
The
|
|
Packit |
7cfc04 |
.I sas_address
|
|
Packit |
7cfc04 |
attribute is read-only.
|
|
Packit |
7cfc04 |
This attribute contains the unique identifier of the disk.
|
|
Packit |
7cfc04 |
.IP
|
|
Packit |
7cfc04 |
For example:
|
|
Packit |
7cfc04 |
.IP
|
|
Packit |
7cfc04 |
.in +4n
|
|
Packit |
7cfc04 |
.EX
|
|
Packit |
7cfc04 |
$ \c
|
|
Packit |
7cfc04 |
.B cat /sys/class/scsi_disk/1:0:3:0/device/sas_address
|
|
Packit |
7cfc04 |
0x5001173d028543a2
|
|
Packit |
7cfc04 |
.EE
|
|
Packit |
7cfc04 |
.in
|
|
Packit |
7cfc04 |
.TP
|
|
Packit |
7cfc04 |
.IR /sys/class/scsi_disk/c : b : t : l/device/ssd_smart_path_enabled
|
|
Packit |
7cfc04 |
The
|
|
Packit |
7cfc04 |
.I ssd_smart_path_enabled
|
|
Packit |
7cfc04 |
attribute is read-only.
|
|
Packit |
7cfc04 |
This attribute is for ioaccel-enabled volumes.
|
|
Packit |
7cfc04 |
(Ioaccel is an alternative driver submission path that allows the
|
|
Packit |
7cfc04 |
driver to send I/O requests directly to backend SCSI devices,
|
|
Packit |
7cfc04 |
bypassing the controller firmware.
|
|
Packit |
7cfc04 |
This results in an increase in performance.
|
|
Packit |
7cfc04 |
This method is used for HBA disks and for logical volumes comprised of SSDs.)
|
|
Packit |
7cfc04 |
Contains 1 if ioaccel is enabled for the volume and 0 otherwise.
|
|
Packit |
7cfc04 |
.IP
|
|
Packit |
7cfc04 |
For example:
|
|
Packit |
7cfc04 |
.IP
|
|
Packit |
7cfc04 |
.in +2n
|
|
Packit |
7cfc04 |
.EX
|
|
Packit |
7cfc04 |
$ \c
|
|
Packit |
7cfc04 |
.B cat /sys/class/scsi_disk/1:0:3:0/device/ssd_smart_path_enabled
|
|
Packit |
7cfc04 |
0
|
|
Packit |
7cfc04 |
.EE
|
|
Packit |
7cfc04 |
.in
|
|
Packit |
7cfc04 |
.SH VERSIONS
|
|
Packit |
7cfc04 |
The
|
|
Packit |
7cfc04 |
.B smarpqi
|
|
Packit |
7cfc04 |
driver was added in Linux 4.9.
|
|
Packit |
7cfc04 |
.SH NOTES
|
|
Packit |
7cfc04 |
.SS Configuration
|
|
Packit |
7cfc04 |
To configure a Microsemi Smart Family controller,
|
|
Packit |
7cfc04 |
refer to the User Guide for the controller,
|
|
Packit |
7cfc04 |
which can be found by searching for the specific controller at
|
|
Packit |
7cfc04 |
.UR https://storage.microsemi.com/
|
|
Packit |
7cfc04 |
.UE .
|
|
Packit |
7cfc04 |
.SH SEE ALSO
|
|
Packit |
7cfc04 |
.BR cciss (4),
|
|
Packit |
7cfc04 |
.BR hpsa (4),
|
|
Packit |
7cfc04 |
.BR sd (4),
|
|
Packit |
7cfc04 |
.BR st (4)
|
|
Packit |
7cfc04 |
.PP
|
|
Packit |
7cfc04 |
.I Documentation/ABI/testing/sysfs\-bus\-pci\-devices\-cciss
|
|
Packit |
7cfc04 |
in the Linux kernel source tree.
|
|
Packit |
7cfc04 |
.SH COLOPHON
|
|
Packit |
7cfc04 |
This page is part of release 4.15 of the Linux
|
|
Packit |
7cfc04 |
.I man-pages
|
|
Packit |
7cfc04 |
project.
|
|
Packit |
7cfc04 |
A description of the project,
|
|
Packit |
7cfc04 |
information about reporting bugs,
|
|
Packit |
7cfc04 |
and the latest version of this page,
|
|
Packit |
7cfc04 |
can be found at
|
|
Packit |
7cfc04 |
\%https://www.kernel.org/doc/man\-pages/.
|