Linux hardware support has improved a great deal over the past few years, but there are still a few troubled spots. With computer motherboards, for instance, the core functionality is generally there and most consumer motherboards will "just work" with the latest desktop Linux distributions out there. Where users though can run into problems are with the ancillary features. Motherboard manufacturers usually bundle proprietary software with their products that allow monitoring of hardware sensors, flashing of the motherboard BIOS, and overclocking all from within the Windows operating system. With the exception of LM_Sensors providing some sensors support, this is a grey area for Linux. Fortunately, however, the folks working on the CoreBoot project have developed a program that will near universally allow you to flash your motherboard's BIOS from within the Linux desktop.
The Flashrom utility is developed by the CoreBoot project (formerly known as LinuxBIOS) as a way to read, write, erase, and verify flash ROM chips. Flashrom has been in development for quite a while (nearly a decade), but now they have finally come out with a version 0.9.0 release and soon expect to reach a 1.0 status. This utility supports nearly every x86 motherboard after having worked on support for over 150 flash chip families (and many various for each family), 75 different chipsets, workarounds for non-standard motherboards, and there is no need for CD-ROM or floppy disk.
Previously Linux users have had to create an MS-DOS or FreeDOS boot disk and then run a proprietary DOS-based BIOS flashing program, but it is now becoming easy and universally supported to flash the BIOS from your desktop. Flashrom can also flash a BIOS perfectly fine over SSH or through other means as long as there is root access. Flashrom also supports cross-flashing and hot-flashing.
While Flashrom 0.9 is a great step for free software and Linux hardware support, Carl-Daniel Hailfinger shared with us that they already have plenty of "exciting code" they plan to merge for the 1.0 release and it should end up being a "truly marvelous" release. At this time, Flashrom is CLI-based with no GUI, but the options are simple to backup a BIOS image, erase a BIOS chip, and to flash the BIOS with a new image.
Besides supporting Linux, Flashrom is also supported under FreeBSD, DragonflyBSD, OpenSolaris, and Mac OS X. More information on the Flashrom program is available from the Coreboot web-site.
Discuss this article in our forums, IRC channel, or email the author. You can also follow our content via RSS and on social networks like Facebook, Identi.ca, and Twitter (@Phoronix and @MichaelLarabel). Subscribe to Phoronix Premium to view our content without advertisements, view entire articles on a single page, and experience other benefits.