diff options
Diffstat (limited to 'target/arm')
-rw-r--r-- | target/arm/Makefile | 29 | ||||
-rw-r--r-- | target/arm/sys-available/qemu-arm | 10 |
2 files changed, 36 insertions, 3 deletions
diff --git a/target/arm/Makefile b/target/arm/Makefile index 5323750fe..e290fd8e3 100644 --- a/target/arm/Makefile +++ b/target/arm/Makefile @@ -7,9 +7,18 @@ include $(TOPDIR)/mk/modules.mk include $(TOPDIR)/mk/kernel-build.mk include $(TOPDIR)/mk/image.mk +ZKERNEL:=$(LINUX_DIR)/arch/arm/boot/zImage KERNEL:=$(LINUX_DIR)/vmlinux LOADADDR:=0x20008000 +ifeq ($(ADK_TARGET_QEMU_ARM_MODEL_SPITZ),y) +MACH:=spitz +endif +ifeq ($(ADK_TARGET_QEMU_ARM_MODEL_VERSATILE),y) +MACH:=versatilepb +NET:=-net user,hostfwd=tcp::2222-:22 -net nic,model=smc91c111 +endif + tools-compile: $(MAKE) -C ../tools/uboot-mkimage @@ -38,32 +47,46 @@ imageinstall: kernel-install $(BIN_DIR)/$(ROOTFSTARBALL) endif ifeq ($(ADK_TARGET_FS),archive) imageinstall: $(BIN_DIR)/$(ROOTFSTARBALL) +ifeq ($(ADK_TARGET_SYSTEM_QEMU_ARM),y) + @cp $(ZKERNEL) $(BIN_DIR)/$(TARGET_KERNEL) +else @cp $(KERNEL) $(BIN_DIR)/$(TARGET_KERNEL) +endif @echo 'The kernel file is: $(BIN_DIR)/${TARGET_KERNEL}' @echo "The RootFS tarball is: $(BIN_DIR)/$(ROOTFSTARBALL)" ifeq ($(ADK_TARGET_SYSTEM_QEMU_ARM),y) @echo "Use following command to create a QEMU Image:" @echo "sudo ./scripts/create-image.sh -f $(ADK_TARGET_ROOTFS) qemu-${CPU_ARCH}.img $(BIN_DIR)/$(ROOTFSTARBALL)" @echo "Start qemu with following options:" - @echo 'qemu-system-arm -nographic -kernel $(BIN_DIR)/$(TARGET_KERNEL) -hda qemu-${CPU_ARCH}.img -append "root=/dev/hda1"' + @echo 'qemu-system-arm -M $(MACH) -nographic $(NET) -kernel $(BIN_DIR)/$(TARGET_KERNEL) -hda qemu-${CPU_ARCH}.img' +endif endif endif ifeq ($(ADK_TARGET_FS),initramfs) imageinstall: $(BIN_DIR)/$(INITRAMFS) +ifeq ($(ADK_TARGET_SYSTEM_QEMU_ARM),y) + @cp $(ZKERNEL) $(BIN_DIR)/$(TARGET_KERNEL) +else @cp $(KERNEL) $(BIN_DIR)/$(TARGET_KERNEL) +endif @echo 'The kernel file is: $(BIN_DIR)/${TARGET_KERNEL}' @echo 'The initramfs image is: ${BIN_DIR}/${INITRAMFS}' ifeq ($(ADK_TARGET_SYSTEM_QEMU_ARM),y) @echo "Start qemu with following command line:" - @echo 'qemu-system-arm -nographic -kernel $(BIN_DIR)/$(TARGET_KERNEL) -initrd ${BIN_DIR}/${INITRAMFS}' + @echo 'qemu-system-arm -M $(MACH) -nographic $(NET) -kernel $(BIN_DIR)/$(TARGET_KERNEL) -initrd ${BIN_DIR}/${INITRAMFS}' endif endif ifeq ($(ADK_TARGET_FS),initramfs-piggyback) imageinstall: ${BUILD_DIR}/${INITRAMFS_PIGGYBACK} createinitramfs +ifeq ($(ADK_TARGET_SYSTEM_QEMU_ARM),y) + @cp $(ZKERNEL) $(BIN_DIR)/$(TARGET_KERNEL) +else @cp $(KERNEL) $(BIN_DIR)/$(TARGET_KERNEL) +endif @echo 'The kernel+initramfs file is: $(BIN_DIR)/${TARGET_KERNEL}' ifeq ($(ADK_TARGET_SYSTEM_QEMU_ARM),y) @echo "Start qemu with following command line:" - @echo 'qemu-system-arm -nographic -kernel $(BIN_DIR)/$(TARGET_KERNEL)' + @echo 'qemu-system-arm -M $(MACH) -nographic $(NET) -kernel $(BIN_DIR)/$(TARGET_KERNEL)' +endif endif endif diff --git a/target/arm/sys-available/qemu-arm b/target/arm/sys-available/qemu-arm new file mode 100644 index 000000000..1e62f2abb --- /dev/null +++ b/target/arm/sys-available/qemu-arm @@ -0,0 +1,10 @@ +config ADK_TARGET_SYSTEM_QEMU_ARM + bool "Qemu Emulator" + select ADK_arm + select ADK_qemu_arm + select ADK_little + select ADK_EABI + select ADK_TARGET_NO_FPU + select ADK_HARDWARE_QEMU + help + Support for Qemu Emulator (arm). |