Please help recover Supermicro X9DRH-7F-JBOD's onboard LSI SAS 2308

Pheckphul

Better than being feckless.
Feb 28, 2013
29
10
3
SF Bay Area
I wasn't sure which forum, this one or RAID Controllers and HBAs, so I posted it both places. Didn't find a rule against cross-posting. No kill I.

TL;DR:

I have a Supermicro X9DRD-7LN4F-JBOD which has an onboard LSI 2308. It won't show up at boot time unless an add-in LSI SAS card is installed. It locked up doing a firmware update and now is in an unusable state. I've tried to erase the flash (-e 6 and -e7, and also via megarec -cleanflash 0), but it fails, as does flashing the firmware or BIOS. When executing sas2flash (or sas2flsh) -listall or -list I get a message that the "Controller is not operational. A firmware download is required." Providing a proper firmware image to download results in a "Firmware Download Failed!" message and sas2flash exits.
Anyone have an idea how I can recover from this?


Full story:

I have a Supermicro X9DRD-7LN4F-JBOD which has an onboard LSI 2308. It won't show up at boot time unless an add-in LSI SAS card is installed.
I've been using this board for a year or so with two add-in HP H220 cards and the onboard SAS disabled via jumper. I want to free up a PCIe slot and add an HP H222 card. So, I enabled the onboard 2308, and with the two H220s and the H222 card in the system I attempted to update the onboard 2308 to the most recent firmware available from Broadcomm, P20.00.07.00. This is where things went to <BEEP>. When I tried to update the firmware and BIOS, the firmware download failed.

Code:
sas2flash.efi -o -b MPTSAS2.ROM -f 9207-4i4e.bin -l SMX9_SAS_Update.log
     Adapter Selected is a LSI SAS: SAS2308_1(D1)
     Executing Operation: Flash Firmware Image
          Firmware Image has a Valid Checksum.
          Firmware Version 20.00.07.00
          Firmware Image compatible with Controller.
          Valid NVDATA Image found.
          NVDATA Version 14.01.00.00
          Checking for a compatible NVData image...
          NVDATA Device ID and Chip Revision match verified.
          NVDATA Versions Compatible.
          Valid Initialization Image verified.
          Valid BootLoader Image verified.
          Beginning Firmware Download...
          Firmware Download Failed!
     Due to error remaining commands will not be executed.
     Unable to Process Commands.
     Exiting SAS2Flash.
I decided to minimize variables and removed the two H220s and the H222 and flash the onboard 2308 with the same result of "Firmware Download Failed."

Next I looked at Supermicro's update script for their P20.00.07.00 distro and saw that they did a -e 7 erase before flashing. Since in my experience there is no need to erase the manufacturing area, and it only results in having to reenter the SAS address (as the onboard 2308 doesn't have a board assembly or tracer number that need to be reentered), I did an -e 6 erase. This failed as well.

Code:
sas2flash.efi -o -e 6 -l smx9_SAS_erase.log
     Adapter Selected is a LSI SAS: SAS2308_1(D1)
     Executing Operation: Erase Flash
     Erasing Flash Region...
     ERROR: Erase Flash Operation Failed!
     Resetting Adapter...
     Reset Successful!
     Due to Exception Command not Executed. IOCStatus=0x4, IOCLogInfo=0x0
     Finished Processing Commands Successfully.
     Exiting SAS2Flash.
Next I tried an -e 7 erase, grasping at straws. This operation failed, but with a little bit more info.

Code:
sas2flash.efi -o -e 7 -l smx9_SAS_erase7.log
     Adapter Selected is a LSI SAS: SAS2308_1(D1)
     Executing Operation: Erase Flash
     Erasing Entire Flash Region (including MPB)...
     ERROR: Erase Flash Operation Failed!
     Resetting Adapter...
     Reset Successful!
     Due to Exception Command not Executed. IOCStatus=0x4, IOCLogInfo=0x0
     Finished Processing Commands Successfully.
     Exiting SAS2Flash.
Now, however, the onboard 2308 seems to be totally hosed. sas2flash -list says a firmware download is required, but the download fails:

Code:
sas2flash.efi -list -l hosed.log
     Adapter Selected is a LSI SAS: SAS2308_1(D1)
     Controller is not operational. A firmware download is required.
Enter firmware file name or quit to exit: Executing Operation: Flash Firmware Image
          Firmware Image has a Valid Checksum.
          Firmware Version 20.00.07.00
          Firmware Image compatible with Controller.
          Valid NVDATA Image found.
          NVDATA Version 14.01.00.00
          Checking for a compatible NVData image...
          NVDATA Device ID and Chip Revision match verified.
          Valid Initialization Image verified.
          Valid BootLoader Image verified.
          Chip is in FAULT state. Attempting Host Boot...
          Firmware Host Boot Successful.
          Beginning Firmware Download...
          Firmware Download Failed!
     Due to error remaining commands will not be executed.
     Unable to Process Commands.
     Exiting SAS2Flash.
At this point I figured the onboard flash info was completely hosed, and decided to follow these instructions to try and unhose my board. However, this fails at the "Clear the flash on the card with megarec -cleanflash 0" with:

Code:
Chip is in FUSION mode.
Erasing flash chip (16MB)....
Flash chip erasing error
Error in erasing flash chip.
Error code = 524288
Now with another LSI SAS card installed, when it is trying to initialize the onboard 2308 (it apparently gets initialed before the add-in H220), I get the following message:

Code:
MPT BIOS fault 11h encountered at adapter PCI(03h,00h,00h)
Firmware Fault Code: 0702h
It then goes on to try and initialize the add-in H220, repeats the same error message, gives option to enter the SAS Configuration Utility. This doesn't show the onboard 2308 and the status for the H220 is "ERROR."

As I write this it's late, and I'm tired and frustrated, and really should be sleeping instead of composing this message, but I'm really hoping I'm not screwed. Anyone have an idea as to how I can get the onboard 2308 functional again?

Thank you very much for taking the time to read this.