Customizing IPLs

This section describes in detail the steps necessary to write the IPL for an embedded system that boots from ROM or Flash.

Systems that boot from disk or over the network typically come with a BIOS or ROM monitor, which already contains a large part of the IPL within it. If your embedded system fits this category, you can probably skip directly to the chapter on Customizing Image Startup Programs.

Your IPL loader gets control at reset time and performs the following main functions:

  1. Initialize hardware (via assembly-language code).
  2. Download the image into RAM (e.g. via serial using image_download_8250()).
  3. Locate the OS image (via image_scan()).
  4. Copy the startup program (via image_setup()).
  5. Jump to the loaded image (via image_start()).