• 0
aliumair

how to link device tree bin to u-boot binary?

Question

Hi

 

My first post to this forum.

I am trying to compile U-boot for my Zybo board. I cloned U-boot from Github Xilinx. In the U-boot dir, I ran the following make commands:

> make zynq_zybo_config

> make

Make went fine and created u-boot executable.

I loaded and ran fsbl first. It went fine and I saw right output on terminal.

Then I load u-boot and tried running it and got the following error

No valid device tree binary found - please append one to U-Boot binary, use u-boot-dtb.bin or define CONFIG_OF_EMBED. For sandbox, use -d <file.dtb>
 

Can somebody help me understand how to append u-boot-dtb.bin to u-boot bin. I can see u-boot-dtb.bin in the same directory where I have u-boot file.

 

An advance thanks :)

 

Share this post


Link to post
Share on other sites

10 answers to this question

Recommended Posts

  • 0

Hi @aliumair,

Here is an older Instructable for using the U-BOOT and the Zybo. It uses Vivado 2016.1 but should be similar process with a newer version of Vivado.

On the resource center here  under Additional Resources there is the SD card OOB QSPI Demo that should be helpful with how the device tree and u-boot files should look.  For the SD card OOB QSI Demo copy the files found in this compressed file to a microSD card and boot the ZYBO from it to restore the Quad SPI flash with the factory default. It will take several minutes to complete. 

The Zybo Base System Design in the Additional resources might be a good source of information as well.

Another good source of information is the ZYNQ Book here.

cheers,

Jon

Share this post


Link to post
Share on other sites
  • 0

All that needs to be done in this case is add the CONFIG_OF_EMBED option to your U-Boot defconfig file and then recompile.  this will embed the device tree inside the U-boot binary image.

Share this post


Link to post
Share on other sites
  • 0
On 12/21/2018 at 3:48 AM, svet-am said:

 

hello svet-am

can you please tell me how to add CONFIG_OF_EMBED file ,,i mean can you tell me exact path for adding this file

thank-you

 

Share this post


Link to post
Share on other sites
  • 0

Please follow these instructions to build a petalinux image for Zybo.

To build just u-boot, run

petalinux-build -c u-boot

The command in the document that packs BOOT.BIN is 

petalinux-package --boot --force --fsbl images/linux/zynq_fsbl.elf --fpga images/linux/system_wrapper.bit --u-boot

 

Share this post


Link to post
Share on other sites
  • 0
On 2/2/2019 at 1:22 AM, jpeyron said:

Hi @Sarika Athya,

I will reach out to more embedded linux engineers to see if they have any input for you. I did find some web pages that look like they would be helpful here  and here .The  Xilinx's u-boot might be helpful as well.

thank you,

Jon

Hi jpeyron..

thanks for your reply ..its really helpful for me .. i have been successfully run linux on zynq using JTAG....

but can you please tell me how to access processor after running linux on zynq ...i mean i need commands for access the processor....

like      ..........         cat /proc/cpuinfo   

like i need  help command  ...

any pdf or any document you have .......

i am adding the log of linux after running ............

 

 

##############################################################3

rcS Complete


zynq> help
-/bin/ash: help: not found

zynq> zynq help
-/bin/ash: zynq: not found
zynq> taskset --help
BusyBox v1.20.1 (2012-11-27 13:37:12 MST) multi-call binary.

Usage: taskset [-p] [MASK] [PID | PROG ARGS]

Set or get CPU affinity

    -p    Operate on an existing PID

zynq> cat /proc/cpuinfo
processor    : 0
model name    : ARMv7 Processor rev 0 (v7l)
BogoMIPS    : 650.00
Features    : half thumb fastmult vfp edsp neon vfpv3 tls vfpd32
CPU implementer    : 0x41
CPU architecture: 7
CPU variant    : 0x3
CPU part    : 0xc09
CPU revision    : 0

processor    : 1
model name    : ARMv7 Processor rev 0 (v7l)
BogoMIPS    : 650.00
Features    : half thumb fastmult vfp edsp neon vfpv3 tls vfpd32
CPU implementer    : 0x41
CPU architecture: 7
CPU variant    : 0x3
CPU part    : 0xc09
CPU revision    : 0

Hardware    : Xilinx Zynq Platform
Revision    : 0003
Serial        : 0000000000000000
zynq> --help
-/bin/ash: --help: not found
zynq> ls
README          home            lost+found      root            update_qspi.sh
bin             lib             mnt             sbin            usr
dev             licenses        opt             sys             var
etc             linuxrc         proc            tmp

thanks

Share this post


Link to post
Share on other sites
  • 0

I'm not sure what your question is.

You asked about running "cat /proc/cpuinfo", but then your log shows that you successfully ran that command.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now