]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/blame - Documentation/scsi/hpsa.txt
[SCSI] hpsa: Add transport_mode host attribute in /sys
[mirror_ubuntu-bionic-kernel.git] / Documentation / scsi / hpsa.txt
CommitLineData
992ebcf1
SC
1
2HPSA - Hewlett Packard Smart Array driver
3-----------------------------------------
4
5This file describes the hpsa SCSI driver for HP Smart Array controllers.
6The hpsa driver is intended to supplant the cciss driver for newer
7Smart Array controllers. The hpsa driver is a SCSI driver, while the
8cciss driver is a "block" driver. Actually cciss is both a block
9driver (for logical drives) AND a SCSI driver (for tape drives). This
10"split-brained" design of the cciss driver is a source of excess
11complexity and eliminating that complexity is one of the reasons
12for hpsa to exist.
13
14Supported devices:
15------------------
16
17Smart Array P212
18Smart Array P410
19Smart Array P410i
20Smart Array P411
21Smart Array P812
22Smart Array P712m
23Smart Array P711m
24StorageWorks P1210m
25
26Additionally, older Smart Arrays may work with the hpsa driver if the kernel
27boot parameter "hpsa_allow_any=1" is specified, however these are not tested
28nor supported by HP with this driver. For older Smart Arrays, the cciss
29driver should still be used.
30
02ec19c8
SC
31The "hpsa_simple_mode=1" boot parameter may be used to prevent the driver from
32putting the controller into "performant" mode. The difference is that with simple
33mode, each command completion requires an interrupt, while with "performant mode"
34(the default, and ordinarily better performing) it is possible to have multiple
35command completions indicated by a single interrupt.
36
992ebcf1
SC
37HPSA specific entries in /sys
38-----------------------------
39
40 In addition to the generic SCSI attributes available in /sys, hpsa supports
41 the following attributes:
42
43 HPSA specific host attributes:
44 ------------------------------
45
46 /sys/class/scsi_host/host*/rescan
d28ce020 47 /sys/class/scsi_host/host*/firmware_revision
745a7a25 48 /sys/class/scsi_host/host*/transport_mode
992ebcf1
SC
49
50 the host "rescan" attribute is a write only attribute. Writing to this
51 attribute will cause the driver to scan for new, changed, or removed devices
52 (e.g. hot-plugged tape drives, or newly configured or deleted logical drives,
53 etc.) and notify the SCSI midlayer of any changes detected. Normally this is
54 triggered automatically by HP's Array Configuration Utility (either the GUI or
55 command line variety) so for logical drive changes, the user should not
56 normally have to use this. It may be useful when hot plugging devices like
57 tape drives, or entire storage boxes containing pre-configured logical drives.
58
d28ce020
SC
59 The "firmware_revision" attribute contains the firmware version of the Smart Array.
60 For example:
61
62 root@host:/sys/class/scsi_host/host4# cat firmware_revision
63 7.14
64
745a7a25
SC
65 The transport_mode indicates whether the controller is in "performant"
66 or "simple" mode. This is controlled by the "hpsa_simple_mode" module
67 parameter.
68
992ebcf1
SC
69 HPSA specific disk attributes:
70 ------------------------------
71
72 /sys/class/scsi_disk/c:b:t:l/device/unique_id
73 /sys/class/scsi_disk/c:b:t:l/device/raid_level
74 /sys/class/scsi_disk/c:b:t:l/device/lunid
75
76 (where c:b:t:l are the controller, bus, target and lun of the device)
77
78 For example:
79
80 root@host:/sys/class/scsi_disk/4:0:0:0/device# cat unique_id
81 600508B1001044395355323037570F77
82 root@host:/sys/class/scsi_disk/4:0:0:0/device# cat lunid
83 0x0000004000000000
84 root@host:/sys/class/scsi_disk/4:0:0:0/device# cat raid_level
85 RAID 0
86
87HPSA specific ioctls:
88---------------------
89
90 For compatibility with applications written for the cciss driver, many, but
91 not all of the ioctls supported by the cciss driver are also supported by the
92 hpsa driver. The data structures used by these are described in
93 include/linux/cciss_ioctl.h
94
95 CCISS_DEREGDISK
96 CCISS_REGNEWDISK
97 CCISS_REGNEWD
98
99 The above three ioctls all do exactly the same thing, which is to cause the driver
100 to rescan for new devices. This does exactly the same thing as writing to the
101 hpsa specific host "rescan" attribute.
102
103 CCISS_GETPCIINFO
104
105 Returns PCI domain, bus, device and function and "board ID" (PCI subsystem ID).
106
107 CCISS_GETDRIVVER
108
109 Returns driver version in three bytes encoded as:
110 (major_version << 16) | (minor_version << 8) | (subminor_version)
111
112 CCISS_PASSTHRU
113 CCISS_BIG_PASSTHRU
114
115 Allows "BMIC" and "CISS" commands to be passed through to the Smart Array.
116 These are used extensively by the HP Array Configuration Utility, SNMP storage
117 agents, etc. See cciss_vol_status at http://cciss.sf.net for some examples.
118