BIOS Update/en

Hardware manufactures often provide updates for BIOS and other types of firmware. To apply (often referred to as "flash") the updates is sometimes not straight forward on GNU/Linux systems. This occasionally requires some extra work.

Getting BIOS
First find the motherboard's manufacturer and the model. Check the user manual that came with the system. Most of the needed information can be found in the user manual.

The package can be used to retrieve additional information on system hardware. dmidecode looks at the motherboard's DMI table in order to provide richer details about the firmware and hardware components.

Lastly, if physical access to the motherboard is possible, the required information may be found directly on the motherboard itself.

After searching for the manufacturer's firmware update, proceed to download the package necessary to update the hardware. It is normal for a manufacturer to store firmware update packages in .zip, .exe, or .iso format.

BIOS Option
Many BIOSes have an option to read the new binary image from an external memory stick or floppy disk. Enter the BIOS setup and look for the option. If the BIOS does not support this, continue with the next section.

Boot-CD
Often the manufacturer offers a CD-ROM image to download as a boot medium. The file should have an file extension which should be properly burned to an empty CD-R(W). One of the tools that supports this is cdrecord:

Now you can choose in your BIOS to boot from CD and follow the instructions on your manufacturers website.

FreeDOS environment
You can use FreeDOS to run the DOS-based BIOS utility from your manufacturer. You must first create a custom FreeDOS image which includes the necessary BIOS tools, and then boot this image via one of the methods shown here.

Download FreeDOS and tools:


 * FreeDOS - Download the file.
 * FreeDOS bootsector - Download the file.
 * The DOS-Flash program and new BIOS from the manufacturers website.

Create a custom FreeDOS image
First download the required software and enable the loopback device in the kernel:

If the module has not been loaded use modprobe to load it:

Install the required software:

Create an image file of ~20MB using the dd command. The name needs to be when replacing the one on the SystemRescueCD):

Write a file system to the image:

Write the bootsector to the image file:

Now copy the FreeDOS files to the new image.

Create the mountpoints:

Mount the original image:

Mount the new image:

Copy the FreeDOS system files to our new image:

Now copy the flash program and the new BIOS to the image file:

Unmount both images:

Using SystemRescueCD to boot FreeDOS
The SystemRescueCD comes with a version of FreeDOS. This version can replace the original image and create a bootable memory stick which contains the needed programs to flash the firmware.

Download SystemRescueCD and prepare LiveUSB

 * SystemRescueCD - Download the normal ISO image.

Create a bootable memory stick
Use the default method to create the SystemRescueCD boot medium, the script will provide guidance through the installation.

Create the folder in :

Mount the CD image:

Start the installation script:

Unmount the CD image:

Replace the FreeDOS image
It is time to replace the original FreeDOS image on the SystemRescueCD memory stick.

Mount the SystemRescueCD memory stick ( needs to be replaced by the device name of the memory stick):

Replace the file:

Unmount the SystemRescueCD memory stick:

Booting the FreeDOS image from GRUB directly
To boot FreeDOS without any external media use the memdisk tool from syslinux to allow grub (or another bootloader) to boot the FreeDOS image directly.

Mount the partition (if needed):

Copy the memdisk binary and the newly built FreeDOS image to :

Edit and add an entry for FreeDOS:

BIOS update
Restart and choose to boot from the USB memory stick OR your new grub entry. If using SystemRescueCD, in the GRUB command line type:

This should boot you into our new FreeDOS image and you are greeted by the DOS prompt:

Now start the BIOS update by following the manufacturers instructions. Some useful commands in DOS:


 * cd 
 * Change to the directory.


 * dir
 * List the files in the current directory.


 * type </tt>
 * Display the contents of a file.

flashrom
Some motherboards can support flashing (via the package) directly from the system. In this case the only needed component is the BIOS image. Before continuing this path, first check the list of supported hardware.

First we check our new BIOS image:

If all OK, let's flash'em: