-.\" Copyright (C) 2016-2017, Microsemi Corporation
+'\" t
+.\" Copyright (C) 2019-2023, Microchip Technology Inc. and its subsidiaries
+.\" Copyright (C) 2016-2018, Microsemi Corporation
.\" Copyright (C) 2016, PMC-Sierra, Inc.
-.\" Written by Kevin Barnett <kevin.barnett@microsemi.com>
+.\" Written by Kevin Barnett <kevin.barnett@microchip.com>
.\"
-.\" %%%LICENSE_START(GPLv2_ONELINE)
-.\" Licensed under GNU General Public License version 2 (GPLv2)
-.\" %%%LICENSE_END
-.TH SMARTPQI 4 2017-10-19 "Linux" "Linux Programmer's Manual"
+.\" SPDX-License-Identifier: GPL-2.0-only
+.TH smartpqi 4 (date) "Linux man-pages (unreleased)"
.SH NAME
-smartpqi \- Microsemi Smart Family SCSI driver
+smartpqi \- Microchip Smart Storage SCSI driver
.SH SYNOPSIS
.SY "modprobe smartpqi"
.RB [ disable_device_id_wildcards= { 0 | 1 }]
.RB [ disable_heartbeat= { 0 | 1 }]
.RB [ disable_ctrl_shutdown= { 0 | 1 }]
.RB [ lockup_action= { none | reboot | panic }]
+.RB [ expose_ld_first= { 0 | 1 }]
+.RB [ hide_vsep= { 0 | 1 }]
+.RB [ disable_managed_interrupts= { 0 | 1 }]
.YS
.SH DESCRIPTION
.B smartpqi
-is a SCSI driver for Microsemi Smart Family controllers.
+is a SCSI driver for Microchip Smart Storage controllers.
.SS Supported \f[BI]ioctl\fP\/() operations
For compatibility with applications written for the
.BR cciss (4)
attribute.
.TP
.B CCISS_GETPCIINFO
-This operation Returns the PCI domain, bus,
-device and function and "board ID" (PCI subsystem ID).
+This operation returns the PCI domain, bus,
+device, and function and "board ID" (PCI subsystem ID).
.TP
.B CCISS_GETDRIVVER
This operation returns the driver version in four bytes, encoded as:
.TP
.BR disable_device_id_wildcards= { 0 | 1 }
Disables support for device ID wildcards.
-The default value is 0.
+The default value is 0 (wildcards are enabled).
.TP
.BR disable_heartbeat= { 0 | 1 }
Disables support for the controller's heartbeat check.
This parameter is used for debugging purposes.
-The default value is 0, leaving the controller's heartbeat check active.
+The default value is 0 (the controller's heartbeat check is enabled).
.TP
.BR disable_ctrl_shutdown= { 0 | 1 }
Disables support for shutting down the controller in the
event of a controller lockup.
-The default value is 0.
+The default value is 0 (controller will be shut down).
.TP
.BR lockup_action= { none | reboot | panic }
Specifies the action the driver takes when a controller
\fBreboot\fP reboot the system
\fBpanic\fP panic the system
.TE
-.RE
+.TP
+.BR expose_ld_first= { 0 | 1 }
+This option exposes logical devices to the OS before physical devices.
+The default value is 0 (physical devices exposed first).
+.TP
+.BR hide_vsep= { 0 | 1 }
+This option disables exposure of the virtual SEP to the OS.
+The default value is 0 (virtual SEP is exposed).
+.TP
+.BR disable_managed_interrupts= { 0 | 1 }
+Disables driver utilization of Linux kernel managed interrupts for controllers.
+The managed interrupts feature automatically distributes interrupts
+to all available CPUs and assigns SMP affinity.
+The default value is 0 (managed interrupts enabled).
.SH FILES
.SS Device nodes
Logical drives are accessed via the SCSI disk driver
This attribute will cause the driver to perform a specific action in the
unlikely event that a controller lockup has been detected.
See
-.BR OPTIONS
+.B OPTIONS
above
for an explanation of the
.I lockup_action
values.
+.TP
+.I /sys/class/scsi_host/host*/driver_version
+The
+.I driver_version
+attribute is read-only.
+This attribute contains the smartpqi driver version.
+.IP
+For example:
+.IP
+.in +4n
+.EX
+$ \c
+.B cat /sys/class/scsi_host/host1/driver_version
+1.1.2\-126
+.EE
+.in
+.TP
+.I /sys/class/scsi_host/host*/firmware_version
+The
+.I firmware_version
+attribute is read-only.
+This attribute contains the controller firmware version.
+.IP
+For example:
+.IP
+.in +4n
+.EX
+$ \c
+.B cat /sys/class/scsi_host/host1/firmware_version
+1.29\-112
+.EE
+.in
+.TP
+.I /sys/class/scsi_host/host*/model
+The
+.I model
+attribute is read-only.
+This attribute contains the product identification string of the controller.
+.IP
+For example:
+.IP
+.in +4n
+.EX
+$ \c
+.B cat /sys/class/scsi_host/host1/model
+1100\-16i
+.EE
+.in
+.TP
+.I /sys/class/scsi_host/host*/serial_number
+The
+.I serial_number
+attribute is read-only.
+This attribute contains the unique identification number of the controller.
+.IP
+For example:
+.IP
+.in +4n
+.EX
+$ \c
+.B cat /sys/class/scsi_host/host1/serial_number
+6A316373777
+.EE
+.in
+.TP
+.I /sys/class/scsi_host/host*/vendor
+The
+.I vendor
+attribute is read-only.
+This attribute contains the vendor identification string of the controller.
+.IP
+For example:
+.IP
+.in +4n
+.EX
+$ \c
+.B cat /sys/class/scsi_host/host1/vendor
+Adaptec
+.EE
+.in
.SS SmartPQI-specific disk attribute files in \f[BI]/sys\fP
In the file specifications below,
.I c
The
.I raid_level
attribute is read-only.
-This attribute contains the RAID level of each logical drive.
+This attribute contains the RAID level of the logical volume.
.IP
For example:
.IP
The
.I ssd_smart_path_enabled
attribute is read-only.
-.\" FIXME
-.\" What is "ioaccel"? This string appears nowhere in man-pages HEAD.
This attribute is for ioaccel-enabled volumes.
+(Ioaccel is an alternative driver submission path that allows the
+driver to send I/O requests directly to backend SCSI devices,
+bypassing the controller firmware.
+This results in an increase in performance.
+This method is used for HBA disks and for logical volumes comprised of SSDs.)
Contains 1 if ioaccel is enabled for the volume and 0 otherwise.
.IP
For example:
.IP
-.in +2n
+.in +4n
.EX
$ \c
.B cat /sys/class/scsi_disk/1:0:3:0/device/ssd_smart_path_enabled
.in
.SH VERSIONS
The
-.B smarpqi
+.B smartpqi
driver was added in Linux 4.9.
.SH NOTES
.SS Configuration
-To configure Microsemi Smart Family controllers, please refer to the
-controller's User Guide documentation.
-.\" FIXME
-.\" Does this manual have a title? Is it freely available online?
-.\" Does it have a stable URL? Can this information be moved to the SEE
-.\" ALSO section?
+To configure a Microchip Smart Storage controller,
+refer to the User Guide for the controller,
+which can be found by searching for the specific controller at
+.UR https://www.microchip.com/design-centers/storage
+.UE .
.SH SEE ALSO
.BR cciss (4),
.BR hpsa (4),
.BR sd (4),
-.BR st (4)
+.BR st (4),
+.BR sg (4)
.PP
.I Documentation/ABI/testing/sysfs\-bus\-pci\-devices\-cciss
in the Linux kernel source tree.