SMARTPQI - Microsemi Smart PQI Driver¶
This file describes the smartpqi SCSI driver for Microsemi(http://www.microsemi.com) PQI controllers. The smartpqi driveris the next generation SCSI driver for Microsemi Corp. The smartpqidriver is the first SCSI driver to implement the PQI queuing model.
The smartpqi driver will replace the aacraid driver for Adaptec Series 9controllers. Customers running an older kernel (Pre-4.9) using an AdaptecSeries 9 controller will have to configure the smartpqi driver or theirvolumes will not be added to the OS.
For Microsemi smartpqi controller support, enable the smartpqi driverwhen configuring the kernel.
For more information on the PQI Queuing Interface, please see:
Supported devices¶
<Controller names to be added as they become publicly available.>
smartpqi specific entries in /sys¶
smartpqi host attributes¶
- /sys/class/scsi_host/host*/rescan
- /sys/class/scsi_host/host*/driver_version
The host rescan attribute is a write only attribute. Writing to thisattribute will trigger the driver to scan for new, changed, or removeddevices and notify the SCSI mid-layer of any changes detected.
The version attribute is read-only and will return the driver versionand the controller firmware version.For example:
driver: 0.9.13-370firmware: 0.01-522
smartpqi sas device attributes¶
HBA devices are added to the SAS transport layer. These attributes areautomatically added by the SAS transport layer.
/sys/class/sas_device/end_device-X:X/sas_address/sys/class/sas_device/end_device-X:X/enclosure_identifier/sys/class/sas_device/end_device-X:X/scsi_target_id
smartpqi specific ioctls¶
For compatibility with applications written for the cciss protocol.
- CCISS_DEREGDISK, CCISS_REGNEWDISK, CCISS_REGNEWD
- The above three ioctls all do exactly the same thing, which is to cause the driverto rescan for new devices. This does exactly the same thing as writing to thesmartpqi specific host “rescan” attribute.
- CCISS_GETPCIINFO
- Returns PCI domain, bus, device and function and “board ID” (PCI subsystem ID).
- CCISS_GETDRIVVER
Returns driver version in three bytes encoded as:
(DRIVER_MAJOR << 28) | (DRIVER_MINOR << 24) | (DRIVER_RELEASE << 16) | DRIVER_REVISION;- CCISS_PASSTHRU
- Allows “BMIC” and “CISS” commands to be passed through to the Smart Storage Array.These are used extensively by the SSA Array Configuration Utility, SNMP storageagents, etc.