
Hi Abdullah,
On Tue, May 6, 2014 at 10:55 AM, Abdullah YILDIZ abdullah.mails@gmail.com wrote:
I'm trying to understand how u-boot loads zImage into RAM.
mkimage is called as
mkimage -A arm -O linux -T kernel -C none -a 0x80008000 -e 0x80008040 -d arch/arm/boot/zImage /bootImage/uImage
Here, 'a' stands for load address and 'e' stands for entry point (64 bytes are used for wrapping?). However, when loading uImage from u-boot, boot operation starts at address 0x80100000. Furthermore, u-boot recognizes the load address and entry point as 0x80008000.
Kernel uImage is loaded from NAND to ram at address which $loadaddr points to (check print $loadaddr) or env command which loading kerenl image from NAND. Then by bootm command is copied to address which is specified in mkimage (e.g. 0x80008000). Hope this helps.
Loading from NAND 128MiB 3,3V 8-bit, offset 0x1c0000 Image Name: Linux-2.6.27.8 Image Type: ARM Linux Kernel Image (uncompressed) Data Size: 1735148 Bytes = 1.7 MB Load Address: 80008000 Entry Point: 80008000
## Booting kernel from Legacy Image at 80100000 ... Image Name: Linux-2.6.27.8 Image Type: ARM Linux Kernel Image (uncompressed) Data Size: 1735148 Bytes = 1.7 MB Load Address: 80008000 Entry Point: 80008000 Verifying Checksum ... OK Loading Kernel Image ... OK
OK
Starting kernel ...
Could you help me with this?
abdullah _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
BR,
marek