From 500b13fb564e7e44ee2d8bbffe6d03adb68bb401 Mon Sep 17 00:00:00 2001 From: Waldemar Brodkorb Date: Sat, 16 May 2015 16:36:07 +0200 Subject: add basic infrastructure for qemu-cris support --- target/cris/Makefile | 47 ++++++++++++++++++++++++++++++++++++++ target/cris/kernel/qemu-cris | 6 +++++ target/cris/systems/qemu-cris | 8 +++++++ target/cris/systems/toolchain-cris | 1 - 4 files changed, 61 insertions(+), 1 deletion(-) create mode 100644 target/cris/kernel/qemu-cris create mode 100644 target/cris/systems/qemu-cris (limited to 'target/cris') diff --git a/target/cris/Makefile b/target/cris/Makefile index ebc17340e..190460230 100644 --- a/target/cris/Makefile +++ b/target/cris/Makefile @@ -7,3 +7,50 @@ include $(ADK_TOPDIR)/mk/modules.mk include $(ADK_TOPDIR)/mk/kernel-build.mk include $(ADK_TOPDIR)/mk/image.mk +KERNEL:=$(LINUX_DIR)/vmlinux +ZKERNEL:=$(LINUX_DIR)/arch/cris/boot/Image +QEMU_ARGS:=-M axis-dev88 -nographic + +ifeq ($(ADK_TARGET_FS),initramfs) +targethelp: + @echo 'The kernel file is: $(FW_DIR)/${TARGET_KERNEL}' + @echo 'The initramfs image is: ${FW_DIR}/${INITRAMFS}' +ifeq ($(ADK_TARGET_QEMU),y) + @echo "Start qemu with following command line:" + @echo 'qemu-system-${ADK_TARGET_ARCH} ${QEMU_ARGS} -kernel $(FW_DIR)/$(TARGET_KERNEL) -initrd ${FW_DIR}/${INITRAMFS}' +endif +endif + +ifeq ($(ADK_TARGET_FS),initramfsarchive) +targethelp: + @echo 'The kernel file is: $(FW_DIR)/${TARGET_KERNEL}' + @echo "The RootFS tarball is: $(FW_DIR)/$(ROOTFSUSERTARBALL)" +endif +ifeq ($(ADK_TARGET_FS),initramfspiggyback) +targethelp: + @echo 'The kernel+initramfs file is: $(FW_DIR)/${TARGET_KERNEL}' +ifeq ($(ADK_TARGET_QEMU),y) + @echo "Start qemu with following command line:" + @echo 'qemu-system-${ADK_TARGET_ARCH} ${QEMU_ARGS} -kernel $(FW_DIR)/$(TARGET_KERNEL)' +endif +endif + +kernel-install: + @cp $(KERNEL) $(FW_DIR)/${TARGET_KERNEL} + +# filesystem specific targets +ifeq ($(ADK_TARGET_FS),archive) +imageinstall: $(FW_DIR)/$(ROOTFSTARBALL) targethelp +endif +ifeq ($(ADK_TARGET_FS),initramfs) +imageinstall: kernel-install $(FW_DIR)/$(INITRAMFS) targethelp +endif +ifeq ($(ADK_TARGET_FS),initramfsarchive) +imageinstall: kernel-install $(FW_DIR)/$(ROOTFSUSERTARBALL) targethelp +endif +ifeq ($(ADK_TARGET_FS),initramfspiggyback) +imageinstall: createinitramfs targethelp +endif +ifeq ($(ADK_TARGET_FS),nfsroot) +imageinstall: kernel-install $(FW_DIR)/$(ROOTFSUSERTARBALL) targethelp +endif diff --git a/target/cris/kernel/qemu-cris b/target/cris/kernel/qemu-cris new file mode 100644 index 000000000..234563c4b --- /dev/null +++ b/target/cris/kernel/qemu-cris @@ -0,0 +1,6 @@ +CONFIG_CRIS=y +CONFIG_ETRAXFS=y +CONFIG_ETRAX_ARCH_V32=y +CONFIG_ETRAXFS_SERIAL=y +CONFIG_ETRAX_SERIAL_PORTS=4 +CONFIG_ETRAX_SERIAL_PORT0=y diff --git a/target/cris/systems/qemu-cris b/target/cris/systems/qemu-cris new file mode 100644 index 000000000..d1df7e654 --- /dev/null +++ b/target/cris/systems/qemu-cris @@ -0,0 +1,8 @@ +config ADK_TARGET_SYSTEM_QEMU_CRIS + bool "Qemu Emulator" + select ADK_CPU_CRIS_V32 + select ADK_TARGET_QEMU + select ADK_TARGET_KERNEL_IMAGE + help + Qemu Emulator for CRISv32 architecture. + diff --git a/target/cris/systems/toolchain-cris b/target/cris/systems/toolchain-cris index ab5be72f6..6615da6ad 100644 --- a/target/cris/systems/toolchain-cris +++ b/target/cris/systems/toolchain-cris @@ -1,6 +1,5 @@ config ADK_TARGET_SYSTEM_TOOLCHAIN_CRIS bool "Toolchain only" - select ADK_CPU_CRIS_V32 select ADK_TARGET_TOOLCHAIN select ADK_TARGET_PACKAGE_TXZ help -- cgit v1.2.3