Smart Link Hard Disk Controller Driver Download



Here you will find source RPMs and source tarballs for the cciss driver for HP's Smart Array line of hardware RAID controllers. Most likely, you do not need these, as the cciss driver has been in the Linux kernel for a very long time, and most distributions will already have a cciss driver which will work for you as is.

  1. Smart Link Hard Disk Controller Driver Downloads
  2. Smart Link Hard Disk Controller Driver Download
  3. Smart Link Hard Disk Controller Driver Download 64-bit
  4. Smart Link Hard Disk Controller Driver Download Windows 7
  5. Smart Link Hard Disk Controller Driver Download Windows 10

From time to time there may be instances in which hardware ordriver features are not supported by the cciss driver which comeswith your distribution or kernel, because it is too old, or thehardware is too new, etc. In these instances you may wish to trythe source RPMs or tarballs provided here.

If you are looking for binary RPMs or driver disketteimages

We do not supply any binary RPMs from this page. HPE doessupply binary RPMs and driver diskettes (for loadingdrivers during OS installation) for supported Linux distributionson hpe.com.See these search results from hpe.com.You can use these if you have a supported distribution running a supported kernel.

Explains that a SMART hard disk error, if it occurs, indicates a possible problem with the hard disk, and recommends backing up all data and running hard disk diagnostics. LG Software, Firmware, & Drivers Download: Optimize your LG devices by downloading the latest drivers and firmware updates. Keep your LG products up-to-date. Download the Smart Component to a directory on your hard drive and change to that directory. The downloaded file is a self-extracting executable with a filename based on the Smart Component Number. From that drive and directory, execute the downloaded file.

News

5/29/2018
***** Microchip Technology Announces Completion of Microsemi Acquisition *****

Disk

1/15/2016
***** Microsemi Corporation Completes Acquisition of PMC-Sierra, Inc. *****

9/4/2014
***** PMC Licenses HP Smart Array Intellectual Property to Accelerate Growth in Server Storage Solutions *****

The cciss driver has been removed from RHEL7 and SLES12. If you really want cciss on RHEL7 checkout the elrepo directory.

A new Smart Array driver called 'hpsa' has been accepted into the main line linuxkernel as of Dec 18, 2009, in linux-2.6.33-rc1. This new driver will support newSmart Array products going forward, and the cciss driver will eventually be deprecated.Initially, there was some overlap in the boards which these two drivers support.

The current list of supportedcontrollers for hpsa:

    Gen6/7 Controllers
  • Smart Array P212
  • Smart Array P410
  • Smart Array P410i
  • Smart Array P411
  • Smart Array P812
  • Smart Array P712m
  • Smart Array P711m
    Gen8 Controllers
  • Smart Array P222
  • Smart Array P420
  • Smart Array P420i
  • Smart Array P421
  • Smart Array P822
  • Smart Array P220i
  • Smart Array P721
    Gen8.5 Controllers
  • Smart Array P430
  • Smart Array P430i
  • Smart Array P431
  • Smart Array P830
  • Smart Array P830i
  • Smart Array P831
  • Smart Array P731m
  • Smart Array P230i
  • Smart Array P530
  • Smart Array P531
    Gen9 Controllers
  • Smart Array P440
  • Smart Array P441
  • Smart Array P840
  • Smart Array P440ar
  • Smart Array P244br
  • Smart HBA H240
  • Smart HBA H241
  • Smart HBA H240ar
  • Smart HBA H244br
    Storage Appliance Controllers
  • HP StorageWorks 1210m
  • HP Storage P1224 Array Controller
  • HP Storage P1228 Array Controller
  • HP Storage P1228m Array Controller
  • HP Storage P1224e Array Controller
  • HP Storage P1228e Array Controller
  • HP Storage P1228em Array Controller

Some development versions (2.6.33-rc1 up to 2.6.36-ish) ofthe linux kernel (as of Jan 8, 2009) on kernel.org have ccissand hpsa drivers which currently both support some Smart Arraycontrollers. That is, there are some kernels which have overlappingsets of controllers supported by both hpsa and cciss. The intentwith newer kernels (2.6.36-ish) is to remove this overlap so thesets of controllers supported by hpsa and cciss are disjoint.

The current list of controllers that are supported by cciss only:

  • 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 6422
  • Smart Array 6i
  • Smart Array E200
  • Smart Array E200i
  • Smart Array E500
  • Smart Array P600
  • Smart Array P400
  • Smart Array P400i
  • Smart Array P700m
  • Smart Array P800

