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!

Reply

How to use QEMU with Flattened Image Tree uImage?

Highlighted
Observer
Posts: 11
Registered: ‎12-11-2017

How to use QEMU with Flattened Image Tree uImage?

 Hi all,

 

I am currently working on emulating ZYNQ with QEMU. According to this wiki page, I need to prepare a kernel image file (uImage), a device tree blob (*.dtb), and an initrd image file (uramdisk.image.gz). Although the only file I got is a Flattened Image Tree uImage file (image.ub), I tried this tutorial and split it into those three files with dumpimage. After that, I tried to run the emulation with following command.

$ ./aarch64-softmmu/qemu-system-aarch64 \
    -M arm-generic-fdt-7series -machine linux=on \
    -serial /dev/null -serial mon:stdio -display none \
    -kernel uImage -dtb system.dtb --initrd uramdisk.image.gz

 

The emulation looked well but it seemed to stop at the I2C driver and refuse to go any further. Here is a screenshot of the Linux booting log.

qemu-log.jpg

 

Is it possible that I messed up something during splitting the image.ub file? Or is there something wrong with the QEMU emulator?

 

Thanks for any suggestions.

 

P.S. Here are the commands I used to split the image.ub file. 

dumpimage -i image.ub -T flat_dt -p 0 uImage
dumpimage -i image.ub -T flat_dt -p 1 system.dtb
dumpimage -i image.ub -T flat_dt -p 2 uramdisk.image.gz

 Also here is the dump information of image.ub file.

dump.jpg