http://linux.dell.com/biosdisk/
Here's how I used it:
* Download and unpack the .tar.gz (currently 0.75-2).
* I had to hack a line in the spec template in the unpacked
biosdisk tree for CentOS 5 to be happy (this was for
biosdisk 0.65 - might be fixed in the 0.75 release):
biosdisk-mkrpm-redhat-template.spec:
Change "Copyright: GPL" to "License: GPL"
* Download the BIOS for your Dell desktop/laptop. I find the
quickest way is to use the service tag
(as root: "dmidecode | grep 'Serial Number' | head -1") and
plug in into the Dell Support site (i.e. http://support.dell.com/
then "Search for Drivers" green button and then select
"Choose by Service Tag" and then enter your Service Tag).
* Select the Bios item and then download the (usually .exe)
file. I rename the .exe to something that fits into an 8.3
filing system and represents the version number some way.
E.g. for an E521's 1.1.11 BIOS, I called the file 1_1_11.exe
- I'll call that .exe from now on.
* As root in the unpacked biosdisk tree (where you've also
put the .exe file):
./biosdisk mkpkg $PWD/.exe
mv /var/lib/biosdisk/rpm/RPMS/noarch/*.rpm /tmp
rpm -Uvh /tmp/*.rpm
(Note I've used /tmp to move the rpm to here - if you want
to keep it, store it somewhere that won't get cleaned out)
* Reboot your machine and you should get a "BIOS "
option in your grub menu. Select that and you can flash your
BIOS - no USB keys/CDs/virtual machines needed!