From d2a7c1db9bff6ae3844e3d017e94f29d1501bf57 Mon Sep 17 00:00:00 2001 From: Alistair Francis Date: Thu, 12 May 2016 14:37:39 -0700 Subject: runqemu: Add suport for qemuzynqmp Signed-off-by: Alistair Francis Signed-off-by: Ross Burton --- scripts/runqemu | 9 ++++++++- scripts/runqemu-internal | 21 +++++++++++++++++++++ 2 files changed, 29 insertions(+), 1 deletion(-) diff --git a/scripts/runqemu b/scripts/runqemu index d7fa941a66..de0503546c 100755 --- a/scripts/runqemu +++ b/scripts/runqemu @@ -121,7 +121,7 @@ while true; do arg=${1} case "$arg" in "qemux86" | "qemux86-64" | "qemuarm" | "qemuarm64" | "qemumips" | "qemumipsel" | \ - "qemumips64" | "qemush4" | "qemuppc" | "qemumicroblaze" | "qemuzynq") + "qemumips64" | "qemush4" | "qemuppc" | "qemumicroblaze" | "qemuzynq" | "qemuzynqmp") [ -z "$MACHINE" -o "$MACHINE" = "$arg" ] && MACHINE=$arg || \ error "conflicting MACHINE types [$MACHINE] and [$arg]" ;; @@ -350,6 +350,10 @@ QEMUMICROBLAZE_DEFAULT_FSTYPE=cpio QEMUZYNQ_DEFAULT_KERNEL=uImage QEMUZYNQ_DEFAULT_FSTYPE=cpio +# Default to booting u-boot as a direct Linux boot isn't supported yet. +QEMUZYNQMP_DEFAULT_KERNEL=u-boot-qemuzynqmp.elf +QEMUZYNQMP_DEFAULT_FSTYPE=cpio + setup_path_vars() { if [ -z "$OE_TMPDIR" ] ; then PATHS_REQUIRED=true @@ -382,6 +386,9 @@ setup_path_vars() { if [ -z "$DEPLOY_DIR_IMAGE" ] ; then DEPLOY_DIR_IMAGE=`sed -n 's/^DEPLOY_DIR_IMAGE=\"\(.*\)\"/\1/p' $BITBAKE_ENV_TMPFILE` fi + if [ -z "$QEMU_DTB" ] ; then + QEMU_DTB=`sed -n 's/^QEMU_DTB=\"\(.*\)\"/\1/p' $BITBAKE_ENV_TMPFILE` + fi if [ -z "$OE_TMPDIR" ]; then # Check for errors from bitbake that the user needs to know about BITBAKE_OUTPUT=`cat $BITBAKE_ENV_TMPFILE | wc -l` diff --git a/scripts/runqemu-internal b/scripts/runqemu-internal index ac1c703c53..5671b4f434 100755 --- a/scripts/runqemu-internal +++ b/scripts/runqemu-internal @@ -498,6 +498,24 @@ config_qemuzynq() { fi } +config_qemuzynqmp() { + set_mem_size 2048 + QEMU=qemu-system-aarch64 + + export QEMU_AUDIO_DRV="none" + if [ "x$SERIALSTDIO" = "x" ] ; then + QEMU_UI_OPTIONS="-nographic" + else + QEMU_UI_OPTIONS="" + fi + + # Networking and system options required for QEMU ZynqMP machine + QEMU_NETWORK_CMD="-net nic -net nic -net nic -net nic -net user,net=10.10.70.0,dhcpstart=10.10.70.1,host=10.10.70.101" + QEMU_SYSTEM_OPTIONS="$QEMU_NETWORK_CMD -M xlnx-ep108 -serial mon:stdio -dtb $DEPLOY_DIR_IMAGE/${QEMU_DTB}.dtb" + + QEMUOPTIONS="$QEMU_SYSTEM_OPTIONS $QEMU_UI_OPTIONS -tftp $DEPLOY_DIR_IMAGE" +} + config_qemumicroblaze() { set_mem_size 256 QEMU=qemu-system-microblazeel @@ -533,6 +551,9 @@ case "$MACHINE" in "qemuzynq") config_qemuzynq ;; + "qemuzynqmp") + config_qemuzynqmp + ;; "qemumicroblaze") config_qemumicroblaze ;; -- cgit 1.2.3-korg