1 .\" Copyright (C) 2011, Hewlett-Packard Development Company, L.P.
2 .\" Written by Stephen M. Cameron <scameron@beardog.cce.hp.com>
4 .\" %%%LICENSE_START(GPLv2_ONELINE)
5 .\" Licensed under GNU General Public License version 2 (GPLv2)
8 .\" shorthand for double quote that works everywhere.
10 .TH HPSA 4 2021-03-22 "Linux" "Linux Programmer's Manual"
12 hpsa \- HP Smart Array SCSI driver
15 modprobe hpsa [ hpsa_allow_any=1 ]
19 is a SCSI driver for HP Smart Array RAID controllers.
21 .IR "hpsa_allow_any=1" :
22 This option allows the driver to attempt to operate on
23 any HP Smart Array hardware RAID controller,
24 even if it is not explicitly known to the driver.
25 This allows newer hardware to work with older drivers.
26 Typically this is used to allow installation of
27 operating systems from media that predates the
28 RAID controller, though it may also be used to enable
30 to drive older controllers that would normally be handled by the
33 These older boards have not been tested and are
38 should still be used for these.
39 .SS Supported hardware
42 driver supports the following Smart Array boards:
56 .\" commit 135ae6edeb51979d0998daf1357f149a7d6ebb08
57 Since Linux 4.14, the following Smart Array boards are also supported:
81 .SS Configuration details
82 To configure HP Smart Array controllers,
83 use the HP Array Configuration Utility (either
87 or the Offline ROM-based Configuration Utility (ORCA)
88 run from the Smart Array's option ROM at boot time.
91 Logical drives are accessed via the SCSI disk driver
93 tape drives via the SCSI tape driver
96 the RAID controller via the SCSI generic driver
98 with device nodes named
104 .SS HPSA-specific host attribute files in /sys
106 .I /sys/class/scsi_host/host*/rescan
107 This is a write-only attribute.
108 Writing to this attribute will cause the driver to scan for
109 new, changed, or removed devices (e.g., hot-plugged tape drives,
110 or newly configured or deleted logical drives, etc.)
111 and notify the SCSI midlayer of any changes detected.
112 Normally a rescan is triggered automatically
113 by HP's Array Configuration Utility (either the GUI or the
114 command-line variety);
115 thus, for logical drive changes, the user should not
116 normally have to use this attribute.
117 This attribute may be useful when hot plugging devices like tape drives,
118 or entire storage boxes containing preconfigured logical drives.
120 .I /sys/class/scsi_host/host*/firmware_revision
121 This attribute contains the firmware version of the Smart Array.
127 # \fBcd /sys/class/scsi_host/host4\fP
128 # \fBcat firmware_revision\fP
133 .SS HPSA-specific disk attribute files in /sys
135 .I /sys/class/scsi_disk/c:b:t:l/device/unique_id
136 This attribute contains a 32 hex-digit unique ID for each logical drive.
142 # \fBcd /sys/class/scsi_disk/4:0:0:0/device\fP
143 # \fBcat unique_id\fP
144 600508B1001044395355323037570F77
148 .I /sys/class/scsi_disk/c:b:t:l/device/raid_level
149 This attribute contains the RAID level of each logical drive.
155 # \fBcd /sys/class/scsi_disk/4:0:0:0/device\fP
156 # \fBcat raid_level\fP
161 .I /sys/class/scsi_disk/c:b:t:l/device/lunid
162 This attribute contains the 16 hex-digit (8 byte) LUN ID
163 by which a logical drive or physical device can be addressed.
165 are the controller, bus, target, and lun of the device.
171 # \fBcd /sys/class/scsi_disk/4:0:0:0/device\fP
177 .SS Supported ioctl() operations
178 For compatibility with applications written for the
181 not all of the ioctls supported by the
183 driver are also supported by the
186 The data structures used by these ioctls are described in
187 the Linux kernel source file
188 .IR include/linux/cciss_ioctl.h .
190 .BR CCISS_DEREGDISK ", " CCISS_REGNEWDISK ", " CCISS_REGNEWD
191 These three ioctls all do exactly the same thing,
192 which is to cause the driver to rescan for new devices.
193 This does exactly the same thing as writing to the
194 hpsa-specific host "rescan" attribute.
197 Returns PCI domain, bus, device, and function and "board ID" (PCI subsystem ID).
200 Returns driver version in three bytes encoded as:
204 (major_version << 16) | (minor_version << 8) |
209 .BR CCISS_PASSTHRU ", " CCISS_BIG_PASSTHRU
210 Allows "BMIC" and "CISS" commands to be passed through to the Smart Array.
211 These are used extensively by the HP Array Configuration Utility,
212 SNMP storage agents, and so on.
216 .UR http://cciss.sf.net
223 .BR cciss_vol_status (8),
227 .UR http://cciss.sf.net
230 .I Documentation/scsi/hpsa.txt
232 .I Documentation/ABI/testing/sysfs\-bus\-pci\-devices\-cciss
233 in the Linux kernel source tree
235 .\" Don Brace, Steve Cameron, Tom Lawler, Mike Miller, Scott Teel
236 .\" and probably some other people.