UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

cancel
Showing results for 
Search instead for 
Did you mean: 
Participant thburghout
Participant
1,175 Views
Registered: ‎10-27-2017

Pre-built image structure

Jump to solution

Hi all,

 

I'm just starting with PetaLinux and I don't seem to get my head around the various resulting images. The prebuilt/linux directory contains the following files:

-rw-rw-r-- 1 user user 2.1M Oct 26 16:29 BOOT.BIN
-rw-r--r-- 1 user user  18K Oct 26 16:29 system.dtb
-rw-r--r-- 1 user user 2.1M Oct 26 16:29 System.map.linux
-rw-r--r-- 1 user user 2.7M Oct 26 16:29 u-boot.elf
-rw-r--r-- 1 user user 9.0M Oct 26 16:29 zImage
-rw-r--r-- 1 user user 146K Oct 26 16:29 zynq_fsbl.elf

Most tutorials state that BOOT.BIN is the only image I need to flash. But I don't believe this since it obviously bigger than u-boot and zImage, even though zImage is already compiled.

 

Could someone explain what the different files are (specifically boot.bin, *.dtb, *.linux)?

 

There's a custom flash chip present on the board to which I need to flash the zImage, since the standard flash is not big enough right?

0 Kudos
1 Solution

Accepted Solutions
Xilinx Employee
Xilinx Employee
1,754 Views
Registered: ‎07-29-2011

Re: Pre-built image structure

Jump to solution

hi,

As rightly pointed out by Jeff,

 

Boot.bin contains fsbl, bitstream and uboot

And this is a bootable image , which should be copied to your flash media like, qspi or sd

After you switch to the required boot mode settings on your board, you should be able to get the uboot prompt on the serial console.

So, your first stage and second stage boot loader are now UP

 

From uboot, inorder to bring Linux , you need

Root file system, device tree (.dtb) and your Linux image

 

FIT image is one, which contains all the three in the form of image.ub

Otherwise , each of these needs to be copied to ddr or tftp and then copy to your flash using uboot commands

Wiki provides a clean explanations to these

http://www.wiki.xilinx.com/Zynq2017.3+Release

 

Regards

Madhubala

 

 

3 Replies
Adventurer
Adventurer
1,148 Views
Registered: ‎10-04-2017

Re: Pre-built image structure

Jump to solution

  the boot.bin will contain the fsbl, bit file and u-boot.   If on ultrascale it will also have pmu and atf files in it.   zimage is the compressed kernel and the dtb is the device tree for the kernel.   Some of the file in your directory are just for reference, for example u-boot is already in the boot.bin.

  I'm not sure what directory you are looking at but I don't see a rootfs file unless you have a FIT image which combines the kernel and rootfs.  However, those usually have a .ub suffix.  I would expect to see a cpio or gz file for the rootfs.

 

jeff

 

Xilinx Employee
Xilinx Employee
1,755 Views
Registered: ‎07-29-2011

Re: Pre-built image structure

Jump to solution

hi,

As rightly pointed out by Jeff,

 

Boot.bin contains fsbl, bitstream and uboot

And this is a bootable image , which should be copied to your flash media like, qspi or sd

After you switch to the required boot mode settings on your board, you should be able to get the uboot prompt on the serial console.

So, your first stage and second stage boot loader are now UP

 

From uboot, inorder to bring Linux , you need

Root file system, device tree (.dtb) and your Linux image

 

FIT image is one, which contains all the three in the form of image.ub

Otherwise , each of these needs to be copied to ddr or tftp and then copy to your flash using uboot commands

Wiki provides a clean explanations to these

http://www.wiki.xilinx.com/Zynq2017.3+Release

 

Regards

Madhubala

 

 

Participant thburghout
Participant
1,073 Views
Registered: ‎10-27-2017

Re: Pre-built image structure

Jump to solution

Thank you both! Helped me a lot.

 

I found more images in images/linux

-rw-r--r-- 1 user user  2083850 Oct 31 16:17 project_wrapper.bit
-rw-rw-r-- 1 user user 14622936 Oct 31 16:27 BOOT.BIN
-rw-r--r-- 1 user user  9248984 Oct 31 16:26 image.ub
-rw-r--r-- 1 user user 11412480 Oct 31 16:26 rootfs.cpio
-rw-r--r-- 1 user user  5486731 Oct 31 16:26 rootfs.cpio.gz
-rw-r--r-- 1 user user  5499538 Oct 31 16:26 rootfs.tar.gz
-rw-r--r-- 1 user user    18427 Oct 31 16:18 system.dtb
-rw-r--r-- 1 user user  2166859 Oct 31 16:21 System.map.linux
-rw-r--r-- 1 user user   343172 Oct 31 16:19 u-boot.bin
-rw-r--r-- 1 user user  2794712 Oct 31 16:19 u-boot.elf
-rw-r--r-- 1 user user 11359540 Oct 31 16:21 vmlinux
-rw-r--r-- 1 user user  9205704 Oct 31 16:21 zImage
-rw-r--r-- 1 user user   149068 Oct 31 09:26 zynq_fsbl.elf

What's included is very clear to me now.

 

Also I'm now using petalinux-package --boot --fpga --u-boot --kernel to create a single bin file containing all components. I'm using the flash utility of the XSDK 2015.4 (since 2017 asks for a separate FSBL file, and fails on the verifying step) to flash the bin file successfully.

 

 

0 Kudos