qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] Maintainers, please tell us how to boot your machines!


From: Edgar E. Iglesias
Subject: Re: [Qemu-devel] Maintainers, please tell us how to boot your machines!
Date: Wed, 13 Mar 2019 17:59:33 +0100
User-agent: Mutt/1.10.1 (2018-07-13)

On Tue, Mar 12, 2019 at 06:36:05PM +0100, Markus Armbruster wrote:

Hi,

Here are some steps. If you have a hard time finding any particular file
let me know and I can send them to you.


>     = hw/arm/xilinx_zynq.c =
>     "Edgar E. Iglesias" <address@hidden> (maintainer:Xilinx Zynq)
>     Alistair Francis <address@hidden> (maintainer:Xilinx Zynq)
>     Peter Maydell <address@hidden> (maintainer:Xilinx Zynq)
>     address@hidden (open list:Xilinx Zynq)

You'll need suitable ARMv7 Linux or u-boot images. You can build on your own
or download from Xilinx, we provide pre-built images (will need to register):
https://www.xilinx.com/support/download/index.html/content/xilinx/en/downloadNav/embedded-design-tools.html
Download the ZC702 or the ZED BSP, untar it, cd into pre-builts and run:
tar -xzvf avnet-digilent-zedboard-v2018.3-final.bsp
cd avnet-digilent-zedboard-2018.3/pre-built/linux/images/

qemu-system-aarch64 -M xilinx-zynq-a9 -serial null -serial stdio -kernel zImage 
-dtb system.dtb  -m 1024

If using PetaLinux BSP images from Xilinx, login as root/root.


>
>     = hw/arm/xlnx-versal-virt.c =
>     Alistair Francis <address@hidden> (maintainer:Xilinx ZynqMP)
>     "Edgar E. Iglesias" <address@hidden> (maintainer:Xilinx ZynqMP)
>     Peter Maydell <address@hidden> (maintainer:Xilinx ZynqMP)
>     address@hidden (open list:Xilinx ZynqMP)

You'll need an Aarch64 Linux kernel. Ubuntus installer for example:
http://ports.ubuntu.com/ubuntu-ports/dists/cosmic-updates/main/installer-arm64/current/images/netboot/ubuntu-installer/arm64/
Download linux and initrd.gz

qemu-system-aarch64 -M xlnx-versal-virt -m 2G -serial mon:stdio -display none 
-device virtio-rng-device,bus=virtio-mmio-bus.0 -kernel linux -initrd initrd.gz


>
>     = hw/arm/xlnx-zcu102.c =
>     Alistair Francis <address@hidden> (maintainer:Xilinx ZynqMP)
>     "Edgar E. Iglesias" <address@hidden> (maintainer:Xilinx ZynqMP)
>     Peter Maydell <address@hidden> (maintainer:Xilinx ZynqMP)
>     address@hidden (open list:Xilinx ZynqMP)

https://www.xilinx.com/support/download/index.html/content/xilinx/en/downloadNav/embedded-design-tools.html
Download the ZCU102 BSP

tar -xzvf xilinx-zcu102-v2018.3-final.bsp
cd xilinx-zcu102-2018.3/pre-built/linux/images/
qemu-system-aarch64 -M xlnx-zcu102  -serial stdio -m 2G -kernel xen-Image -dtb 
zcu102.dtb -initrd rootfs.cpio.gz -append "rdinit=/bin/sh console=ttyPS0 
maxcpus=4 earlycon=cdns,mmio,0xFF000000,115200n8"

Alternatively you can use TBM, see further down the email.

>
>     = hw/cris/axis_dev88.c =
>     "Edgar E. Iglesias" <address@hidden> (maintainer:Axis Dev88)
>

http://wiki.qemu.org/download/cris-axisdev88-img-linux2_6_33.tgz
The archive contains a run-script.
At the prompt run /selftest.sh


>     = hw/microblaze/petalogix_ml605_mmu.c =
>     "Edgar E. Iglesias" <address@hidden> (maintainer:petalogix_ml605)
>
>     = hw/microblaze/petalogix_s3adsp1800_mmu.c =
>     "Edgar E. Iglesias" <address@hidden> (maintainer:petalogix_s3adsp1800)

We used to publish images for these on the QEMU wiki but they seem to be gone 
now.
You can download pre-built MicroBlaze toolchains from Xilinx and build a
kernel + rootfs on your own.

qemu-system-microblaze -M petalogix-ml605 -nographic -kernel Image
qemu-system-microblaze -M petalogix-s3adsp1800 -nographic -kernel Image

Alternatively, you can try them using TBM:
git clone https://github.com/edgarigl/tbm.git
cd tbm

Create a .config file pointing to toolchains (something like the following):
cat .config
AARCH64_CROSS=/opt/Xilinx/SDK/2018.3/gnu/aarch64/lin/aarch64-none/bin/aarch64-none-elf-
ARM_CROSS=/opt/Xilinx/SDK/2018.3/gnu/armr5/lin/gcc-arm-none-eabi/bin/armr5-none-eabi-
MB_CROSS=/opt/Xilinx/SDK/2018.3/gnu/microblaze/lin/bin/microblaze-xilinx-elf-

Build:
make CFG=configs/petalogix-ml605.cfg
make CFG=configs/petalogix-s3adsp1800.cfg
make CFG=configs/zynqmp-apu.cfg

Run:
qemu-system-microblazeel -M petalogix-ml605 -serial stdio -kernel 
build/petalogix-ml605/main/ctest-bare

qemu-system-microblazeel -M petalogix-s3adsp1800 -serial stdio -kernel 
build/petalogix-s3adsp1800/main/ctest-bare

qemu-system-aarch64 -M xlnx-zcu102,secure=on -serial stdio -kernel 
build/zynqmp/apu/ctest-bare


>     = hw/microblaze/xlnx-zynqmp-pmu.c =
>     Alistair Francis <address@hidden> (maintainer:Xilinx ZynqMP)
>     "Edgar E. Iglesias" <address@hidden> (maintainer:Xilinx ZynqMP)
>     Peter Maydell <address@hidden> (maintainer:Xilinx ZynqMP)
>     address@hidden (open list:Xilinx ZynqMP)

This board is WiP and can't really run SW that outputs stuff yet.
Just creating the machine asserts is probably enough testing for now.

Cheers,
Edgar



reply via email to

[Prev in Thread] Current Thread [Next in Thread]