Because HP is now requesting money for some of their software and updates, i had to use a live Ubuntu 14.04 x64 disc in order to upgrade the firmware for HP P420 SAS Controller. I needed to try this update because on my HP ML310e Gen8 v2 servers (i have two), the controller is not initalised at cold boot. The problem is described here.
At the time of the writing the latest firmware available for HP P420 FBWC 1GB 2 ports internal SAS controller is 6.0. released in September 2014. You can get it here.
Description for firmware v6.00 on HP website:
Problems Fixed in version 6.00: This firmware release resolved the following issues: When executing kdump on systems running in Zero Memory RAID (ZMR) mode, the controller might halt. When an HP Smart Array P420 controller was attached to both an expander backplane and non-expander backplane, the controller would not properly control SmartCarrier LEDs. Chkdsk was running slowly.
Because i can’t use HP Service Pack for ProLiant (SPP) software (you now have to pay for it) i had to rely on a live Ubuntu 14.04 x64 disc.
Steps :
- Download the firmware. It should be named CP023884.scexe
- Boot your Ubuntu Live installation. I used YUMI to boot Ubuntu from a USB disk.
- Copy the firmware on a folder, for example Desktop, after you booted Ubuntu.
- Launch terminal, use sudo su to become root, then change directory to Desktop. In my case the path is /home/it/Desktop.
- Make the file executable :
root@it:/home/it/Desktop# chmod 775 CP023884.scexe
- If you try to run it it should give you an error message :
root@it:/home/it/Desktop# ./CP023884.scexe ./CP023884.scexe: 153: ./CP023884.scexe: ./CP023884.scexe: 158: ./CP023884.scexe: popd: not found pushd: not found ./hpsetup: 2: ./hpsetup: ./ccissflash: not found
- Unpack the firmware :
./CP023884.scexe --unpack=/home/it/Desktop/hp
- Go to /home/it/Desktop/hp and run ./ccissflashIt will give you an error
bash: ./ccissflash: No such file or directory
- Examining the executable you will see that is a 32 bit application :
root@it:/home/it/Desktop/hp# file ccissflash ccissflash: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.4.3, not stripped
- Install 32bit dependencies :
dpkg --add-architecture i386 apt-get update apt-get install libstdc++6:i386
After this step my screen resolution goes wild so i have to use CTRL+ALT+F1 then CTRL+ALT+F7 to get it back normally.
- Run the executable again
./ccissflash
You will get :
This program consists of two phases: device discovery and device update. No device will be updated until you answer.Do you want to run device discovery? (yes/no) yes Finding hardware. This may take a few minutes. Found 1 devices. Do you want to upgrade the device that has older ROM? (yes/no) yes 1 devices will be updated. Updating: P410i Slot: 0 from [4.68] to [6.0] Updating: P410i Slot: 0 from [4.68] to [6.0] As part of the reboot process, you must power cycle the server and any external array storage devices.
After the upgrade i shut down the server and waited 30 minutes.
SUCCESS : The controller was detected and booted from. The next day it also worked. However i think the issue is resolved in one of the previous firmware releases 5.22 or 5.42
6 comments
Skip to comment form
Thanks a lot, you saved me.
Thank you, it worked for me.
Thank you! Now if i could only find a way to get my device iin hbmode because I want to use my disk
Smart Array P410i
RAM Firmware Revision 6.64
# ssacli controller slot=0 modify hbamode=on forced
Error: This operation is not supported with the current configuration. Use the
“show” command on devices to show additional details about the
configuration.
Reason: Not supported
If using ArchLinux, then you should install lib32-gcc-libs.
When I tried to run
./hpsetup
, I gotno such file or directory: ./hpsetup
. Wtf? I am just executing this file!Then I run
ldd hpsetup
and gotnot a dynamic executable
.
But after enabling multilib repository and installing lib32-gcc-libs,
ldd hpsetup
actually returned used libraries list.And also, if you decide not to run self-packed script (./CP023884.scexe), but to run hpsetup, that you previously extracted, do not forget to
source CPINIT
first. Otherwise you will getInternal error, cannot continue. See log files for details.
thank you! this worked here as well!
thank you!