[meta-xilinx] How to make uImage for zynqmp

Mike Looijmans mike.looijmans at topic.nl
Mon Oct 10 03:00:23 PDT 2016


On 10-10-16 11:44, Cai, Chuntian (GE Transportation) wrote:
> Hi Nathan
>
> I am not aware of that uImage is obsoleted for arm64, could you tell me how to use booti command to boot linux?
>
> What address and how to set dtb and rootfs?

Ah, now we're getting to the real question.

Just looking at the u-boot source code reveils how it's done:

https://github.com/Xilinx/u-boot-xlnx/blob/master/include/configs/xilinx_zynqmp.h#L189

booti $kernel_addr - $fdt_addr


> 

Kind regards,

Mike Looijmans
System Expert

TOPIC Products
Materiaalweg 4, NL-5681 RJ Best
Postbus 440, NL-5680 AK Best
Telefoon: +31 (0) 499 33 69 79
E-mail: mike.looijmans at topicproducts.com
Website: www.topicproducts.com

Please consider the environment before printing this e-mail





-----Original Message-----
> From: Nathan Rossi [mailto:nathan at nathanrossi.com]
> Sent: Monday, October 10, 2016 5:31 PM
> To: Cai, Chuntian (GE Transportation)
> Cc: meta-xilinx at yoctoproject.org; Mike Looijmans
> Subject: EXT: Re: [meta-xilinx] How to make uImage for zynqmp
>
> On Mon, Oct 10, 2016 at 3:46 PM, Mike Looijmans <mike.looijmans at topic.nl> wrote:
>> On 09-10-16 03:20, Cai, Chuntian (GE Transportation) wrote:
>>
>>> I using bitbake build Linux system for zcu102 board.
>>>
>>> I issue bitbake core-image-x11 , then I can found Image file in the
>>> deploy folder, But I could not find uImage, and I want use uImage
>
> uImage is not a valid target for aarch64/arm64 in the kernel (like it is for arm). This is because "uImage" is actually shorthand for u-boot wrapped zImage. And arm64 does not have support for zImage, thus also does not have a uImage target.
>
> (arm targets) https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/arch/arm/Makefile?id=refs/tags/v4.8#n365
> (arm64 targets)
> https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/arch/arm64/Makefile?id=refs/tags/v4.8#n135
>
> ---
>
> A good question is why do you want to use uImage? If you are not aware it is possible to boot a linux "Image" with the U-Boot "booti"
> command.
>
> However it is possible to wrap the kernel image with mkimage (or a FIT blob if you are prepared to configure the image tree). For wrapping with mkimage the command you will need is similar to:
>
> mkimage -A arm64 -O linux -T kernel -C none -a 0x80000 -e 0x80000 -d Image Image.ub
>
> Also if you need mkimage, run the command using the mkimage built by OE from the sysroot relative to the tmp/deploy/images/<machine>/ directory of your build (assuming you are on a x86_64 host):
>
> ../../../sysroots/x86_64-linux/usr/bin/mkimage ...
>
>>>
>>>
>>> Could you tell me how to build uImage rather than Image
>>
>>
>> Just setting KERNEL_IMAGETYPE="uImage" in the kernel recipe or machine
>> config would do that.
>>
>> I think you can even specify multiple types in there.
>
> You can, KERNEL_IMAGETYPES += "<extra ones>"
>
> Regards,
> Nathan
>
>>
>>
>>
>> Kind regards,
>>
>> Mike Looijmans
>> System Expert
>>
>> TOPIC Products
>> Materiaalweg 4, NL-5681 RJ Best
>> Postbus 440, NL-5680 AK Best
>> Telefoon: +31 (0) 499 33 69 79
>> E-mail: mike.looijmans at topicproducts.com
>> Website: www.topicproducts.com
>>
>> Please consider the environment before printing this e-mail
>>
>>
>>
>>
>>
>> --
>> _______________________________________________
>> meta-xilinx mailing list
>> meta-xilinx at yoctoproject.org
>> https://lists.yoctoproject.org/listinfo/meta-xilinx




More information about the meta-xilinx mailing list