Trouble crossflashing a Fujitsu D3116 (LSI SAS2208) to 2308

Notice: Page may contain affiliate links for which we may earn a small commission through services like Amazon Affiliates or Skimlinks.

MiningPickaxe

New Member
Jul 28, 2021
3
2
3
Hello,
I am having a lot of trouble flashing a Fujitsu D3116 which is based on the LSI SAS2208 to 2308 IT Mode.
What I'm currently stuck on is that the sas2flash utility wont detect my Card.

Already did a couple of different attempts which I want to lay out here:
  1. Use megarec to write a 256B empty sbr and use megarec with -cleanflash to wipe the flash. Boot to the UEFI version of sas2flash and it wont get detected. megarec can still see it though, so not entirely bricked.
  2. Use megarec to write a 512B empty sbr because I noticed that the sbr I backed up when starting was also 512B and there seems to be a revision with 512B of sbr. Aftewards -cleanflash again. no success.
  3. Use the sbrtool from this project on github: GitHub - marcan/lsirec: LSI SAS2008/SAS2108 low-level recovery tool for Linux to analyze the original sbr and create my own (not empty) sbr. Vendor set to 0x1000 (LSI) and Product set to 0x0086 (SAS2308 PCI-Express Fusion-MPT SAS-2). Tried setting Subvendor IDs /Subproduct ID to Fujitsu ones and also Supermicro. Attached a config as reference. Also -cleanflashed it, no success. A good source for PCI IDs is this: The PCI ID Repository
  4. Tried using different sas2flash versions, currently found P20, P14 and P5. None worked.
At this point I'm running out of ideas on what to try and why sas2flash won't detect my card.

Has someone managed to do this to a Fujitsu D3116 before or does someone have some more ideas?
 

Attachments

Dave Corder

Well-Known Member
Dec 21, 2015
381
274
63
42
I would try using the lsirec utility to "host boot" the card using the firmware .bin you intend to flash to it, and then see if sas2flash or lsiutil will detect the card. I've had some success going this route with a proprietary SAS2308 card I've been tinkering around with.

An easy way to get all these utilities in one place is to use @fohdeesha's Dell PERC cross-flashing ISO from here: Introduction - Fohdeesha Docs
 
  • Like
Reactions: fohdeesha

MiningPickaxe

New Member
Jul 28, 2021
3
2
3
@Sleyk Hi thank you for your thorough answer, thats annoying :/

Do you know if the PRAID CP400i can be flashed to IT mode? Fujitsu does offer that card as a PSAS variant (IT mode). I grabbed the fujitsu update installer for that and was able to extract roms from it, but I don't want to risk bricking it if you already know it wont work ;)
 
  • Like
Reactions: Sleyk

MiningPickaxe

New Member
Jul 28, 2021
3
2
3
Ok, that SBR saved me :D Thank you very much for your work, all flashed now and working beautifully! Saved me about 500€ there :)
 
  • Like
Reactions: Sleyk

tobby

New Member
Jan 18, 2023
4
1
3
So is there anything one can do to update/crossflash/... the D3116? Or does that mean, that one is locked to the old Fujitsu software?
 
  • Like
Reactions: clowninja

mbps

New Member
Sep 2, 2024
3
0
1
Had a look into this guide:
figured out the changes and changed the SBR downloaded from my D3116 accordingly and viola: it is now recognized as SAS2308.
Flashing the P20 SAS9207-8i firmware with sas2flash.efi worked and the mpt2sas linux driver recognizes the card. Find in the attached zip both versions of the sbr file - fsc2208.sbr ist the unmodified orginal and fsc2208m.sbr is modified to show up as SAS2308. I'll check if all ports work within the next days...
 

Attachments

tobby

