1 .\" Copyright (C) 2016-2017, Microsemi Corporation
2 .\" Copyright (C) 2016, PMC-Sierra, Inc.
3 .\" Written by Kevin Barnett <kevin.barnett@microsemi.com>
5 .\" %%%LICENSE_START(GPLv2_ONELINE)
6 .\" Licensed under GNU General Public License version 2 (GPLv2)
8 .TH SMARTPQI 4 2017-10-19 "Linux" "Linux Programmer's Manual"
10 smartpqi \- Microsemi Smart Family SCSI driver
12 .SY "modprobe smartpqi"
13 .RB [ disable_device_id_wildcards= { 0 | 1 }]
14 .RB [ disable_heartbeat= { 0 | 1 }]
15 .RB [ disable_ctrl_shutdown= { 0 | 1 }]
16 .RB [ lockup_action= { none | reboot | panic }]
20 is a SCSI driver for Microsemi Smart Family controllers.
21 .SS Supported \f[BI]ioctl\fP\/() operations
22 For compatibility with applications written for the
26 drivers, many, but not all of the
28 operations supported by the
30 driver are also supported by the
33 The data structures used by these operations
34 are described in the Linux kernel source file
35 .IR include/linux/cciss_ioctl.h .
37 .BR CCISS_DEREGDISK ", " CCISS_REGNEWDISK ", " CCISS_REGNEWD
39 all do exactly the same thing, which is to cause the driver to re-scan
41 This does exactly the same thing as writing to the
42 .BR smartpqi -specific
48 This operation Returns the PCI domain, bus,
49 device and function and "board ID" (PCI subsystem ID).
52 This operation returns the driver version in four bytes, encoded as:
56 (major_version << 28) | (minor_version << 24) |
57 (release << 16) | revision
62 Allows BMIC and CISS commands to be passed through to the controller.
65 .BR disable_device_id_wildcards= { 0 | 1 }
66 Disables support for device ID wildcards.
67 The default value is 0.
69 .BR disable_heartbeat= { 0 | 1 }
70 Disables support for the controller's heartbeat check.
71 This parameter is used for debugging purposes.
72 The default value is 0, leaving the controller's heartbeat check active.
74 .BR disable_ctrl_shutdown= { 0 | 1 }
75 Disables support for shutting down the controller in the
76 event of a controller lockup.
77 The default value is 0.
79 .BR lockup_action= { none | reboot | panic }
80 Specifies the action the driver takes when a controller
89 \fBnone\fP take controller offline only
90 \fBreboot\fP reboot the system
91 \fBpanic\fP panic the system
95 Logical drives are accessed via the SCSI disk driver
97 tape drives via the SCSI tape driver
99 and the RAID controller via the SCSI generic driver
101 with device nodes named
107 .SS SmartPQI-specific host attribute files in \f[BI]/sys\fP
109 .IR /sys/class/scsi_host/host * /rescan
112 attribute is a write-only attribute.
113 Writing to this attribute will cause the driver to scan for new,
114 changed, or removed devices (e.g., hot-plugged tape drives, or newly
115 configured or deleted logical drives) and notify the SCSI mid-layer of
116 any changes detected.
117 Usually this action is triggered automatically by configuration
118 changes, so the user should not normally have to write to this file.
119 Doing so may be useful when hot-plugging devices such as tape drives or
120 entire storage boxes containing pre-configured logical drives.
122 .IR /sys/class/scsi_host/host * /version
125 attribute is a read-only attribute.
126 This attribute contains the driver version and the controller firmware
134 .B cat /sys/class/scsi_host/host1/version
140 .IR /sys/class/scsi_host/host * /lockup_action
143 attribute is a read/write attribute.
144 This attribute will cause the driver to perform a specific action in the
145 unlikely event that a controller lockup has been detected.
149 for an explanation of the
152 .SS SmartPQI-specific disk attribute files in \f[BI]/sys\fP
153 In the file specifications below,
155 stands for the number of the appropriate SCSI controller,
159 the target number, and
161 is the logical unit number (LUN).
163 .IR /sys/class/scsi_disk/ c : b : t : l /device/raid_level
166 attribute is read-only.
167 This attribute contains the RAID level of each logical drive.
174 .B cat /sys/class/scsi_disk/4:0:0:0/device/raid_level
179 .IR /sys/class/scsi_disk/c : b : t : l/device/sas_address
182 attribute is read-only.
183 This attribute contains the unique identifier of the disk.
190 .B cat /sys/class/scsi_disk/1:0:3:0/device/sas_address
195 .IR /sys/class/scsi_disk/c : b : t : l/device/ssd_smart_path_enabled
197 .I ssd_smart_path_enabled
198 attribute is read-only.
199 This attribute is for ioaccel-enabled volumes.
200 (Ioaccel is an alternative driver submission path that allows the
201 driver to send I/O requests directly to backend SCSI devices,
202 bypassing the controller firmware.
203 This results in an increase in performance.
204 This method is used for HBA disks and for logical volumes comprised of SSDs.)
205 Contains 1 if ioaccel is enabled for the volume and 0 otherwise.
212 .B cat /sys/class/scsi_disk/1:0:3:0/device/ssd_smart_path_enabled
219 driver was added in Linux 4.9.
222 To configure a Microsemi Smart Family controller,
223 refer to the User Guide for the controller,
224 which can be found by searching for the specific controller at
225 .UR https://storage.microsemi.com/
233 .I Documentation/ABI/testing/sysfs\-bus\-pci\-devices\-cciss
234 in the Linux kernel source tree.