switch-coreboot/Documentation/flashfaq.txt
Ronald G. Minnich 07da2163b3 info on flash.
2003-01-16 21:35:59 +00:00

40 lines
1.9 KiB
Text

This FAQ may be found in the LinuxBIOS source tree, under
Documentation/flashfaq.txt
Q. What is FLASH?
A. FLASH is an electrically reprogrammable, read-only memory that saves
its contents across power cycles. FLASH currently comes in two general types,
asynchronous and synchronous. Currnently only Intel sells FLASH that is
synchronously read and written.
Q. How is FLASH used in PCs?
A. FLASH is used for the BIOS software that boots the PC when it is turned on
or reset. FLASH contains the first software that the PC runs.
Q. What are the typical sizes of FLASH in PCs
A. Strangely enough, the size of FLASH in PCs has been dropping in recent
years, after growing for several years. Early FLASH came in DIP-32 parts
and was 256KB or 512KB in size. BIOSes are now compressed and hence the size
has dropped to 256KB in recent years.
Q. How is FLASH written?
A. On newer PCs the FLASH can be written entirely from software. No jumper
manipulation is required. Several programs are available on Linux to do this
rewriting, one of which is included in the LinuxBIOS source tree.
Q. What are the obstacles to writing FLASH.
A. There are three levels of interlock to updating FLASH. First are interlocks
in the FLASH chips themselves. These typically require writing specific
patters to the chips in a specific order to unlock the write locks on
the chip. Second are interlocks built in to the PC chipset, which require
bits to be set in the chipset to make the FLASH part of the address space
writeable. These two interlocks are fairly easy to work with.
The third interlock is the hardest. Many motherboard vendors put additional
hardware interlocks external to the PC chipset onto the motherboard. These
interlocks are difficult to figure out (by design). They are occasionally
documented on embedded motherboards, but on most PC chipsets they are
obscured. These interlocks present the most challenging problems to those
wishing to use LinuxBIOS on their motherboard.