New Member
Jan 18, 2023
4
1
3
Had a look into this guide:
figured out the changes and changed the SBR downloaded from my D3116 accordingly and viola: it is now recognized as SAS2308.
Flashing the P20 SAS9207-8i firmware with sas2flash.efi worked and the mpt2sas linux driver recognizes the card. Find in the attached zip both versions of the sbr file - fsc2208.sbr ist the unmodified orginal and fsc2208m.sbr is modified to show up as SAS2308. I'll check if all ports work within the next days...
Can you post a more detailed guide?

I do have several Fujitsu servers with D3116 RAID cards and have done several tries to crossflash them. With your SBR today I tried it again:
- booted into FreeDOS, cards are recognized as PCI\VEN_1000&DEV_005B <- maybe this was already after recovery with "2208_16.rom". No idea, which ID it had before
- used megarec.exe to backup my SBR and SPD
- did megarec -cleanflash 0
- did megarec -writesbr 0 fsc2208m.sbr
- rebooted, now card is recognized as PCI\VEN_1000&DEV_0089

But now I can't get the card running in any way.
- Tried to use sas2flsh.efi but card is not recognized
- Tried this way: reading SBR from 2208 shows the data to be offset by a few bytes · Issue #1 · marcan/lsirec but it fails at the "hostboot" command - the card doesn't start the 9207-8.bin firmware

Clearly the card's not working in this state. Can get it back to life by flashing "2208_16.rom" with megarec (megarec -m0flash 0 2208_16.rom).

Any ideas? What did you do differently?
 

mbps

New Member
Sep 2, 2024
3
0
1
...
Any ideas? What did you do differently?
As far as I've made some notes in the process I did exactly the same steps. Although I did one thing the other way around: first writing the modified SBR and then issuing "-cleanflash 0". From there I directly rebooted in UEFI mode for using sas2flash.efi (you wrote sas2flsh.efi - different version?)
I've tried several other "empty" SBRs and other steps before without success - can't remember the details but they seemed not to have any effect and as far as I remember I restored the original SBR after that.

I used the megarec.exe from the lsi_dos.zip I found here:
Blog/pages/_assets/file/lsi-9266-8i-to-it-mode at master · HomeofNever/Blog

The sas2flash.efi and firmware phase 20 came directly from Broadcom:
Support Documents and Downloads

For the UEFI-Boot I simply created the folders /efi/boot on the same USB thumbdrive I used with FreeDOS and copied there the bootx64.efi I found here:
lsi-sas92xx-m1015-flash-firmware/efi/boot at main · strazto/lsi-sas92xx-m1015-flash-firmware

Maybe you have a different revision of the card and can check if the SBR you backed up from your card is identical to the unmodified version I posted. If not: either make the same changes I made within your SBR file or post it here and I can give it a try...

I've never tried to recover the old firmware on such cards - I guess after restoring your old SBR this should work.
 

tobby

New Member
Jan 18, 2023
4
1
3
As far as I've made some notes in the process I did exactly the same steps. Although I did one thing the other way around: first writing the modified SBR and then issuing "-cleanflash 0".
Not completely sure, but I think I tried it the other way around, as well.

From there I directly rebooted in UEFI mode for using sas2flash.efi (you wrote sas2flsh.efi - different version?)
Just had a look - the tool is called sas2flash and the EFI-version is called sas2flash.efi, only the DOS-version is called sas2flsh.exe to be compliant to 8.3 naming scheme. So sas2flash and sas2flsh does mean the same tool, just different ways to boot. But yes, I used sas2flash.efi, so same tool. Used version P20, wchich schould be the same as yours.

Maybe you have a different revision of the card and can check if the SBR you backed up from your card is identical to the unmodified version I posted. If not: either make the same changes I made within your SBR file or post it here and I can give it a try...
Just had a look and yes, my SBR looks different than yours. Maybe different controller version? It seems to contain much less information. Maybe my backup is broken? But I don't know more details of the data inside the SBR, so I cant really tell. Attached it, maybe you can have a look at it?

