ASUS Rampage III Gene "bricked" Marvell 9128 controller

Discussion in 'BIOS Mods' started by MrT0ad, Mar 6, 2011.

  1. MrT0ad

    MrT0ad MDL Novice

    Mar 3, 2011
    46
    11
    0
    Hi beautiful people :)

    After patiently waiting for a few months for ASUS to update the RAID option ROMs in the BIOS I decided to take matters in my own hands, with rather disastrous consequences...

    I already knew (although it didn't stop me trying...) that I wouldn't be able to update the Intel RAID ROM (some limitation in the way ASUS coded the BIOS), so I went for next best, the integrated Marvell controller.

    I was actually successful in updating the firmware and the option ROM (when you edit the BIOS with MMTOOL you see three modules related to the controller, "E6" which looks like some kind of loader/option, "E7" which is the actual firmware of the controller, which is flashed upon reboot after updating the MB BIOS, and the option ROM itself).

    However, a few hours ago I found an ever newer firmware, so I edited the BIOS once more with it and flashed... Unfortunately this firmware it's meant for an actual PCIe card rather than an integrated controller, and I forgot to edit it and remove the portion of code that goes in the "E6" module from it.

    Needless to say things didn't go very well. It did flash, but immediately after the controller stopped "working" completely.

    Upon realizing my mistake I flashed with a "known good" BIOS, but it no longer updates the firmware on the controller. I don't know if it's because I've bricked it and the BIOS no longer "sees" it, or because the routine the BIOS uses to determine whether it should flash the Marvell controller after a BIOS flash or not thinks that if the firmware version it contains is lower or equal to the existing one doesn't bother flashing.

    I've looked at the firmware files and compared three versions of them but I can't see no obvious place where the version is stored, basically to increment the version and check if then it flashes.

    I've also tried the Marvell flash utility from DOS prompt, but it doesn't find any controller, although I was expecting this...

    Any insight on how can I get out of this situation?

    Thanks for reading :)
     
  2. MrT0ad

    MrT0ad MDL Novice

    Mar 3, 2011
    46
    11
    0
    I had time to look a bit more into this, but sideways ;)

    The previous times I've successfully updated the firmware on the integrated 9128 controller I've been greeted by a BIOS POST message along the lines of "Updating integrated controller..." followed by "Success!".

    I've also read that the Marvell 9128 requires an external EEPROM in which the firmware resides.

    Would this be a separate chip on the MB's PCB? If so what am I looking for? I can identify the MB BIOS, but that's about it. I'm sorry I'm so useless.

    I thought that if that's the case perhaps I could use a FT2232SPI programmer (which is rather inexpensive) and flashrom software to flash a known good firmware on the EEPROM?
     
  3. MrT0ad

    MrT0ad MDL Novice

    Mar 3, 2011
    46
    11
    0
    Sorted :)

    With the help of the guys @ flashrom project, an external EEPROM programmer, a non-corrupt EEPROM and a bit of patience (and plenty of flux :p) I have the controller up and running again :)

    Desoldering/soldering the EEPROM was a bit scary, never done it before with components in packaging so small, but all in all the whole thing has been very satisfying :) :)

    And now I have the equipment to "unbrick" EEPROMs if things go south again, so... More experimenting is required ;)
     
  4. pdanders

    pdanders MDL Novice

    Apr 14, 2011
    2
    0
    0
    I just did the exact same thing. Can you send me the clean ROM file?
     
  5. pdanders

    pdanders MDL Novice

    Apr 14, 2011
    2
    0
    0
    Did you find a way to fix this without removing the EEPROM?

    I'm running a P7P55D-E PRO with a 9123 I believe.