It is commonly used to flash BIOSes from under Linux, *BSD, OpenSolaris and Mac OS X, but it also has the ability to reflash graphics cards, SATA controllers, network cards and one game console. A wide variety of external programmers is supported as well, from ultra-cheap homemade setups to high end commercial machines.
Hotflashing and crossflashing complete the feature set.

This talk introduces flashrom, and explains its structure and implementation. Common issues and future directions are explained, and even a demonstration will be given.