Crossflashing Perc H200

manfer

Cadet
Joined
Jul 17, 2019
Messages
6
Hi,

Sorry if this is not the place to ask for this.

I'm trying to flash a perc h200 to use in IT Mode but no luck.

It is not posible to do it on the Dell Server because sas2flsh works to read SAS Address but megarec command is not working. It gets stuck forever.

I have the following other motherboards to try:

MSI H81M-E35 - It has integrated graphic card, uefi bios, 1 PCIe x16 slot and 2 PCIe x1 slots. The PCIe 1x slots has the edges closed so I can't plug H200 PCIe x8 card on them. And when I plug the H200 in the PCIe x16 slot the system won't boot, just blank screen and no error beeps. I bet the x16 is just meant for a graphic card. I have not seen any configuration on the uefi that could make it work. So I have not been able to use this system to crossflash the card.

Packerd Bell imedia S3720 - It has integrated graphic card, non uefi bios, 1 PCIe x8 slot. When I plug the H200 card in the PCIe slot the system boots and correctly recognizes the card. It shows the boot process of the H200 card. It shows H200 is installed on slot 1 and shows the software version. I can properly boot on FreeDOS but when I ran sas2flsh I get "Failed to initialize PAL". So I'm not able to crossflash with this system either.

Gigabyte GA-Z68X-UD4-B3 - It has non uefi bios, 1 PCIe x16, 1 PCIe x8 (size x16 but 8 lines only), 2 PCIe x1 slots. The PCIe 1x slots has the edges closed. The x16 slot has a graphic card on it (no integrated graphic on this mobo). When I plug the H200 on the x8 slot the system won't boot. Nothing shows on screen and the system stays in a reboot loop. The PCIe x16 and PCIe x8 on this mobo are used for dual graphic card, when one card is plugged on the x8 the x16 runs on 8 lines instead of 16 lines. Not sure if I can disable this functionality. I have not been able to use this system to crossflash the H200.

Anything I can do on these systems to be able to crossflash? Any bios configuration I'm missing?

Would megarec command work on the packard bell system even if sas2flsh command gets "failed to initialize PAL error"? Or megarec won't work either? I was thinking if it is posible to do the megarec erase process in the packard bell computer, then move the card to the Dell Server and install the new firmware with sas2flsh?

Thanks for any help.
 
Last edited:

jgreco

Resident Grinch
Joined
May 29, 2011
Messages
18,680
It isn't unusual for parts of the process to work on one system and other parts of the process to work on another. There is no harm in doing what works on one system on that system and using other systems for other parts of the process.
 

manfer

Cadet
Joined
Jul 17, 2019
Messages
6
So I decided to try.

I erased the card on the packard bell computer and worked just fine.

Then I had installed the card on Dell Server and I was able to flash the firmware with sas2flsh.

So just a newbie question. The server has 4 disks which were formatted with a hardware raid with the PERC that came with the Dell Server. I don't need the data on those disks at all. There is nothing on them but a fresh OS install. Do I need to erase the raid or I can just install the new PERC H200I on the internal PCIe slot -now is on one of the rear ones-, connect it to the disks backplane and start from scratch without worrying about the actual raid on the disks?

Thanks a lot.
 
Last edited:

HoneyBadger

actually does care
Administrator
Moderator
iXsystems
Joined
Feb 6, 2014
Messages
5,112
The configuration of the RAID would have been on the controller moreso than the drives (although there might have been a backup stored somewhere) - the H200 will just see them as drives, likely with an unknown partition table. You might need to destroy the partitions or wipe the disks from within FreeNAS if it isn't able to do it automatically as part of the volume manager GUI.
 

manfer

Cadet
Joined
Jul 17, 2019
Messages
6
So, I found a last issue when installing the PERC.

The previous PERC6/I that was installed had a battery connected to it but the new PERC H200I has a different connector for the battery. I'm going to use the PERC H200I in IT Mode and with ZFS software RAID, is this battery mandatory?