The following list of controllers are supported by cciss on distributions based on kernels before 2.6.33:

  • Smart Array P212
  • Smart Array P410
  • Smart Array P410i
  • Smart Array P411
  • Smart Array P812
  • Smart Array P712m
  • Smart Array P711m
  • Smart Array P222
  • Smart Array P420
  • Smart Array P420i
  • Smart Array P421
  • Smart Array P822
  • Smart Array P220i
  • Smart Array P721
  • Smart Array P430
  • Smart Array P430i
  • Smart Array P431
  • Smart Array P830
  • Smart Array P830i
  • Smart Array P831
  • Smart Array P731m
  • Smart Array P230i

In the case of kernels with cciss and hpsa drivers which dohave overlapping sets of supported controllers, by default,cciss will claim these devices if it is loaded priorto hpsa (which it normally will be). If you're already running ccisson these devices, and upgrade to a kernel containing the hpsa driver,you shouldn't have to do anything, as cciss will continue to claimthese devices. If you would like to run hpsa instead, there is a newmodule parameter to cciss, 'cciss.cciss_allow_hpsa=1', which will causethe cciss driver to ignore the controllers on the above list, which willpermit the hpsa driver to claim those devices. NOTE: The hpsa driveris a SCSI driver, while the cciss driver is a block driver. This meansthat logical drives which would be presented with devices nodes like'/dev/cciss/c0d0', etc. will now be presented as '/dev/sda', etc.

Smart Link Hard Disk Controller Driver Download

This means that if you are currently using cciss with the above controllersand decide to switch to hpsa, you've got to adjust your /etc/fstab, grubconfiguration files, etc. to make this work. For a new install of a distribution using the hpsa driver, the 'cciss.cciss_allow_any=1' bootparameter should allow hpsa to be used easily. If you've been usingcciss already on these controllers, it is not recommended that you attempt to upgrade your running system to switch from cciss to hpsa unlessyou have a very good reason to do so and know what you are doing. This issimply because making the switch is somewhat complex and it is easy tomake a mistake or forget something and get your system into an unbootablestate. With all the various distributions, it is difficult to come up witha set of bulletproof universal instructions for making such a switch, sowe recommend that you simply continue to use cciss in such instances.

Hpsa should be fine for new installs on these controllers, however.

The cciss driver previously contained a feature which would enableit by default to run on Smart Array controllers which it did not explicitly recognizeexcept so far as to be able to determine that they were some sort ofSmart Array. This feature has been removed, as any Smart Arrays not knownto cciss are now presumed to be claimed by the hpsa driver. The hpsa driver has theability to claim unknown Smart Arrays, however this is turned off by defaultso that it does not try to claim older controllers meant to be claimed bythe cciss driver. To enable this feature of hpsa, the module parameterhpsa.hpsa_allow_any=1 can be used.

The usual HP utilities, ACU, the SNMP storage agents, and cciss_vol_statusshould also work with hpsa. There may be other software designed to work withcciss (e.g. Arrayprobe) which may need modifications to work with the hpsadriver.

The hpsa driver is available in the kernel.org kernels, and in RHEL6by default, and in SLES11 (but not by default).

Source RPMs:

You may try to use these to build a binary RPM.

To install, download the RPM file, and use

This will deposit the cciss.spec file in /usr/src/redhat/SPECS,for instance on Redhat's distribution. (Your distribution may differ.)Change to this directory, and execute:

This will create the binary RPM in, for instance,/usr/src/redhat/RPMS/`arch` directory. (Your distributionmay differ.)This binary RPM may then be installed in the usual way, forinstance:

Note: The binary RPMs produced by the source RPMs here are a greatly simplified version of the binary RPMs distributed by HP. The binary RPMs distributed by HP do many things likemodifying grub configuration files or lilo.conf as needed, modifying /etc/modules.conf, etc. The binary RPMs created by thesource RPMs here do not do these things, they only build thedriver module and initrd image. It is up to you to make any changes to your grub or lilo configuration files and/etc/modules.conf (or modprobe.conf) files as needed.

Oct 4, 2007: Note: There has been a report that sometimes the OS supplied/sbin/mkinitrd script used by the RPM will get the wrong cciss.*.ko file out of /lib/modules/`uname -r`/kernel/drivers/blockand put it in the initrd image. So far, I haven't had anyluck duplicating this problem.

Source DEBs:

Debian source package copies cciss files to /var/hp/storage/cciss directory and builds cciss module against installed kernel's source. It is required to have kernel source code available at /usr/src/linux-x.x.xx. If necessary, deb package will compile kernel as well.

To install, download Debian cciss source package (.deb file) and issue following command

This will copy cciss source files to /var/hp/storage/cciss directory and build cciss module binary against installed kernel. Newly built cciss driverwill be placed under /var/hp/storage/cciss, if build is successful.

