Browse Source

qemu-alpha: add disk support

Waldemar Brodkorb 7 years ago
parent
commit
30780da8a5

+ 5 - 1
target/alpha/Makefile

@@ -10,6 +10,10 @@ KERNEL:=$(LINUX_DIR)/vmlinux
 QEMU_ARGS:=-monitor null
 QEMU_ARGS+=${ADK_QEMU_ARGS}
 
+ifeq ($(ADK_TARGET_QEMU_WITH_BLOCK),y)
+QEMU_ARGS+=-drive file=qemu-alpha.img,format=raw -append "root=/dev/hda1"
+endif
+
 # target helper text
 ifeq ($(ADK_TARGET_FS),archive)
 targethelp:
@@ -19,7 +23,7 @@ ifeq ($(ADK_TARGET_QEMU),y)
 	@echo "Use following command to create a QEMU Image:"
 	@echo "./scripts/create.sh qemu-${ADK_TARGET_CPU_ARCH}.img $(FW_DIR)/$(ROOTFSTARBALL)"
 	@echo "Start qemu with following options:"
-	@echo 'qemu-system-${ADK_TARGET_CPU_ARCH} ${QEMU_ARGS} -kernel $(FW_DIR)/$(TARGET_KERNEL) qemu-${ADK_TARGET_CPU_ARCH}.img'
+	@echo 'qemu-system-${ADK_TARGET_CPU_ARCH} ${QEMU_ARGS} -kernel $(FW_DIR)/$(TARGET_KERNEL)'
 endif
 endif
 ifeq ($(ADK_TARGET_FS),initramfs)

+ 1 - 2
target/alpha/kernel/qemu-alpha

@@ -1,6 +1,5 @@
 CONFIG_ALPHA=y
 CONFIG_ALPHA_DP264=y
+CONFIG_ALPHA_QEMU=y
 CONFIG_ISA=y
 CONFIG_ISA_DMA_API=y
-CONFIG_SERIAL_8250=y
-CONFIG_SERIAL_8250_CONSOLE=y

+ 1 - 0
target/config/Config.in.qemuopts

@@ -32,6 +32,7 @@ config ADK_TARGET_QEMU_WITH_BLOCK
 	select ADK_KERNEL_PATA_PXA if ADK_TARGET_QEMU_ARM_SPITZ \
 					|| ADK_TARGET_SYSTEM_QEMU_ARM_TERRIER
 	select ADK_KERNEL_MMC_ARMMMCI if ADK_TARGET_SYSTEM_QEMU_ARM_VEXPRESS_A9
+	select ADK_KERNEL_BLK_DEV_CMD64X if ADK_TARGET_SYSTEM_QEMU_ALPHA
 
 menu "Qemu system configuration"
 depends on ADK_TARGET_QEMU && (ADK_TARGET_SYSTEM_QEMU_X86_64 \

+ 24 - 0
target/linux/config/Config.in.block

@@ -8,6 +8,15 @@ menu "Block devices support"
 depends on ADK_TARGET_WITH_BLOCK \
 	|| ADK_TARGET_GENERIC
 
+config ADK_KERNEL_IDE
+	bool
+
+config ADK_KERNEL_IDE_GD
+	bool
+
+config ADK_KERNEL_IDE_GD_ATA
+	bool
+
 config ADK_KERNEL_LBDAF
 	bool
 
@@ -303,6 +312,21 @@ config ADK_KERNEL_PATA_PXA
 
 endmenu
 
+menu "IDE driver support"
+depends on ADK_TARGET_SYSTEM_QEMU_ALPHA
+
+config ADK_KERNEL_BLK_DEV_CMD64X
+	tristate "CMD64x support"
+	select ADK_KERNEL_BLOCK
+	select ADK_KERNEL_IDE
+	select ADK_KERNEL_IDE_GD
+	select ADK_KERNEL_IDE_GD_ATA
+	depends on ADK_TARGET_SYSTEM_QEMU_ALPHA
+	help
+	  CMD64x IDE driver.
+
+endmenu
+
 menu "SCSI driver support"
 depends on ADK_TARGET_WITH_SCSI || \
 	ADK_TARGET_SYSTEM_QEMU_ARM_VERSATILEPB || \

+ 4 - 0
target/linux/config/Config.in.debug

@@ -56,8 +56,12 @@ config ADK_KERNEL_BUG
 	help
 	  Enable if you need BUGS() in the kernel.
 
+config ADK_KERNEL_ELF_CORE
+	bool
+
 config ADK_KERNEL_COREDUMP
 	bool "Enable coredumps"
+	select ADK_KERNEL_ELF_CORE
 	help
 	  Enable if you need coredumps.
 

+ 2 - 0
target/linux/config/Config.in.serial

@@ -103,6 +103,7 @@ config ADK_KERNEL_SERIAL_8250
 		|| ADK_TARGET_SYSTEM_QEMU_MIPS \
 		|| ADK_TARGET_SYSTEM_QEMU_MIPS64 \
 		|| ADK_TARGET_SYSTEM_SGI_O2 \
+		|| ADK_TARGET_SYSTEM_QEMU_ALPHA \
 		|| ADK_TARGET_SYSTEM_QEMU_NIOS2 \
 		|| ADK_TARGET_SYSTEM_QEMU_OR1K \
 		|| ADK_TARGET_SYSTEM_QEMU_PPC_BAMBOO \
@@ -126,6 +127,7 @@ config ADK_KERNEL_SERIAL_8250
 	default y if ADK_TARGET_SYSTEM_QEMU_MIPS
 	default y if ADK_TARGET_SYSTEM_QEMU_MIPS64
 	default y if ADK_TARGET_SYSTEM_SGI_O2
+	default y if ADK_TARGET_SYSTEM_QEMU_ALPHA
 	default y if ADK_TARGET_SYSTEM_QEMU_NIOS2
 	default y if ADK_TARGET_SYSTEM_QEMU_OR1K
 	default y if ADK_TARGET_SYSTEM_QEMU_PPC_BAMBOO