scripts/runqemu: Add support for 'qemuzynq' machine

* Add support to boot the 'qemuzynq' machine in qemu-system-arm
* Use the specific machine model for Zynq 'xilinx-zynq-a9'
* Use the DTB generated from the kernel build as the DTB for boot
* Force use of initrd rootfs (either in ext or cpio formats)

(From OE-Core rev: 1e4b1d95e1f47654e928f38cd091ffe272689844)

Signed-off-by: Nathan Rossi <nathan.rossi@xilinx.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Nathan Rossi 2013-07-04 07:47:01 +00:00 committed by Richard Purdie
parent ce1638c50d
commit 41563388ed
2 changed files with 20 additions and 1 deletions

View File

@ -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

View File

@ -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"