summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xscripts/runqemu6
-rwxr-xr-xscripts/runqemu-internal15
2 files changed, 20 insertions, 1 deletions
diff --git a/scripts/runqemu b/scripts/runqemu
index 406092be3c..5ad83dd215 100755
--- a/scripts/runqemu
+++ b/scripts/runqemu
@@ -107,7 +107,8 @@ KVM_ENABLED="no"
while true; do
arg=${1}
case "$arg" in
- "qemux86" | "qemux86-64" | "qemuarm" | "qemumips" | "qemumipsel" | "qemumips64" | "qemush4" | "qemuppc")
+ "qemux86" | "qemux86-64" | "qemuarm" | "qemumips" | "qemumipsel" | \
+ "qemumips64" | "qemush4" | "qemuppc" | "qemuzynq")
[ -z "$MACHINE" ] && MACHINE=$arg || \
error "conflicting MACHINE types [$MACHINE] and [$arg]"
;;
@@ -308,6 +309,9 @@ QEMUSH4_DEFAULT_FSTYPE=ext3
QEMUPPC_DEFAULT_KERNEL=vmlinux-qemuppc.bin
QEMUPPC_DEFAULT_FSTYPE=ext3
+QEMUZYNQ_DEFAULT_KERNEL=uImage
+QEMUZYNQ_DEFAULT_FSTYPE=cpio
+
AKITA_DEFAULT_KERNEL=zImage-akita.bin
AKITA_DEFAULT_FSTYPE=jffs2
diff --git a/scripts/runqemu-internal b/scripts/runqemu-internal
index 4f3ba7b882..f156c4dae5 100755
--- a/scripts/runqemu-internal
+++ b/scripts/runqemu-internal
@@ -59,6 +59,9 @@ else
"qemush4")
mem_size=1024
;;
+ "qemuzynq")
+ mem_size=1024
+ ;;
*)
mem_size=64
;;
@@ -270,6 +273,7 @@ case "$MACHINE" in
"qemuarmv7") ;;
"qemux86") ;;
"qemux86-64") ;;
+ "qemuzynq") ;;
"akita") ;;
"spitz") ;;
*)
@@ -492,6 +496,17 @@ if [ "$MACHINE" = "akita" ]; then
fi
fi
+if [ "$MACHINE" = "qemuzynq" ]; then
+ QEMU=qemu-system-arm
+ QEMU_SYSTEM_OPTIONS="-M xilinx-zynq-a9 -serial null -serial mon:stdio -dtb $KERNEL-$MACHINE.dtb"
+ # zynq serial ports are named 'ttyPS0' and 'ttyPS1', fixup the default values
+ SCRIPT_KERNEL_OPT=$(echo "$SCRIPT_KERNEL_OPT" | sed 's/console=ttyS/console=ttyPS/g')
+ if [ "${FSTYPE:0:3}" = "ext" -o "${FSTYPE:0:4}" = "cpio" ]; then
+ KERNCMDLINE="earlyprintk root=/dev/ram rw"
+ QEMUOPTIONS="$QEMU_SYSTEM_OPTIONS -initrd $ROOTFS"
+ fi
+fi
+
if [ "x$RAMFS" = "xtrue" ]; then
QEMUOPTIONS="-initrd $ROOTFS -nographic"
KERNCMDLINE="root=/dev/ram0 debugshell"