On Tue, 20 Nov 2012 08:35:19 -0400 "Chea Gittens - IT Specialist" chea.gittens@cgtechinnovations.com wrote:
Hi, I upgraded the BIOS of a Biostar H61MGC motherboard to latest version available on the Biostar website - H61NR709.BSS after I was getting issues with the onboard VGA graphics. I used the flash utility on the motherboard and that reported as successful. However windows 7 would not start it freezes at the logo screen. I cannot get windows 7 boot DVD to start either it also freezes at the logo screen. I was also not able to start Mini Windows XP on a Hiren's Boot CD. I am also unable to start the live CDs disk Parted Magic or SystemRescueCD. Also none of the USB ports work. I was able to start DOS from a FAT32 formatted SATA Hard Drive. I tried to use various DOS Bios Flash tools to flash the bios to a pervious version, however I am getting errors about the bios being write protected. I am currently trying to use flashrom but I would like to get some advice on how to proceed so as to not cause further problems. I tried to do a read and save of the bios and got the follow output: […] 0x54: 0x00000000 FREG0: WARNING: Flash Descriptor region (0x00000000-0x00000fff) is read-only.
0x58: 0x03ff0200 FREG1: BIOS region (0x00200000-0x003fffff) is read-write.
0x5C: 0x01ff0001 FREG2: WARNING: Management Engine region (0x00001000-0x001fffff) is locked. […] Running OPCODE 0x03 failed at address 0x001000 (payload length was 64).
Read operation failed!
Hello Chea,
the problem is the locked ME region as quoted above. We are working on unlocking it, but intel does not provide us any documentation so please do not expect a solution soon (or ever).
I have added the board to our list of (un)supported boards (with an appropriate note) and will commit that later together with other small changes.
That was my standard reply in cases where there is no harm done yet (by flashrom or a vendor tool), but it is not complete:
flashrom might still be able to help you. The safest way (and often also the fastest, if you are prepared already) to handle such cases is to use an external programmer, i.e. a device that is attached to another PC and connected to the flash chip via cables, see http://flashrom.org/ISP If you happen to have some embedded board (e.g. an Arduino) laying around this would be an option.
Also, flashrom IS able to write to the BIOS* region of the flash chip. You can think of those regions as partitions like on normal storage devices. Their layout and access restrictions are defined by the descriptor region in the first 4kB of the flash memory. The Management Engine is an embedded microcontroller in the chipset of the mainboard and its firmware is stored together with the BIOS in the flash chip (in its own region which is write and read protected as seen in the log). The main problem for us is that there is no public documentation on how the different ME versions interact with the BIOS. We believe that the ME firmware can not be updated after an operating system has booted (i.e. only the BIOS itself can flash it similarly as it can update its own firmware as you have tried). If that is correct it should be possible to update the BIOS region only with flashrom after preparing the image and applying some patches to flashrom which have not been merged yet with our main branch. We can help you with that if you want to try, but we can not guarantee you that you will be successful and eventually you could be forced to get an external programmer anyway.
Since you were able to boot DOS the BIOS can not be completely broken and so the on-board flash tool should still be working (as good or bad :) as before. Maybe you should try to flash another BIOS version with that first.
I hope that i could make everything clear and that this will help you. If you have further questions feel free to mail again or join our IRC channel.
* actually there is probably no BIOS, but an UEFI firmware, but let's not get distracted by notations.