Menü Schließen

Flash Dell Perc H310 mit LSI 9211-8i IT Mode

Dell Logo

In diesem Artikel beschreibe ich wie der Host-Bus-Adapter (HBA) Dell Perc H310, auf die IT Firmware geflasht werden kann.

Der H310 ist Baugleich mit dem IBM M1015 bzw. IBM M1115 oder gar dem Dell Perc H320. Es gibt technisch keine Unterschiede, da auf allen der LSI 9211-8i Chip werkelt. Nur die Form und Ausrichtung der Anschlüsse für die 2xSAS Ports variiert. Ich habe den Perc H310 gewählt, weil er anders als die Raidkarten von IBM die Anschlüsse, wie der Original LSI 9211-8i, nach hinten raus und nicht vorne am Blech nach oben raus, hat.

Eigenschaften H310

  • unterstützte Raid  Modes: 0, 1, 5, 10, 50
  • Interface: PCIe 2.0 x8
  • Anschlüsse: 2x SFF-8087 mini SAS
  • Chipsatz: LSI 2008 mit 6, 3, 1,5 Gb/s Transferrate
  • CPU mit 533MHz und Powermanagement, T-10 Data Protection, PCie Hotplug, bis zu 3.000 verbundene Devices
  • Leistung bis zu 290.000 IOPS

IR Firmware versus IT Firmware

Wenn der HBA ausgeliefert wird, dann ist meistens die IR Firmware oder eine integrierte Raid Firmware installiert. Diese erlaubt den Einsatz des Raidcontrollers mit seinen Modies wie Raid0, Raid1, Raid5, Raid6, Raid10 oder z.B. Raid50.

Anders funktioniert die IT-Firmware (Initiator Target). Sie fungiert als reiner Controller im Passthrough Mode. Es ist kein extra Raidlayer vorhanden. LSI bezeichnet diese Firmware wie folgt: “IT firmware maximiert die Verbindungsfähigkeit und Performance Aspekte eines HBAs”. Und genau das ist der Grund warum diese Karten im IT-Mode geflasht werden. Es soll MDADM, ZFS oder andere Arten von Softwareraid verwendet werden. Die Steuerung des Raids übernimmt somit die Software des Betriebssystems und nicht die der Karte.

Was wird benötigt um die Dell Perc H310 mit der IT-Firmware zu flashen:

  • H310 Karte
  • Window oder Linux Betriebsystem mit einem PCIe x8 oder x16 Slot
  • bootbarer USB-Stick
  • ca. 30 Minuten Zeit

USB Stick mit dem Tool Rufus erstellen

Rufus USB Dos erstellen
Rufus USB Dos erstellen

Wie in dem Screen zu sehen, wird mittels Rufus (Link zur Webseite) ein bootbarer USB Stick mit einer Dos-Umgebung erstellt. Danach werden die benötigten Dateien wie Firmware, Bios, und Flashtools kopiert: h310-flash-lsi9211-p19-itmode.zip folgende Datei entpacken und in ein Verzeichnis auf den USB-Stick kopieren:

Wer ein UEFI Mainboard nutzt muss oben in der zip ggf. die Datei bootx64.efi (Precompiled x86_64 UEFI Shell v1 Binary) hinzufügen. Download über: http://www.mediafire.com/download/lxjy0vem4x668f6/bootx64.efi

Flash Perc H310 zu 9211-8i IT Firmware mit P19

Nachfolgende Schritte beziehen sich auf ein Mainboard ohne UEFI, sodass hier ausschließlich über DOS gearbeitet wird.

Dell Perc H310
Dell Perc H310

1. Adapter Informationen abspeichern, inklusive der SAS-Adresse -> 1.bat ausführen

MegaCli.exe -AdpAllInfo -aAll -ApplogFile h310info.txt

2. aktuelle Controller SBR abspeichern -> 2.bat ausführen

MegaRec.exe -readsbr 0 original.sbr

2.1. Controller SBR löschen -> 3.bat ausführen

MegaRec -writesbr 0 empty.bin

3. Controller BIOS löschen -> wird in 3.bat auch ausgeführt

MegaRec -cleanflash 0

4. Rechner neustarten, Bios der Karte wird nicht angezeigt

– guter Zeitpunkt die SAS-Adresse von 1. auszulesen und in5_LSI_P16\6.bat einzutragen (Step8)

5. original Dell IT-Firmware installieren 5_DELL_IT\5IT.bat ausführen

sas2flsh.exe -l Flashlog.txt -o -f 6gbpsas.fw

5.1 falls das Bios auch neu installiert werden muss, 5IT.bat so anpassen

sas2flsh.exe -l Flashlog.txt -o -f 6gbpsas.fw -b MPTSAS2.ROM

6. LSI P7 IT-Firmware installieren 5_LSI_p7\5IT.bat ausführen

sas2flsh.exe -l Flashlog.txt -o -f 2118it.bin

6.1 falls das Bios auch neu installiert werden soll, 5IT.bat so anpassen

sas2flsh.exe -l Flashlog.txt -o -f 2118it.bin -b MPTSAS2.ROM

7. LSI P19 IT-Firmware installieren 5_LSI_P19\5IT.bat ausführen

sas2flsh.exe -l Flashlog.txt -o -f 2118it.bin

7.1 falls das Bios auch neu installiert werden soll, 5IT.bat ausführen

sas2flsh.exe -l Flashlog.txt -o -f 2118it.bin -b MPTSAS2.ROM

8. die SAS-Adresse setzen, 5_LSI_P16\6.bat oder dies ausführen

sas2flsh -o -sasadd DeineAdresse z.B. (500605b001f31fa0)

9. Fertig – System neustarten und freuen

So hat es bei meiner Perc H310 funktioniert, wobei die Schritte und Dateien von Fireball3 stammen und ich dies hier ins Deutsche übersetzt habe.

Flash Perc H310 zu 9211-8i IT Firmware UEFI

Wenn du bei obigen Schritten auf diesen Fehler stößt: "ERROR: Failed to initialize PAL. Exiting program.", dann sind nachfolgend Schritte für das flashen mit einem UEFI Mainboard durchzuführen:

  • folgendes im DOS eingaben:
    •  SAS Adresse schreiben
      • megacli.exe -AdpAllInfo -aAll -page 20
    • wenn nachfolgender Schritt fehlschlägt, dann auslassen:
      • megarec.exe -writesbr 0 sbrempty.bin
    • und diesen Befehl ausführen:
      • megarec.exe -cleanflash 0
  • Neustarten und die UEFI Shell im BIOS aufrufen
    • in der UEFI Shell nun folgendes eingeben:
      • sas2flash.efi -o -f 6GBPSAS.FW
      • sas2flash.efi -o -f 2118it.bin
      • oder: sas2flash.efi -o -f 2118p7.bin,
    • nun Reboot / Neustarten und dies in der UEFI Shell eingeben:
      • sas2flash_p19.efi -o -f 2118it.bin
    • abschließend noch die SAS Adresse schreiben:
    • sas2flash_p19.efi -o -sasadd 500xxxxxxxxxxxxx

Anmerkung: Auch wenn die Firmware P20 verfügbar ist, so wird häufig von Problemen mit der Stabilität (NCQ Problem, Data Corruption) und Performance berichtet. Daher ist die Empfehlung P19 einzusetzen. Selbst der Support von LSI hat mir am Tel. dies bestätigt.

Update: Inzwischen wurde die LSI Version 20.00.04.00 (Mai 2015) veröffentlicht.
Update: Vereinzelt wurden Performanceprobleme mit dem 20.00.04.00 berichtet.

