When you want to write your own BIOS on an Intel® architecture platform, you must gather the appropriate documents and determine the order in which the listed items must be performed. Until now there has not been a single document that describes all the basic steps in the correct order of initialization. There are also many legacy devices that must be initialized and finding documentation can be challenging.
This white paper provides the information you need in a central repository. Intel firmware architects Jenny M. Pelner and James A. Pelner describe the minimal initialization steps that are necessary in order to boot to an Intel architecture (IA) platform.
Intel typically takes two approaches when a new platform is developed and a boot loader solution is required These options include the use of a BIOS or the development of a custom boot loader. The decision between the two is typically driven by the features that you want to implement. IA BIOS has all the features and configurability available while a custom boot loader may work only for a specific board with specific hardware.
This paper outlines the basic minimum firmware requirements for making an IA platform operational and booting an OS. The steps are presented here in recommended order. There may be design-based or segment-based requirements which would add/delete/re-order many of the items presented in this paper, but for the vast majority of system designs, recommended steps will be sufficient. The paper includes a list of technical references.