Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

how to load linux kernel image address into boot loader

Status
Not open for further replies.

gopintj

Member level 4
Joined
Sep 1, 2010
Messages
77
Helped
4
Reputation
8
Reaction score
4
Trophy points
1,298
Location
Thirukalukalukundra, Kanchipuram, Tamilnadu, India
Activity points
1,953
Hi all.

Currently, i am learning Embedded linux in which i am supposed to create a kernel image along with u-boot image and have to load it into ARM development board. I have successfully compiled linux kernel 3.8.5. After this, i need to create a u boot image. I am planning to create this uImage file using "mkimage" command.

Here are my questions.

1. By using "mkimage" command, how can i make my uImage file tobe burned into my processor's reset vector address?
2. what do "-a" and "-e" in mkimage command mean?
3. will uImage automatically get kernel image and load it into RAM once after i download this uImage into flash? If No, how do i have to program the boot loader to get and load kernel image into RAM in my target board.?
 

Here is the man page for mkImage: https://linux.die.net/man/1/mkimage

mkImage is used to create linux image for use with U-Boot Bootloader.

Example : mkimage -A arm -C none -O linux -T kernel -d zImage -a 0x00010000 -e 0x00010000 zImage.uimg

-a refers to the load address
-e refers to the entry point

these two refer to from where the kernel is loaded.

You can also create a uImage for uncompressed version.


May I know which board are you using?
 

I use Mini2440 development kit.

Could you please explain me about how to burn my zImage and uImage files into my development board via TFTP or by any other method?

I have created a zImage using make ARCH=arm CROSS_COMPILE=/(Location of the boof folder of arm folder of the kernel)
After this, i created uImage by giving -a 0xfffffff2 -e 0xfffffff2 values in mkimage command. Here is my doubt. What do these two values really do. What should be the load address and entry point for my board?
 
Last edited:

Hi mr Arun.

I have one more doubt. Without switching to NAND flash, i need to boot my mini2440 via a SD Card. For this, i have googled many times and found few steps.

In some of the websites, they mentioned to create 2 new partitions (BOOT and RFS) partitions in which BOOT partition should be formatted with FAT 32 file system and RFS(Root file system) should be formatted in ext3 format. I have done these formatting and copied Root file system files into RFS folder.

Whats my doubt in this is, in that website which i got this information, they asked me to copy u-boot.bin file (which is the file to execute u-Boot directly) and kernel image (uImage) into the BOOT folder.

While i copied these two files and put my SD card into my mini2440(switch directing to NOR flash), i couldn't get anything booting. I am getting the normal super vivi display.

Do we have to add anyother script files into BOOT folder of SD card in order to make things work?
 

Status
Not open for further replies.

Similar threads

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top