Flash Dell PERC H200 using the Dell 6Gbps SAS HBA Non-RAID Firmware

In this tutorial I am going to show how to flash a Dell PERC H200 RAID controller to a Dell 6Gbps SAS HBA Non-RAID Controller.

In my case, I have a Dell PowerEdge R710 server that I want to use with Proxmox and ZFS. ZFS needs to have individual access to each disk in order to create a RAID. The PERC H200 controller does not allow that, and therefore it needs to be flashed to a Non-RAID controler.

Download FreeDOS from:

http://www.freedos.org/

You need FreeDOS to boot the server and run the SAS2FLSH utility.

Download the Dell 6Gbps SAS HBA Firmware from:

http://www.dell.com/support/home/us/en/19/drivers/driversdetails?driverId=K161K

The files you need are:

  • the SASHBA_Firmware_6GBPS-SAS-HBA_07.03.06.00_A11_ZPE.exe in HARD-DRIVE format
  • SASHBA_Firmware_6GBPS-SAS-HBA_RELNOTES_07.03.06.00_A11.txt release notes

Run the .exe file. You will get a folder that contains 9 files.

Rename the folders to something short, like DELL and FW maybe. The FW folder should be inside the DELL folder.

Use Rufus to create a bootable FreeDOS USB drive. Upload the Dell folder on the FreeDOS USB drive.

Boot the server using FreeDOS. After bootup is complete, run the following commands:

C:\>cls
C:\>dir

cls will clear the screen. dir will list the current directory. Your screen should look somewhat like this (I have other folders present that you do not):

You should see your DELL folder in the root directory. To navigate in FreeDOS you use the cd command just like in Linux. Move into the DELL\FW folder and list the directory:

C:\>cd dell
C:\DELL\FW\>dir

You should see something similar to this:

The directory listing should include the 9 files listed above. Do not worry if your listing doesn’t look exactly like mine.

The utility you are going to use is called SAS2FLSH.

It is a good idea to read the LSI SAS2Flash Reference Guide to have an understanding of what you are doing.

Before flashing the controller, create a backup of the BIOS, firmware and NVDATA using the following commands:

sas2flsh2 -ubios bios.rom
sas2flsh -ufirmware firmware.fw
sas2flash -o -ufwbackup firmbk.fw
sas2flsh -o -uflash flash.rom
sas2flash -o -unvdata nvdata.img

In case you do something wrong, you can use the backup files to restore the controller.