Resetting the firmware of a MegaRAID LSI SAS-9266-8i


Getting rid of the previous owner's vices

August 2018.
Image

Introduction



Issue: I bought a spare SAS-9266-8i on eBay. When I plugged it in, it woudln't stop beeping and complained that its firmware is in fault state.

The following message was displayed during POST:


LSI MegaRAID SAS-MFI BIOS
Version XXXX (Build YYYY ZZ, WWWW)
Copyright(c) WWWW LSI Corporation
Host Adapter - Bus 6 Dev 0:
F/W is in Fault State - MFI Register State 0xF001002

Adapter at Baseport is not responding
No MegaRAID Adapter Installed

This card clearly needed its firmware reconfigured.

What I've tried



I've booted a FreeBSD live CD and tried to inspect the controller using mfiutil, but it couldn't do anything.

dmesg confirms that the firmware is not ready:

# dmesg | grep mfi
mfi0: Megaraid SAS driver Ver XXXX
mfi0: <Invader> port 0x2000-0x20ff mem 0xb1b00000-0xb1b0ffff,0xb1a00000-0xb1afffff irq 16 at device 0.0 on pci2
mfi0: Using MSI
mfi0: Megaraid SAS driver Ver XXXX
mfi0: Firmware fault
mfi0: Firmware not in READY state, error 6

I've tried to use storcli on FreeBSD but it couldn't see the card either.

I've tried to use storcli on a EFI shell, but the executable didn't work: it froze instantly when I started it.

I've tried to use the LSI Pre boot CD to flash the card, but it wasn't detected either by any of the tools.

What worked



The key to reset the card was to use megarec.

What I ended up doing was prepare a FreeDOS boot disk including megarec and its dependencies, and boot it. Then I could use the megarec commands to flash the card.

The first thing I did was erase the current firmware:


> megarec -cleanflash 0

Once rebooted, the card stopped beeping, which was very nice for my ears.

Then I tried flashing the recovery image from the LSI CD:


> megarec -m0flash 0 2208_16.rom

The flashing went well, but once rebooted, the card was back in F/W fault state, destroying my ears again.

I then decided to flash the latest firmware from the LSI website:


> megarec -m0flash 0 mr2208fw.rom

That was the solution. Now the card is working perfectly. I could go into its config tool and setup my RAIDs.


AVAGO MegaRAID SAS-MFI BIOS
Version 5.50.03.0 (Buil July 22, 2015)
Copyright(c) 2015 AVAGO Technologies
F/W Initializing Devices 100%
HA -0 (Bus 3 Dev 0) LSI MegaRAID SAS 9266-8i
PCI Slot Number: 255

ID LUN VENDOR PRODUCT REVISION CAPACITY
-- --- ------ ------- -------- --------
AVAGO LSI MegaRAID SAS 9266-8i 3.460.114-6464 0MB
25 0 ATA CT500MX500SSD1 020 476940MB
25 0 ATA CT500MX500SSD1 020 476940MB
0 AVAGO Virtual Drive RAID1 476940MB

All good!

Here are some reference articles that gave me all the information I needed: