Intel Linux-Ready Firmware Developer Kit
Intel's Open-Source Technology Center is involved with a number of open-source Linux projects such as Threading Building Blocks, Moblin, PowerTOP, and the X.Org graphics driver. Intel also has vested interests in numerous other projects such as Xen and KVM. One of Intel's lesser-known projects, however, is the Linux-ready Firmware Developer Kit. The Linux-ready Firmware Developer Kit is a bootable CD that analyzes the BIOS or EFI on the test system to see how well it's able to work with Linux and what features are supported via the firmware. The primary purpose of this kit is for use by firmware developers, but it's also able to aide end-users in determining what BIOS features on their system will work with Linux.
The Intel Linux-ready Firmware Developer Kit (LFDK) can be downloaded from their project website as a bootable ISO or just the source-code, which is 80MB and 199Kb, respectively. The latest version of the Linux-ready Firmware Developer Kit is Release 3, which arrived in October of 2007. This release had added new test kernels, updated microcode files, new tests, integrating PowerTOP, and many other changes. Planned for release 4 of the Linux-ready Firmware Developer Kit is support for Itanium (IA64), EFI (Extensible Firmware Interface), improved suspend code, and EDID DDC video probing. Planned for a future release is also a results comparison tool. The LFDK is licensed under the LGPL.
When booting to the Linux-ready Firmware Developer Kit CD, the user can choose between a number of Linux kernels to use. The default kernel with LFDK Release 3 is a vanilla Linux 184.108.40.206 kernel, but for improved relevancy of this utility, it also ships with a number of kernels found in common Linux distributions. The alternatives in LFDK Release 3 are Fedora Core 6, Mandriva 2007.1, and Ubuntu 7.04. The Linux-ready Firmware Developer Kit also supports booting in a safe-mode and running over a serial console. Once the kernel is selected, LFDK will boot using that kernel and then proceed to run its firmware tests. The initial firmware tests are all automated, but following these tests there are a number of supported manual tests.