1
2SMARTPQI - Microsemi Smart PQI Driver
3-----------------------------------------
4
5This file describes the smartpqi SCSI driver for Microsemi
6(http://www.microsemi.com) PQI controllers. The smartpqi driver
7is the next generation SCSI driver for Microsemi Corp. The smartpqi
8driver is the first SCSI driver to implement the PQI queuing model.
9
10The smartpqi driver will replace the aacraid driver for Adaptec Series 9
11controllers. Customers running an older kernel (Pre-4.9) using an Adaptec
12Series 9 controller will have to configure the smartpqi driver or their
13volumes will not be added to the OS.
14
15For Microsemi smartpqi controller support, enable the smartpqi driver
16when configuring the kernel.
17
18For more information on the PQI Queuing Interface, please see:
19http://www.t10.org/drafts.htm
20http://www.t10.org/members/w_pqi2.htm
21
22Supported devices:
23------------------
24<Controller names to be added as they become publicly available.>
25
26smartpqi specific entries in /sys
27-----------------------------
28
29  smartpqi host attributes:
30  -------------------------
31  /sys/class/scsi_host/host*/rescan
32  /sys/class/scsi_host/host*/version
33
34  The host rescan attribute is a write only attribute. Writing to this
35  attribute will trigger the driver to scan for new, changed, or removed
36  devices and notify the SCSI mid-layer of any changes detected.
37
38  The version attribute is read-only and will return the driver version
39  and the controller firmware version.
40  For example:
41              driver: 0.9.13-370
42              firmware: 0.01-522
43
44  smartpqi sas device attributes
45  ------------------------------
46  HBA devices are added to the SAS transport layer. These attributes are
47  automatically added by the SAS transport layer.
48
49  /sys/class/sas_device/end_device-X:X/sas_address
50  /sys/class/sas_device/end_device-X:X/enclosure_identifier
51  /sys/class/sas_device/end_device-X:X/scsi_target_id
52
53smartpqi specific ioctls:
54-------------------------
55
56  For compatibility with applications written for the cciss protocol.
57
58  CCISS_DEREGDISK
59  CCISS_REGNEWDISK
60  CCISS_REGNEWD
61
62  The above three ioctls all do exactly the same thing, which is to cause the driver
63  to rescan for new devices.  This does exactly the same thing as writing to the
64  smartpqi specific host "rescan" attribute.
65
66  CCISS_GETPCIINFO
67
68	Returns PCI domain, bus, device and function and "board ID" (PCI subsystem ID).
69
70  CCISS_GETDRIVVER
71
72	Returns driver version in three bytes encoded as:
73	(DRIVER_MAJOR << 28) | (DRIVER_MINOR << 24) | (DRIVER_RELEASE << 16) | DRIVER_REVISION;
74
75  CCISS_PASSTHRU
76
77	Allows "BMIC" and "CISS" commands to be passed through to the Smart Storage Array.
78	These are used extensively by the SSA Array Configuration Utility, SNMP storage
79	agents, etc.
80
81