DELL PERC H710 turning into JBOD for ZFS

Published Date: 2024/06/10 by: DaVieS

DELL PERC H710 turning into JBOD for ZFS
DELL PERC H710 turning into JBOD for ZFS

So at this very begining of the day I picked up an oldie machine Dell T620 and decided to want JBOD for ZFS, better IOPS and easier management.

So it turns out that is very possible by cross-flashing the DELL PERC H710 firmware to LSI IT firmware.

Why is this so important? Because ZFS wants HBA, JBOD.

IT mode stands for "initiator target". It presents each drive individually to the host.
HBA is the term Passthru simply implies a RAID card that is not performing any RAID activity on a drive and is often also known as HBA mode. In Passthru mode drives are presented by the RAID card for discovery just as if it was an HBA, and IO to those drives bypasses most RAID functionality.

I found a very very good article how to do that at
therefore many thanks for those made this possible. 

So here is what I experienced so far with DELL PERC H710 B0 ...


Following the article before all I had to disable every virtualisation technology, such as 

[Processor Settings > Virtualization Technology]
[Integrated Devices > SR-IOV Global Enable]
[Integrated Devices > I/OAT DMA Engine]
in the BIOS and I must ensure that only one RAID component installed onto motherboard.

The article suggest to remove the battery, that I have already removed years ago.. so skipped this part.
There is .ZIP file which contains two ISO images, FreeDOS and Linux prebuilt.

Dell Perc Flashing ZIP
For who have issues to download from original site here is the mirror 2.0, mirror 2.5.

  1. I booted up FreeDOS first, typed info that showed me the card I have, and I noted down the SAS address which is requires in later steps. 

  2. My card is PERC H710 B0 Adapter so I had to execute BIGB0CRS, it cleared my card and worked out of the box. I was wondering how many cards supported so here is command for the others:
    • H710 Mini B0 - B0CROSS
    • H710 Mini D1 - D1CROSS
    • H710P Mini B0 - PB0CROSS
    • H710P Mini D1 - PD1CROSS
    • H710 B0 - BIGB0CRS
    • H710 D1 - BIGD1CRS
    • H710P B0 - BGPB0CRS
    • H710P D1 - BGPD1CRS
    • H810 B0 - 810B0CRS
    • H810 D1 - 810D1CRS

  3. Then I attached the linux .ISO file and rebooted the server by typing: reboot, and booted into linux without problem.

  4. When linux bootup completed, I entered to root user by typing sudo su, and executed B0-H710 as the article said, the article shows a very similar way from this point except of D1 variants of cards, so B0-H710 is okay for all B0 variants, and D1 variants wants to be run D1-H710 command instead. Everything went fine so issued reboot command again with staying at linux iso attached.

  5. The first boot after flashing is tricky, the article said it might follows a kernel panic, but for me the controller was missed instead, so reboot again.

  6. The scond boot was okay, and I able to successfully run command info to ensure that I have a controller, so I issued setsas [SAS_ADDRESS] what I noted down before! I nearly forgot that step on the begining!! But the article says it should not be a big problem If i lost , but.... 

  7.  Since I want bootdrives operating, I flashed two BIOS OPROM to the new firmware, by issuing:
    1. flashboot /root/Bootloaders/mptsas2.rom (BIOS)
    2. flashboot /root/Bootloaders/x64sas2.rom (UEFI)

  8. reboot And it worked, but here is some issues:


  • For some reason the Linux could not boot up with ZFS root due MPTSAS2 driver slow, fortunately it can be fixed with the following: adding ZFS_INITRD_POST_MODPROBE_SLEEP='10' or ZFS_AUTOIMPORT_TIMEOUT='10' to /etc/default/zfs will fix the issue when initrd updated by update-initramfs -k all -u command.


The firmwares can be restored by issuing command from FreeDOS:

  • H710 Mini B0 - B0REVERT
  • H710 Mini D1 - D1REVERT
  • H710P Mini B0 - PB0REVRT
  • H710P Mini D1 - PD1REVRT
  • H710 B0 - BIGB0RVT
  • H710 D1 - BIGD1RVT
  • H710P B0 - BGPB0RVT
  • H710P D1 - BGPD1RVT
  • H810 B0 - 810B0RVT
  • H810 D1 - 810D1RVT



If you like the article then don't forget to share!

Is Rust better than C/C++ ?

Rust is relatively new programming language which offers full memory management and garbage collection, while C/C++ already has a decent history..

Network Update

Proudly announcing that in the past days we expanded our infrastructure and our services will become more stable and quickier at us west, us..

Windows 10/11 Disable Search and annoyings on start menu

The one of the most irritative feature on windows is a "new" start menu which sends every input into Microsoft related services. Also if you have..

BVCP 2.0.x Released

Our one of the most popular FREE-TO-USE Software BVCP reached the next milestone.Big thanks to the active community, a ton of feedbacks received..

Welcome 2024

We have been busy at 2023. Im personally very happy to see a lot of new technologies especially EV related researches.We continued to support our..

FreeBSD 14 fresh install breaks mc (Midnight Commander) subshell support

We are very happy to announce that - if you did not know already - one of the best Operating System released a new version. FreeBSD 14. This..

ZFS Replication Software

  While we are working on BVCP 2.0 just another software made to handle ZFS Replications over multiple nodes. The software yet not released..

Bhyve UEFI drops into EFI shell, Linux wont boot Easy Workaround

  EFI works that way that the installer places a file into a FAT32 partition in a regular directory as called "BOOT". The usual full path of..

Nexus Datalogger 2023

We're proudly present that we released out our next version of datalogger software as commerical product. Our first version of Datalogger..

All rights reserved 2009 - 2024
Powered by: MVCP2 / BVCP / ASPF-MILTER / PHP 8.3 / NGINX / FreeBSD