Originally Posted by planckscnst
You could look in your boards manual and look if it's got an option to emergency-restore your bios from a floppy or usb-stick.
I tried an earlier version of Flashrom when I needed to update the bios on my ABIT UL8. I had some hardware problems earlier and wanted to see if a newer bios would work better but all non-linux would involve even more hardware surgery. I looked around for a linux version of some of windows-based bios-flashers but was a bit surprised when flashrom package in my distro(Debian).
I was a bit sceptical at first about really using it to flash my mb bios but flashrom worked perfectly. Of course that didn't magically repair my broken graphics card, my overrated excuse for a power supply or my light-duty-only motherboard but with some fresh components that motherboard has been running that new bios for quite some time now.
Much easier to use flashrom then to transfer files to a windows/dos partition or media and try and get a working boot media.
Cross-flashing: Using the "wrong" bios file to flash your mb because you hope it will work better. Perhaps you want to use the bios from a higher quality mb with similar chipset as your mb because the other bios have better options available (Better memorysupport, more overclocking options etc.)Sometime this can actually work.
Originally Posted by Saiot
On the other hand I have a really nice dead motherboard collecting dust in my cellar thanks to cross-flashing.
Hot-flashing: Hehe.. this can sound a bit edgy or crazy.
You start up the computer, load up the bios flasher, then you physically remove the bios chip from it's socket and replace it with an new chip WITH the computer still running. Then you just press Y or something similar in the bios flasher to reprogram the new chip.
Of course if your chip is soldered directly onto the motherboard you can't perform this stunt... unless you're good enough with a soldering iron to replace the soldered chip with a socket instead. (Only for the truly crazy and gifted)
Hot-swapping sounds crazily dangerous but as long as you don't break anything while removing the chips, cause electro-static shock or short circuit something it does actually work as long. Just don't drop anything like a screwdriver or a bios chip on the motherboard that is live and running. Also you have to make sure that the bios chips are compatible as the come in different shapes, use different voltages and can store different amounts of code.
The reason that hot-swapping, or bios reprogramming in general, does work is that early in the startup procedure the bios code is copied from the slow ROM memory to much faster RAM, which we have more then enough of anyway. So when we're flashing the bios eprom we're flashing something that is only read a couple of times at startup. That is also why it is vital that you don't reboot if something went wrong during the flashing process. Try flashing a second time, or if that doesn't work go back to the original bios before rebooting.
Note that you combine cross- and hot-flashing, that's how I rescued my old Asus A7V motherboard which had been permanently dead for a couple of years. I used some old P2 mb I had. First I removed the p2 mb chip, then put it back only gently so it would be easier and quicker to remove while hot-swapping. I removed the A7V chip too. Then I started the p2, loaded up dos and the bios flasher (aflash I think) with the a7v bios. I gently and quickly removed the p2 chip, put in the a7v chip and pressed Y or something to start the reprogramming. After that I shut everything down, put the chips back where they belonged, and then I started up both motherboards. I almost wept of joy when the A7V successfully booted for the first time in years.
Last edited by a7v-user; 05-06-2009 at 04:42 PM.
thanks a lot, hoping to never need them
(sorry 4 bad english)
Thanks for the explanation, was wondering about cross-flashing myself.
BTW I believe the bios-copied-to-ram doesn't happen on all motherboards, because on one the flasher app froze on the second I removed the old chip (in a menu). On a retry, this time before launching the app, FreeDOS froze, I guess because they both would use bios calls to read the file from the floppy.
And this wouldn't happen if the calls were in ram..
Hmm.. I think you're right.
Originally Posted by curaga
So then this would be another reason why it would be safer to flash from linux or some other OS that doesn't use bios calls and hopefully have some mechanism in place to prevent bios calls from being made.
you can not prevent bios calls. Again:
look into it. The HARDWARE does SMM calls into bios - and no matter what the OS can not prevent it. Heck, it can't even see them! You enabled dos support for usb? SMM. Keyboard? SMM. Overheat protection? SMM - and some other workarounds.
SMM's heat protection is crap/evil, a crashing CPU can't be used for SMM since all SMM processing is done on a CPU..
flashrom is mostly safe, as safe as a FreeDOS disk or in-BIOS flasher.
audiohacked, don't ridicule yourself. SMM is the way it is done. Today. And the overheat protection starts way before the CPU crashes. And overheat is not the only thing. KEyboard, even timers are done by smm mode+bios
follow this thread:
or search lkml archives for 'smm'
"about the smm stuff: SMM is only needed if the hardware is crap or the BIOS is crap or the OS is crap. With AMD hardware, a decent BIOS (or coreboot) and Linux, you don't need SMM. If there is some SMM active, complain to your vendor." ~ coreboot dev
"And if SMM is used for overheat protection, the BIOS writer needs to get his brain replaced. By definition, a crashing CPU will cause SMM overheat protection to fail." ~ coreboot dev
Good Hardware will have will have a dedicated chip, or the processor's internals will have the hardware for Thermal Protection. The proper way to do thermal protection, is in pure hardware.
Last edited by audiohacked; 05-10-2009 at 05:23 AM.