Dear all.
Because of the project requriement, I need to compile the kernel to replace the original one. Lacking of the Android compiling environment, so I decided to unpacking the original boot.img, and replace the kernel image and then pack it again through the tools mkbootimg
So my question is what's the function of uImage. As the User Guide said, the uboot can only boot the image which is added by 'mkimage' tool. But the truth is not like that.
Here the text I extract from the User Guilde elaborating the function of mkimage
Any image that should be loaded by U-Boot must have an unique image head. For
example, data must be added at the head of the loaded image to tell U-Boot about the
image (i.e., it's a kernel, or ramfs, etc) and how to load the image (i.e., load/execute
address). Before you can load any image into RAM by U-Boot, you need a tool to add
this information and generate a new image which can be recognized by U-Boot. The tool
is delivered together with U-Boot. After you set up U-Boot using the steps outlined
above, you can find the tool (mkimage) under tools/. The process of using mkimage to
generate an image (for example, kernel image and ramfs image), which is to be loaded by
U-Boot, is outlined in the subsequent sections of this document.
Hi,
As far as I know newer versions of U-boot are able to use a zImage.
Which error are you getting when tryin to use the uImage ?
Best Regards,
Alejandro
Hi Alejandro
Thx for your reply, the problem is that when I used the uImage, the Uboot can't boot the kernel successfully because of the added header filled by the tool 'mkimage'. But based on the this condition, why the User Guilde still propose that the uImage should be generated for Uboot? I can't understand the function of uImage.
Please check in the boot script and the environment variables that you are using the bootm command and not the bootz.
The bootz command is used for the zImage not the uImage.