0001 .. SPDX-License-Identifier: GPL-2.0
0002
0003 ==============================================
0004 SMARTPQI - Microchip Smart Storage SCSI driver
0005 ==============================================
0006
0007 This file describes the smartpqi SCSI driver for Microchip
0008 (http://www.microchip.com) PQI controllers. The smartpqi driver
0009 is the next generation SCSI driver for Microchip Corp. The smartpqi
0010 driver is the first SCSI driver to implement the PQI queuing model.
0011
0012 The smartpqi driver will replace the aacraid driver for Adaptec Series 9
0013 controllers. Customers running an older kernel (Pre-4.9) using an Adaptec
0014 Series 9 controller will have to configure the smartpqi driver or their
0015 volumes will not be added to the OS.
0016
0017 For Microchip smartpqi controller support, enable the smartpqi driver
0018 when configuring the kernel.
0019
0020 For more information on the PQI Queuing Interface, please see:
0021
0022 - http://www.t10.org/drafts.htm
0023 - http://www.t10.org/members/w_pqi2.htm
0024
0025 Supported devices
0026 =================
0027 <Controller names to be added as they become publicly available.>
0028
0029 smartpqi specific entries in /sys
0030 =================================
0031
0032 smartpqi host attributes
0033 ------------------------
0034 - /sys/class/scsi_host/host*/rescan
0035 - /sys/class/scsi_host/host*/driver_version
0036
0037 The host rescan attribute is a write only attribute. Writing to this
0038 attribute will trigger the driver to scan for new, changed, or removed
0039 devices and notify the SCSI mid-layer of any changes detected.
0040
0041 The version attribute is read-only and will return the driver version
0042 and the controller firmware version.
0043 For example::
0044
0045 driver: 0.9.13-370
0046 firmware: 0.01-522
0047
0048 smartpqi sas device attributes
0049 ------------------------------
0050 HBA devices are added to the SAS transport layer. These attributes are
0051 automatically added by the SAS transport layer.
0052
0053 /sys/class/sas_device/end_device-X:X/sas_address
0054 /sys/class/sas_device/end_device-X:X/enclosure_identifier
0055 /sys/class/sas_device/end_device-X:X/scsi_target_id
0056
0057 smartpqi specific ioctls
0058 ========================
0059
0060 For compatibility with applications written for the cciss protocol.
0061
0062 CCISS_DEREGDISK, CCISS_REGNEWDISK, CCISS_REGNEWD
0063 The above three ioctls all do exactly the same thing, which is to cause the driver
0064 to rescan for new devices. This does exactly the same thing as writing to the
0065 smartpqi specific host "rescan" attribute.
0066
0067 CCISS_GETPCIINFO
0068 Returns PCI domain, bus, device and function and "board ID" (PCI subsystem ID).
0069
0070 CCISS_GETDRIVVER
0071 Returns driver version in three bytes encoded as::
0072
0073 (DRIVER_MAJOR << 28) | (DRIVER_MINOR << 24) | (DRIVER_RELEASE << 16) | DRIVER_REVISION;
0074
0075 CCISS_PASSTHRU
0076 Allows "BMIC" and "CISS" commands to be passed through to the Smart Storage Array.
0077 These are used extensively by the SSA Array Configuration Utility, SNMP storage
0078 agents, etc.