I only bought just the H200I PERC and the SAS cables but not the battery cable. Didn't know it was a different cable. Which would be the cable needed for the PERC H200I? If posible a long one as the first attempt to install the card on the internal slot failed with error "Invalid PCIe card found in the internal storage slot". So maybe I have to use this PERC in a rear slot. The Server is a Dell R610.
 
Last edited:

manfer

Cadet
Joined
Jul 17, 2019
Messages
6
I found this insteresting video that shows how it is posible to change the Product ID on the SBR of the card to make it work in the internal storage.
https://www.youtube.com/watch?v=v0AEHVdc_go

Is there a way to do this with sas2flsh on freeDOS and without having to do all the flash process again?
 

jgreco

Resident Grinch
Joined
May 29, 2011
Messages
18,680
There's no battery for an H200 - it's an HBA, not a caching RAID controller.

Typically you can get the sas2flsh tools to work on FreeDOS but the specifics of each platform can be a bit twitchy - it may not work on every host you try.
 

manfer

Cadet
Joined
Jul 17, 2019
Messages
6
So I reread the newcomers guide to crossflashing and made me think maybe I can do the change of Product ID with megarec.

The CARD_ID is 0 when I install it on Packer Bell computer. So I read the actual SBR to a file

Code:
megarec -readsbr 0 H200.SBR


Then I edited the file to change the product id to 1f1e. That SBR file is in hexadecimal format. I tried to open it in hex editor but couldn't be sure what to change. So I have downloaded sbrtool which is just a python 3 script to try to parse the file as a readable text file. And indeed I have been able to edit it and turn it back into the modified hex file.

And now I must write it back to the board with,

Code:
megarec -writesbr 0 H200.SBR


My only concern is that in the process shown on the video that writes SBR from linux with lsirec command, first the card is unbinded and that's something I will not be able to do when running megarec in DOS. Can I run megarec -writesbr safely?
 

jgreco

Resident Grinch
Joined
May 29, 2011
Messages
18,680
I've never actually seen someone successfully manage to permanently brick an LSI HBA.
 

manfer

Cadet
Joined
Jul 17, 2019
Messages
6
I just did it. And now it works fine on the internal storage slot. I'm now starting to crossflash another card.

I had an error on boot, something about SAS A cable configuration. I'm wondering if maybe I connected backplane A to B in card and backplane B to A in card. If that is not the problem I will investigate further later. It boots correctly anyway.
 

asjohem

Dabbler
Joined
Oct 22, 2019
Messages
33
@manfer can you upload all files in a zip or something and link them to me? Got a T310 server today with a H200 in it, Im gonna flash it to IT mode but in every guide I find the links are broken/outdated.
 

HoneyBadger

actually does care
Administrator
Moderator
iXsystems
Joined
Feb 6, 2014
Messages
5,112

asjohem

Dabbler
Joined
Oct 22, 2019
Messages
33
@HoneyBadger Thanks! Im trying it out but after the first megarec (megarec.exe -writesbr 0 sbrempty.bin) it looks like the picture and seems like it taking forever. Is it supposed to take long time or am I stuck?

EDIT! Rebooted and tried to move along with the next step (megarec.exe -cleanflash 0) And it will be the same as the picture also. Just a "-" blinking
 

Attachments

  • IMG_20191112_192858.jpg
    IMG_20191112_192858.jpg
    112.5 KB · Views: 350
Last edited:

asjohem

Dabbler
Joined
Oct 22, 2019
Messages
33
Try using a different motherboard or switching between a BIOS/UEFI system; that's what the OP of this thread ended up doing from my reading, they used an old Packard-Bell to do the megarec step
I saw it and tried, worked like a charm :) Moved it to an old HP workstation, and did the megarec commands and then moved it back and did the rest.

Thanks for answer
 
Top