Note: Debian package is greatly simplified. It neither modifies bootloader (grub or lilo.conf) configuration files, nor modify /etc/modules.conf, nor build initrd. Debian package only builds binary cciss module. It is up to the user to make any changes to bootloader configuration files, /etc/modules.conf (or modprobe.conf) files and initrd as needed.

Source tarballs:

NOTICE: the source tarballs do not create a singleparent directory, so it is up to you do so yourself.

To build the source tarballs:

Smart Link Hard Disk Controller Driver Download
  1. Create a directory and unpack the tarball.The source tarballs are copies of what is used by the source RPMs. In fact, you could extract the source tarballs from the sourceRPMs by using rpm2cpio.
  2. Read the README file for informationabout how the tarball is used in the source RPM.
  3. ReadMAKEFILE1 for further instructions on building the driverfrom the tarball without any involvement of RPMs.

    1Yes, I know MAKEFILE is traditionally one of the names of files that the make command usually reads. In this case, it is just a text file, documentation, meant forhuman consumption.

Downloads
HPSA 3.X tarballs
Last updated June 15, 2020, latest version is 3.4.20-196
CCISS 4.6 tarballs
CCISS 4.6 source rpms
CCISS 4.6 source deb
Last updated March 4, 2013 latest version is 4.6.28-22 These are meant for 2.6.26 or later kernels (typically, SUSE SLES11, etc.)
CCISS 3.6 source RPMs
CCISS 3.6 source tarballs
CCISS 3.6 kdump source RPMs
CCISS 3.6 kdump source tarballs
Use these for systems using 2.6 kernels later than about 2.6.15. From 2.6.11 to 2.6.15 is kind of a gray area during which some kernel interfaces the driver relies upon were in flux.
Last updated March 4, 2013 latest version is 3.6.28-22

Changes since 3.6.28-6:

  • Updates for kdump support

Changes since 3.6.20-20:

  • TBD.

Changes since 3.6.20-16:

  • TBD.

Changes since 3.6.18-17:

  • Fixed bug where deleting logical volumes could hang the system.
  • Fixed a memory leak in rebuild_lun_table code.
  • Fixed a panic that could arise during an insmod and rmmod of the cciss driver.
  • Fix procfs regression. This patch will get called only once for eachcontroller. The earlier fix would be called anytime something changed.
  • Fixed wrong usage of a pointer for sysfs symlink.
  • Fix firmware version not being printed in procfs.
  • Fixed sysfs link issue.
  • Added check_unit_attention() to catch UA's on MSA2000. The functionprints a message then retries the command that returned with a unitattention.
  • Fixed a bug found by the L1 test suite. The system would panic when deleting many logical volumes at one time.
  • Removed unneeded lock in sysfs code.
  • Updated rebuild_lun_table to avoid pulling a logical volume out from underacuxe or hpacucli.
  • Cleaned up code for adding and removing logicalvolumes.
  • Mkinitrd has changed on rhel5u1 and higher systems. It can no longer findthe rhel5 base media cciss driver following an uninstalled of an HP cciss rpm.Without this fix the system will panic on reboot when the HP cciss rpm has beenuninstalled.
  • Fixed race condition that could show up during driver init.
  • Fixed 'out of memory' error introduced in the 2.6.20-4 aand 3.6.20-4drivers
  • Added 1024 lun support.OS distros with warnings.
  • Added a procfs interface so users can tell the driver to rescan ourdevices. Needed for MSA2012 support since MSA2012 does not reportconfiguration changes back to the driver.
  • Added dynamic outstanding command turning on a per controller basis.
CCISS 2.6 source RPMs
CCISS 2.6 source tarballs
Use these for 2.6 kernel up to about 2.6.11. RHEL 4.x and SLES 9.x are examples of systems based upon such kernels.From kernels 2.6.11 to 2.6.15 is kind of a gray area during which some kernel interfaces the driver relies upon were in flux.
Last updated Tue Oct 16, 2009latest version is 2.6.20-23

Changes since 2.6.20-16

  • TBD.

Changes since 2.6.18-16

  • Fixed bug where deleting logical volumes could hang the system.
  • Fixed issue where ACU would hang after several operations.
  • Fixed a panic that could arise during an insmod and rmmod of the ccissdriver.
  • Changed kzalloc back to kmalloc + memset to continue support for olderOS version.
  • Fix procfs regression. This patch will get called only once for eachcontroller. The earlier fix would be called anytime something changed.
  • Fixed wrong usage of a pointer for sysfs symlink.
  • Fix firmware version not being printed in procfs.
  • Fixed issue where controllers that had no configured volumes did notshow up in the OS.
  • Fixed sysfs link issue.
  • Added check_unit_attention() to catch UA's on MSA2000. The functionprints a message then retries the command that returned with a unitattention.
  • Updated rebuild_lun_table to avoid pulling a logical volume out fromunder acuxe or hpacucli.
  • Cleaned up code for adding and removing logical volumes.
  • Fixed race condition that could show up during driver init.
  • Fixed 'out of memory' error introduced in the 2.6.20-4 aand 3.6.20-4drivers
  • Added 1024 lun support.
  • Added dynamic outstanding command turning on a per controller basis.
CCISS 2.4 source RPMs
CCISS_2.4 source tarballs
Use these for 2.4 based kernels, such as RHEL 3.x, SLES 8 or (SuSE) United Linux 1.0. These won't work with very old kernels such as the 2.4.7 series used by SLES 7.0, etc.

BTW, if you happen across a 2.6.12 version of the cciss driver, or patches to bring the driver up to 2.6.12, don't use them as thisversion will hang. (You'll find out soon enough if you do try to use it.) There are newer versions. Use those instead.

Hardware/Firmware Documentation

CCISS Utilities

  • cciss_vol_statusJune 16, 2020: New release: v1.12a.-- a very lightweight program to report the status of logical drives on SmartArray controllers and also fibre channel attached MSA1000.Should work on most any linux and FreeBSD (no MSA1000 support forFreeBSD though. Martin Matuska added cciss_vol_status to the FreeBSD ports tree here.Here's what it would take to get MSA1000 support on FreeBSDFeel free to send in a patch.)

    Here's the man page.. This program islicensed under the Gnu GPL v. 2.

  • Arrayprobe (offsite)makes a report of events recorded by Smartarray contollers.Here's a samplereport from arrayprobe 2.0.
  • Cpqarrayd:(offsite) 'Cpqarrayd is a daemon to monitor HP (compaq) arraycontrollers. It reports anystatus changes, like failing disks, to the syslog and optionally to a remotehost using SNMP traps.' This program works by monitoring events from Smartarraycontrollers, originally written for first generation Compaq array controllers,(those which use the cpqarray driver) but extended to also work with 2nd generation controllers (those which use the cciss driver.) Logs tosyslog, and optionally, sends SNMP traps. You can think of this as a daemonized version of arrayprobe, in that both of them detect failuresin the same way (by looking at 'events' reported by the controller, cpqarraydin real time, arrayprobe after the fact.)
  • smartmontools -- described on the smartmontoolswebsite as 'two utility programs (smartctland smartd) to control and monitor storage systems using the Self-Monitoring,Analysis and Reporting Technology System (SMART) built into most modern ATA andSCSI hard disks.'
  • array-infoI just found this one, Fri Jun 1 22:29:47 PDT 2007. I can't comment on this much as I haven't tried it, but from my so far very brief perusing of the code it appears to be alright at first glance, basically doingthe expected things. (Interestingly, it predates cciss_vol_status, so the authors are to be congratulated for figuring out how to do it despite extremely sketchy to non-existent documentation.)Later, after checking this one out a bit more, I'll edit this to reflectwhat I find.

Supported Hardware

  • 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 6422
  • Smart Array 6i
  • Smart Array E200
  • Smart Array E200i
  • Smart Array E500
  • Smart Array P600
  • Smart Array P400
  • Smart Array P800
  • Smart Array P700m
  • Smart Array P400i
  • Smart Array P212
  • Smart Array P410
  • Smart Array P410i
  • Smart Array P411
  • Smart Array P812
  • Smart Array P712m
  • Smart Array P711m
  • MSA 500 G2
  • MSA 20
  • Smart Array P222
  • Smart Array P420
  • Smart Array P421
  • Smart Array P822
  • Smart Array P420i
  • Smart Array P220i
  • Smart Array P721
  • Smart Array P430i
  • Smart Array P830i
  • Smart Array P430
  • Smart Array P431
  • Smart Array P830
  • Smart Array P831
  • Smart Array P731m
  • Smart Array P230i
  • Smart Array P531
  • Smart Array P530
  • Smart Array P440
  • Smart Array P441
  • Smart Array P840
  • Smart Array P440ar
  • Smart Array P244br
  • Smart HBA H240
  • Smart HBA H241
  • Smart HBA H240ar
  • Smart HBA H244br
  • HP StorageWorks 1210m
  • HP Storage P1224 Array Controller
  • HP Storage P1228 Array Controller
  • HP Storage P1228m Array Controller
  • HP Storage P1224e Array Controller
  • HP Storage P1228e Array Controller
  • HP Storage P1228em Array Controller