| .\" Copyright (C) 2011, Hewlett-Packard Development Company, L.P. |
| .\" Written by Stephen M. Cameron <scameron@beardog.cce.hp.com> |
| .\" |
| .\" SPDX-License-Identifier: GPL-2.0-only |
| .\" |
| .\" shorthand for double quote that works everywhere. |
| .ds q \N'34' |
| .TH hpsa 4 (date) "Linux man-pages (unreleased)" |
| .SH NAME |
| hpsa \- HP Smart Array SCSI driver |
| .SH SYNOPSIS |
| .nf |
| modprobe hpsa [ hpsa_allow_any=1 ] |
| .fi |
| .SH DESCRIPTION |
| .B hpsa |
| is a SCSI driver for HP Smart Array RAID controllers. |
| .SS Options |
| .IR "hpsa_allow_any=1" : |
| This option allows the driver to attempt to operate on |
| any HP Smart Array hardware RAID controller, |
| even if it is not explicitly known to the driver. |
| This allows newer hardware to work with older drivers. |
| Typically this is used to allow installation of |
| operating systems from media that predates the |
| RAID controller, though it may also be used to enable |
| .B hpsa |
| to drive older controllers that would normally be handled by the |
| .BR cciss (4) |
| driver. |
| These older boards have not been tested and are |
| not supported with |
| .BR hpsa , |
| and |
| .BR cciss (4) |
| should still be used for these. |
| .SS Supported hardware |
| The |
| .B hpsa |
| driver supports the following Smart Array boards: |
| .P |
| .nf |
| Smart Array P700M |
| Smart Array P212 |
| Smart Array P410 |
| Smart Array P410i |
| Smart Array P411 |
| Smart Array P812 |
| Smart Array P712m |
| Smart Array P711m |
| StorageWorks P1210m |
| .fi |
| .P |
| .\" commit 135ae6edeb51979d0998daf1357f149a7d6ebb08 |
| Since Linux 4.14, the following Smart Array boards are also supported: |
| .P |
| .nf |
| Smart Array 5300 |
| Smart Array 5312 |
| Smart Array 532 |
| Smart Array 5i |
| Smart Array 6400 |
| Smart Array 6400 EM |
| Smart Array 641 |
| Smart Array 642 |
| Smart Array 6i |
| Smart Array E200 |
| Smart Array E200i |
| Smart Array E200i |
| Smart Array E200i |
| Smart Array E200i |
| Smart Array E500 |
| Smart Array P400 |
| Smart Array P400i |
| Smart Array P600 |
| Smart Array P700m |
| Smart Array P800 |
| .fi |
| .SS Configuration details |
| To configure HP Smart Array controllers, |
| use the HP Array Configuration Utility (either |
| .BR hpacuxe (8) |
| or |
| .BR hpacucli (8)) |
| or the Offline ROM-based Configuration Utility (ORCA) |
| run from the Smart Array's option ROM at boot time. |
| .SH FILES |
| .SS Device nodes |
| Logical drives are accessed via the SCSI disk driver |
| .RB ( sd (4)), |
| tape drives via the SCSI tape driver |
| .RB ( st (4)), |
| and |
| the RAID controller via the SCSI generic driver |
| .RB ( sg (4)), |
| with device nodes named |
| .IR /dev/sd* , |
| .IR /dev/st* , |
| and |
| .IR /dev/sg* , |
| respectively. |
| .SS HPSA-specific host attribute files in /sys |
| .TP |
| .I /sys/class/scsi_host/host*/rescan |
| This is a write-only attribute. |
| Writing to this attribute will cause the driver to scan for |
| new, changed, or removed devices (e.g., hot-plugged tape drives, |
| or newly configured or deleted logical drives, etc.) |
| and notify the SCSI midlayer of any changes detected. |
| Normally a rescan is triggered automatically |
| by HP's Array Configuration Utility (either the GUI or the |
| command-line variety); |
| thus, for logical drive changes, the user should not |
| normally have to use this attribute. |
| This attribute may be useful when hot plugging devices like tape drives, |
| or entire storage boxes containing preconfigured logical drives. |
| .TP |
| .I /sys/class/scsi_host/host*/firmware_revision |
| This attribute contains the firmware version of the Smart Array. |
| .IP |
| For example: |
| .IP |
| .in +4n |
| .EX |
| # \fBcd /sys/class/scsi_host/host4\fP |
| # \fBcat firmware_revision\fP |
| 7.14 |
| .EE |
| .in |
| .\" |
| .SS HPSA-specific disk attribute files in /sys |
| .TP |
| .I /sys/class/scsi_disk/c:b:t:l/device/unique_id |
| This attribute contains a 32 hex-digit unique ID for each logical drive. |
| .IP |
| For example: |
| .IP |
| .in +4n |
| .EX |
| # \fBcd /sys/class/scsi_disk/4:0:0:0/device\fP |
| # \fBcat unique_id\fP |
| 600508B1001044395355323037570F77 |
| .EE |
| .in |
| .TP |
| .I /sys/class/scsi_disk/c:b:t:l/device/raid_level |
| This attribute contains the RAID level of each logical drive. |
| .IP |
| For example: |
| .IP |
| .in +4n |
| .EX |
| # \fBcd /sys/class/scsi_disk/4:0:0:0/device\fP |
| # \fBcat raid_level\fP |
| RAID 0 |
| .EE |
| .in |
| .TP |
| .I /sys/class/scsi_disk/c:b:t:l/device/lunid |
| This attribute contains the 16 hex-digit (8 byte) LUN ID |
| by which a logical drive or physical device can be addressed. |
| .IR c : b : t : l |
| are the controller, bus, target, and lun of the device. |
| .P |
| For example: |
| .IP |
| .in +4n |
| .EX |
| # \fBcd /sys/class/scsi_disk/4:0:0:0/device\fP |
| # \fBcat lunid\fP |
| 0x0000004000000000 |
| .EE |
| .in |
| .\" |
| .SS Supported ioctl() operations |
| For compatibility with applications written for the |
| .BR cciss (4) |
| driver, many, but |
| not all of the ioctls supported by the |
| .BR cciss (4) |
| driver are also supported by the |
| .B hpsa |
| driver. |
| The data structures used by these ioctls are described in |
| the Linux kernel source file |
| .IR include/linux/cciss_ioctl.h . |
| .TP |
| .B CCISS_DEREGDISK |
| .TQ |
| .B CCISS_REGNEWDISK |
| .TQ |
| .B CCISS_REGNEWD |
| These three ioctls all do exactly the same thing, |
| which is to cause the driver to rescan for new devices. |
| This does exactly the same thing as writing to the |
| hpsa-specific host "rescan" attribute. |
| .TP |
| .B CCISS_GETPCIINFO |
| Returns PCI domain, bus, device, and function and "board ID" (PCI subsystem ID). |
| .TP |
| .B CCISS_GETDRIVVER |
| Returns driver version in three bytes encoded as: |
| .IP |
| .in +4n |
| .EX |
| (major_version << 16) | (minor_version << 8) | |
| (subminor_version) |
| .EE |
| .in |
| .TP |
| .B CCISS_PASSTHRU |
| .TQ |
| .B CCISS_BIG_PASSTHRU |
| Allows "BMIC" and "CISS" commands to be passed through to the Smart Array. |
| These are used extensively by the HP Array Configuration Utility, |
| SNMP storage agents, and so on. |
| See |
| .I cciss_vol_status |
| at |
| .UR http://cciss.sf.net |
| .UE |
| for some examples. |
| .SH SEE ALSO |
| .BR cciss (4), |
| .BR sd (4), |
| .BR st (4), |
| .BR cciss_vol_status (8), |
| .BR hpacucli (8), |
| .BR hpacuxe (8) |
| .P |
| .UR http://cciss.sf.net |
| .UE , |
| and |
| .I Documentation/scsi/hpsa.txt |
| and |
| .I Documentation/ABI/testing/sysfs\-bus\-pci\-devices\-cciss |
| in the Linux kernel source tree |
| .\" .SH AUTHORS |
| .\" Don Brace, Steve Cameron, Tom Lawler, Mike Miller, Scott Teel |
| .\" and probably some other people. |