43 Kommentare

  1. Pingback:Flash ‘Dell H310’ to IT-Mode – nielshebling.de

  2. Udo Hartmann

    Prima Anleitung, vielen Dank dafür.

    noch ein paar Anmerkungen: Im Archiv fehlen die UEFI Dateien. Die bekommt man ja recht leicht im Netz, aber es ist essentiell, den Schritt zum Wechsel von IR nach IT mit einem alten Tool auszuführen (sas2flash.efi in der Version 5.00).
    Aktuelle Versionen verweigern einfach das Flashen mit dem Hinweis auf die Inkompatibilität, die alte Version bietet an, die Firmware dennoch zu schreiben (mit Bestätigung)
    Die UEFI Shell hat nur englische Tastaturbelegung, was ja nicht tragisch ist, es sei denn, man ist ein Vollpfosten (so wie ich) und tippt immer das y zum Bestätigen, bekommt aber nicht mit, dass man stattdessen ein z eingegeben hat…
    Das ist ein großer Stolperstein, weil im Gegensatz zu allen anderen Stellen hier nicht direkt erkennbar ist, dass man das falsche Zeichen eingegeben hat.
    Auch die Fehlermeldung (Firmware validation failed) ist hier mehr als hinderlich, wo es doch korrekterweise cancelled by user heißen müsste…

    Die P20 gibt es in der Zwischenzeit als Version 20.00.07.00 (7 statt 4). Diese soll nicht mehr fehlerhaft sein (ich habe noch keine Platten am Controller… konnte das also nicht verifizieren)

  3. Pingback:Virtual Machine with direct Storage Access | the broadcast

  4. Pingback:Flash ‘Dell H310’ to IT-Mode – gigabit.fi

  5. Jan

    Danke für die Superanleitung.

    eine Frage habe ich zu den ganzen Schritten.
    Wenn man einen Dell Perc H310 Controller hat kann man sich die Schritte sparen?

    6. LSI P7 IT-Firmware installieren 5_LSI_p7\5IT.bat ausführen

    – sas2flsh.exe -l Flashlog.txt -o -f 2118it.bin

    6.1 falls das Bios auch neu installiert werden soll, 5IT.bat so anpassen

    – sas2flsh.exe -l Flashlog.txt -o -f 2118it.bin -b MPTSAS2.ROM

    7. LSI P19 IT-Firmware installieren 5_LSI_P19\5IT.bat ausführen

    – sas2flsh.exe -l Flashlog.txt -o -f 2118it.bin

    7.1 falls das Bios auch neu installiert werden soll, 5IT.bat ausführen

    – sas2flsh.exe -l Flashlog.txt -o -f 2118it.bin -b MPTSAS2.ROM

    Danke sehr.

    • JARVIS

      Hi Jan,
      so wie es auf der Seite steht, habe ich 2 Karten in den IT-Mode versetzt. Andere auch, ob du die Schritte weglassen kannst, kann ich dir ohne Tests nicht sagen und ich habe keine Karte zum testen frei.

  6. Giesbert

    Hallo Jarvis,

    am Ende ist alles Gut! Obwohl die Fehlermeldung blieb…ich weder die SAS S/N aufschrieb oder nach dem Flash irgendwo eingab…habe ich heute Mittag das Ganze einfach durchgezogen. Dann die Backplane in den Rackserver reingesetzt…angeschlossen und in XigmaNAS die Festplatten importiert. Und siehe da….alle wurden KORREKT angezeigt.

    Manchmal gibt es Dinge zwischen “Himmel und Erde” die versteht man nicht….LOL

    Dir vielen Dank für Deine Tipps und Empathie!
    Giesbert

    • JARVIS

      Hi Giesbert,
      super das es nun doch geklappt hat. Das freut mich wirklich. Ich habe 3TB HDDs angeschlossen, wie groß sind deine? Ich frage, weil ich ggf. 6TB anschließen will, aber noch nicht nachgelesen hatte, ob die unterstützt werden.

        • JARVIS

          Hi, ich habe den Controller in einem Server mit 14HDDs und verwende XFS. ZFS war mir zu “kostspielig” was die Notwendigkeit von ausreichend RAM und der zusätzlichen Integration von SSD für den Cache angeht.

  7. Giesbert

    ich war sogar etwas weiter gekommen…habe FreeDos 1.2 herunter geladen…und die Full installiert. Vom Stickt gebootet hatte ich nur noch die Fehlermeldung, dass die Maus Probleme macht. Den Fehler habe ich nicht weg bekommen. Eine Installation auf einer HD vom gebooteten Stick klappte nicht.

    Jetzt versuche ich es gerade mit der Liste und den “älteren Bios” in Rufus.

    Wenn das nicht klappt erstelle ich morgen eine CD…und gehe nach der “alten” Methode vor…

    Gebe nicht auf…!

  8. Giesbert

    @Jarvis,

    noch einmal lieben Dank für Deine Antwort. Ich habe einmal nachgesehen, was die Fehlermeldung “DOS/32A warning (9001)” bezüglich des erweiterten Speichers (Free/Dos-Bootstick) besagt:
    DOS/32 Advanced could not allocate any extended memory. Note that when an external DPMI host and a VCPI server are present at the same time, and DOS/32 Advanced is configured to detect VCPI first, no extended memory can be available due to the fact that the DPMI host might have already allocated it all. Another possibility is that a DOS/32 Advanced application was spawned from a software incompatible with DOS/32 Advanced in the matter of extended memory allocation. Finally, DOS/32 Advanced might have been configured to not allocate any extended memory at all. Reconfigure DOS/32 Advanced. Make sure that the software, from which the application was spawned is DOS/32 Advanced compatible. Replace memory manager.
    DOS/32 kann also keinen Erweiterungsspeicher zuordnen. So weit – so “gut”. Was bedeutet “DOS/32 Advanced compatible” und “ersetzen Sie den Speichermanager”?

    Dann folgt ja die Warnung “DOS/32A fatal”:
    There is not enough extended (High) memory to load your application. Rebuild your program so that it occupies less memory, free some of extended memory or reconfigure DOS/32 Advanced.
    Wie sollte ich ein Programm neu erstellen, dass weniger Speicher in Anspruch nimmt? Oder welchen frei geben?

    Ich glaube, das ist das einzige Problem mit dem “Memory”. Denn sonst wird alles gemacht. Und die LED der Karte blinkt nach einigen Schritten auch wieder. Einzig die dumme SAS NO kann ich wegen dem Fehler nicht auslesen:-(

    • JARVIS

      Das mit dem zu geringem Speicher ist aus DOS-Zeiten, passt also zum dem flashen mit dem DOS-Tools. Früher wurde das in der config.sys konfiguriert, wobei die himem.sys existieren muss. Das wundert mich aber, da ja alles mit den Tools von hier funktinoieren sollte. Eben mal in die aktuelle Version geschaut, dort gibt es unter Erweitert eine Option für ältere BIOS Versionen, probier das mal. Ansonsten ein anderes Tool suchen und ausprobieren.

  9. Giesbert

    Hallo,
    Danke erstmal für das Tutorial!!

    Frage: beim Versuch die SAS Adresse auszulesen, bekomme ich ständig die Fehlermeldung:
    Not enough extendend Memory to load Application exec c:\h310\“megacli.exe“

    Ich hatte trotzdem die steps erfolgreich weitergeführt und dann fehlte mir die Adresse:-(
    Immer wieder kommt diese Meldung!
    Was könnte ich tun?
    Hoffentlich klappt es mit dem flashen…blinken tut der Controller derzeit nicht…

    Danke für die Antwort

    • JARVIS

      Hi Giesbert,
      ich selber hatte den Fehler nicht. Im Netz konnte ich diese Fehler finden:
      DOS/32A waring (9004): mouse initialization failed
      DOS/32A waring (9001): no extended memory has been allocated
      DOS/32A fatal (4003): not enough extended memory to load application exec “C:\MEGACLI.EXE”
      Die Lösung war http://www.freedos.org/ zu verwenden, ansonsten soll Rufus mit erstelltem DOS Medium helfen. Ist dir hier evtl. ein Fehler unterlaufen?

      • Giesbert

        Hi…Danke für die Antwort:-)

        Ich habe mich augenscheinlich an das Tutorial gehalten und den Boot-Stick (FreeDos) erstellt. Es kam zwar such die Fehlermeldung mit „der Maus“…aber wohl schwerwiegender war der mit dem „ extendend Memory“

        Ich hoffe, dass das bios noch mal beschrieben werden kann. Zur Zeit zeigt er keinerlei Reaktion.
        Die entscheidende Frage ist: wie komme ich an die SAS Nummer? Wenn die noch vorhanden ist?!

        • JARVIS

          Hi,
          im besten Fall steht die SAS Adresse / Nummer auf einem Aufkleber auf deiner Karte. Ansonsten was gibt der Befehl megacli -AdpAllInfo -aAll -page 20 zum auslesen der Adresse aus?

          • Giesber

            Das gemeine daran ist, dass ich auf den Befehl “megacli -AdpAllInfo -aAll -page 20 ” ja auch genau diese Meldung bekomme. Meine Sorge ist jetzt ein wenig, dass die alte S/N nicht mehr vorhanden ist (weil ich ja weiter gemacht hatte). Andererseits habe ich keine neue eingegeben!

            Die Karte gibt keinerlei Reaktionen mehr von sich. Ich denke mir, dass sie vielleicht ein neues Bios benötigt. Ich habe mir eine weitere Karte bestellt. Sind schlimmstenfalls 45€ weg!!

            Könntest Du mir für das wiederholte flashen einen Tipp geben? Könnte ich den Inhalt des Bootsticks hier als Attachment aufzeigen?

          • JARVIS

            Hi Giesber,
            ich denke die Karte ist noch nicht verloren. Mein Problem ist, dass ich es ca. 4x nach meiner Anleitung ohne Probleme mit einem normalen BIOS durchgeführt habe. Aktuell habe ich keine Karte oder System zum testen dar. Ich erinnere mich aber auch, dass ich am Anfang Probleme mit einigen Mainboards hatte, dann aber ein anderes probierte dass dann nach dieser Anleitung lief. Auch hatte ich einen Aufkleber mit der SAS-Adresse. Ansonsten einfach die Schritte BIOS oder UEFI nochmal genau durchführen.

  10. John

    Servus miteinander!

    Ich bin derzeit im Flashvorgang der Dell Perc H310 mit LSI 9211-8i zum IT Mode.

    Folgende Anleitung wurde mir bereits empfohlen:
    https://www.taste-of-it.de/flash-del…11-8i-it-mode/

    Nun bin ich bei Schritt 5 gelandet:

    “5. original Dell IT-Firmware installieren 5_DELL_IT\5IT.bat ausführen

    – sas2flsh.exe -l Flashlog.txt -o -f 6gbpsas.fw”

    Beim Eingeben dieses Befehls bekomme ich nur Bad command or filename – “sas2flsh.exe”. angezeigt.

    Was mache ich falsch?

    Vielen Dank schon Mal für eure Hilfe!

  11. ARW

    Vielen Dank für die perfekte Vorlage – das Flashen lief wunderbar.
    Nur nicht der anschließende Betrieb in dem dafür gedachten PC. Sobald die Karte eingesteckt wurde, ließ sich der PC nicht mehr booten – er kam nicht einmal bis zum BIOS.
    Die Lösung war das einseitige Abkleben von Kontakt 5 und 6 der PCI-E Schnittstelle.
    http://yannickdekoeijer.blogspot.de/2012/04/modding-dell-perc-6-sas-raidcontroller.html
    https://techmattr.wordpress.com/2016/04/11/updated-sas-hba-crossflashing-or-flashing-to-it-mode-dell-perc-h200-and-h310/
    Das Problem tritt angeblich primär bei Motherboards auf, die eine Grafikkarte in besagtem PCI-E Slot erwarten. In meinem Fall handelt es sich um ein Gigabyte B85M-HD3.
    Mit abgeklebten Kontakten läuft alles reibungslos.

  12. Tobias

    Hi,

    Ich bin neu in dem Thema und wollte/muss auch einen Dell H310 In den IT Modus bringen. Ich habe allerdings noch ein par fragen bevor ich was kaputt mache:

    Wenn ich den Stick mit den FreeDos erstellt habe packe ich einfach irgendwo den Ordner aus dem Download drauf, richtig? Dann kann ich von den USB Stick aus booten und anfangen die Befehle einzu geben?

    Dann verstehe ich nicht gennau wie ich das mit dem eintragen der Adresse mache nach dem Rebooten.
    Könntest dubmir da vielleich noch mal helfen?

  13. Jan

    Super Anleitung, lief in eins durch!

    Allerdings werden bei mir 0 Geräte erkannt, obwohl ich 3 WD RED (jeweils mit 3TB) angeschlossen habe. Kann das an der Firmware liegen?

    • SkyNet

      Hi Jan,
      danke für dein Lob. Bei mir war das letzte flashen allerdings schon ein paar Jahre her, jedoch auch mit 3TB Festplatten. Wenn dein Controller diese gar nicht erkennt ist es schon merkwürdig. Soweit ich mich erinnere, hätte er sie zumindest als 800MB oder 2,xTB Platten erkennen müssen.

      • Jan

        Jetzt läuft es, die WD RED Festplatten werden erkannt 🙂
        Was nicht funktioniert, ist das Booten eines auf den am H310 angeschlossenen Festplatten installiertem Systems (FreeBSD und Ubuntu). Ist das generell nicht möglich?

        • JARVIS

          Hi Jan,
          das ist toll. Der OS-Boot von den Festplatten muss auch funktionieren. Schau mal im BIOS nach der Bootreihenfolge, falls nicht schon gemacht. Wurde der Bootloader (GRUB etc.) korrekt auf der HDD von der du booten möchtest, installiert?

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert