From ebb718efd39c2fd64ebee6e7c40acaa2b5f8050d Mon Sep 17 00:00:00 2001 From: Nathan Rossi Date: Sat, 3 Sep 2016 23:33:28 +1000 Subject: ep108-zynqmp, zcu102-zynqmp: Add runqemu support The ep108-zynqmp machine already has support in QEMU however was exposed as the qemuzynqmp machine. QEMU 2.7 introduced support for the 'xlnx-zcu102' machine model. This allows for runqemu to boot a machine based on the ep108 or zcu102 hardware. The support added is based on the configuration that was in qemuzynqmp. Signed-off-by: Nathan Rossi --- README.md | 2 +- conf/machine/ep108-zynqmp.conf | 12 +++++++++++- conf/machine/zcu102-zynqmp.conf | 16 ++++++++++++++++ 3 files changed, 28 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 11b21984..491b19c4 100644 --- a/README.md +++ b/README.md @@ -26,7 +26,7 @@ Boards/Machines supported by this layer: * [Digilent Zybo Linux BD](conf/machine/zybo-linux-bd-zynq7.conf) - `zybo-linux-bd-zynq7` * ZynqMP: * [Xilinx EP108](conf/machine/ep108-zynqmp.conf) - `ep108-zynqmp` (QEMU support) - * [Xilinx ZCU102](conf/machine/zcu102-zynqmp.conf) - `zcu102-zynqmp` + * [Xilinx ZCU102](conf/machine/zcu102-zynqmp.conf) - `zcu102-zynqmp` (QEMU support) Additional information on Xilinx architectures can be found at: http://www.xilinx.com/support/index.htm diff --git a/conf/machine/ep108-zynqmp.conf b/conf/machine/ep108-zynqmp.conf index 17363ef5..2eabecf3 100644 --- a/conf/machine/ep108-zynqmp.conf +++ b/conf/machine/ep108-zynqmp.conf @@ -21,5 +21,15 @@ UBOOT_ENTRYPOINT = "0x80000" EXTRA_IMAGEDEPENDS += "arm-trusted-firmware" -QEMU_DTB = "${KERNEL_IMAGETYPE}-${@os.path.splitext(os.path.basename(d.getVar("KERNEL_DEVICETREE",True)))[0]}" +# For runqemu +IMAGE_CLASSES += "qemuboot" +QB_SYSTEM_NAME = "qemu-system-aarch64" +QB_MACHINE = "-machine xlnx-ep108" +QB_MEM = "-m 2048" +QB_DTB = "${KERNEL_IMAGETYPE}-${@os.path.splitext(os.path.basename(d.getVar("KERNEL_DEVICETREE",True)))[0]}.dtb" +QB_OPT_APPEND = "-nographic -serial mon:stdio -serial null" +QB_DEFAULT_FSTYPE = "cpio" +QB_KERNEL_CMDLINE_APPEND = "console=ttyPS0" +QB_TAP_OPT = "-netdev tap,id=net0,ifname=@TAP@,script=no,downscript=no -net nic,netdev=net0,macaddr=@MAC@" +QB_SLIRP_OPT = "-netdev user,id=net0 -net nic,netdev=net0" diff --git a/conf/machine/zcu102-zynqmp.conf b/conf/machine/zcu102-zynqmp.conf index 11a8ddbf..f762922a 100644 --- a/conf/machine/zcu102-zynqmp.conf +++ b/conf/machine/zcu102-zynqmp.conf @@ -9,6 +9,9 @@ require conf/machine/include/machine-xilinx-board.inc MACHINE_FEATURES = "rtc ext2 ext3 vfat usbhost mali" +# This machine has a qemu machine model +EXTRA_IMAGEDEPENDS += "qemu-native qemu-helper-native" + UBOOT_MACHINE = "xilinx_zynqmp_zcu102_revB_defconfig" SERIAL_CONSOLE = "115200 ttyPS0" @@ -21,3 +24,16 @@ PREFERRED_PROVIDER_virtual/bootloader ?= "u-boot-xlnx" EXTRA_IMAGEDEPENDS += "\ arm-trusted-firmware \ " + +# For runqemu +IMAGE_CLASSES += "qemuboot" +QB_SYSTEM_NAME = "qemu-system-aarch64" +QB_MACHINE = "-machine xlnx-zcu102" +QB_MEM = "-m 2048" +QB_DTB = "${KERNEL_IMAGETYPE}-${@os.path.splitext(os.path.basename(d.getVar("KERNEL_DEVICETREE",True)))[0]}.dtb" +QB_OPT_APPEND = "-nographic -serial mon:stdio -serial null" +QB_DEFAULT_FSTYPE = "cpio" +QB_KERNEL_CMDLINE_APPEND = "console=ttyPS0" +QB_TAP_OPT = "-netdev tap,id=net0,ifname=@TAP@,script=no,downscript=no -net nic -net nic -net nic -net nic,netdev=net0,macaddr=@MAC@" +QB_SLIRP_OPT = "-netdev user,id=net0 -net nic -net nic -net nic -net nic,netdev=net0" + -- cgit v1.2.3-54-g00ecf