I've never tried to recover the old firmware on such cards - I guess after restoring your old SBR this should work.
Seems to be not so easy - since one can't flash it with sas2flash and there is no firmware in megarec-format. I tried with the original Fujitsu tool, which has two choices: normal flash and recovery flash, but both don't work anymore. Only megarec.exe finds them and is able to flash 2208_16.rom to get them back in working state (but still no way to flash with fujitsu tool or sas2flash).

Is there any way to extract a working "full image" from another controller? I do have some more of these, so there should be one I didn't try to crossflash yet :D
 

Attachments

mbps

New Member
Sep 2, 2024
3
0
1
As far as I understand the modifications I've done them to your sbr and attached it (SBR_m1.bin in the .zip file).
Named the file D3116_256 since you've got some version of the card that only uses the first 256 bytes of the 512 byte SBR space - very similar to the B0 revision of the Dell cards, my card seems to be a D1 revision. Thus you might need to flash the firmware for the SAS9205-8e to your cards (instead of the 9207-8i). I also included a "SBR_m2.bin" since one to-be-changed value in your SBR differed from the Dell originals and I left it unmodified in that version - have a try if the m1 doesn't work.

You can read out the chip revision with either MegaSCU.exe or MegaOEM.exe with the option "-AdpAllInfo -a0 > adpinfo.txt" (directed to file since in DOS it scrolls all away , "-a0" is for the first card). Under "PCI Info" you can find "ChipRevision" - would be interesting if you can post it here. (Save that info file somewhere for each card you modify - it also includes the SAS address.)

I hope you've written down the SAS address of your card or were able to read it out - on my card it is NOT printed (most other vendors seem to attach a label with the SAS address to their cards). This address gets lost in the reflashing process and you have to set it again with
sas2flash -o -sasadd [your address]
 

Attachments

tobby

New Member
Jan 18, 2023
4
1
3
As far as I understand the modifications I've done them to your sbr and attached it (SBR_m1.bin in the .zip file).
Named the file D3116_256 since you've got some version of the card that only uses the first 256 bytes of the 512 byte SBR space - very similar to the B0 revision of the Dell cards, my card seems to be a D1 revision. Thus you might need to flash the firmware for the SAS9205-8e to your cards (instead of the 9207-8i). I also included a "SBR_m2.bin" since one to-be-changed value in your SBR differed from the Dell originals and I left it unmodified in that version - have a try if the m1 doesn't work.
Thank you very much. Today I had time to try it. I am one step further - but still not there. I tried both of your SBRs and with both SBRs the card is recognized by sas2flash.efi afterwards. And you are right, it doesn't accept 9207-8i.bin, because it's for chip revision 0x5 and this card is chip revision 0x3 (that's whtat it tells me). With 9205-8e.bin it's not complaining anymore and continuing until "Chip is in RESET state. Attempting Host Boot...". And than it doesn't do anything anymore. No matter which of your two SBRs.

You can read out the chip revision with either MegaSCU.exe or MegaOEM.exe with the option "-AdpAllInfo -a0 > adpinfo.txt" (directed to file since in DOS it scrolls all away , "-a0" is for the first card). Under "PCI Info" you can find "ChipRevision" - would be interesting if you can post it here. (Save that info file somewhere for each card you modify - it also includes the SAS address.)
MegaOEM doesn't detect the card (before crossflashing, didn't try afterwards), but MegaSCU does: ChipRevision is "C1" with a working firmware. May not be the original firmware, since I read that out of a controller which I cleared several times and I don't know if the recovery-firmware I used is the right for this device. Seems not, I can't use the Fujitsu tools on this card anymore and the SAS address is not the one it had originally but at least this one is a working firmware.
Any ideas what I can do with a C1-card?
I attached the full log.

I hope you've written down the SAS address of your card or were able to read it out - on my card it is NOT printed (most other vendors seem to attach a label with the SAS address to their cards). This address gets lost in the reflashing process and you have to set it again with
sas2flash -o -sasadd [your address]
Yes I do have the SAS address. And no, it's not printed.
 

Attachments