Embedded Linux Encounters

A peek in to the world of Embedded Linux and stuff

  • Linux is addictive, I'm hooked!

         Geek@WastingTime>

Boot loader Porting

Posted by Vaisakh P S On 6:13 AM 0 comments

In comparison to Windows CE, in Linux, we have many choices of boot loaders available today. U-Boot [V] is one of most commonly used boot loader in development phase, as it provides with a wide array of features which a developer can make use of. Before starting off with kernel porting these are the features that needs to bring up in U-boot.

· Debug Consoles – Preferably a serial UART. In u-boot configuration header, the stdin, stdout and stderr need to be specified. In case of our platform, the debug console has been directed to FFUART. Also baud rate of the serial UART connection needs to be configured.

· Ethernet connection – In initial stages of porting, the kernel image can be transferred over Ethernet instead of flashing on to a ROM. In case of our platform, Ethernet connectivity is provided through the debug card. Enable the use of SMC911X driver in configuration header and set the associated configurations such as Ethernet MAC, Base address, 16-bit or 32-bit Bus mode etc too.

· Initialization of Memory System – Both boot loader and operating system will be executing in RAM. So RAM needs to initialized to proper timings and U-Boot should be made aware of available RAM though the configuration header.

· TFTP Server Settings – The IP address of TFTP server along needs to be specified to fetch the kernel image.

· Kernel Boot arguments – All information of hardware like available RAM, MTD partitions etc are passed on to the kernel as ATAG list. Some of the major arguments that needs to be passed on the kernel are:

Kernel default console

Root file system path

Initrd to use (optional)

Display

Init Path

The purpose of each of these arguments will be explained in subsequent sections.

Notes

· While loading OS Image and other File system images over Ethernet or any other medium, pay attention to the load address, make sure that they are not over lapping.

· It is advisable to make the root file system as Read-only while mounting or in Bootargs to avoid corruption. This will enable bringing up the system with a basic environment.

Categories: ,

0 Response for the "Boot loader Porting"

Post a Comment