B o o t p r o c e s s

Boot process

This chapter describes the boot process of U-Boot and Linux.

Introduction

A boot loader is a small piece of software that executes soon after powering up a computer. On a desktop PC it resides on the master boot record (MBR) of the hard drive and is executed after the PC BIOS performs various system initializations. The boot loader then passes system information to the kernel and then executes the kernel. For instance, the boot loader tells the kernel which hard drive partition to mount as root.

In an embedded system the role of the boot loader is more complicated since these systems do not have a BIOS to perform the initial system configuration. The low level initialization of the microprocessor, memory controllers and other board specific hardware varies from board to board and CPU to CPU. These initializations must be performed before a Linux kernel image can execute.

At a minimum, a boot loader for an embedded system performs the following functions:

Initialize the hardware, especially the memory controller.

Provides boot parameters for the operating system image.

Starts the operating system image.

Additionally, most boot loaders also provide convenient features that simplify development and update of the firmware:

Reading and writing arbitrary memory locations.

Uploading new binary images to the board's RAM via a serial line or Ethernet

Copying binary images from RAM to Flash memory.

U-Boot

After power-up or reset the processor loads the U-Boot boot loader. This is performed in different steps and depends on the target.

4 4

L x N E T E S U s e r ’ s G u i d e

Page 44
Image 44
Digi 9P 9360/9750 manual Boot process, Introduction