Bladeren bron

fix qemu spitz emulation, add emulation for terrier

Waldemar Brodkorb 10 jaren geleden
bovenliggende
commit
0c095815c4

+ 4 - 1
target/arm/Makefile

@@ -19,6 +19,9 @@ QEMU_ARGS:=${ADK_QEMU_ARGS}
 ifeq ($(ADK_TARGET_QEMU_ARM_MODEL_SPITZ),y)
 QEMU_ARGS+=-M spitz
 endif
+ifeq ($(ADK_TARGET_QEMU_ARM_MODEL_TERRIER),y)
+QEMU_ARGS+=-M terrier
+endif
 ifeq ($(ADK_TARGET_QEMU_ARM_MODEL_VERSATILEPB),y)
 QEMU_ARGS+=-M versatilepb -net user -net nic,model=smc91c111
 endif
@@ -33,7 +36,7 @@ endif
 ifeq ($(ADK_TARGET_FS),archive)
 targethelp:
 	@echo "The RootFS tarball is: $(FW_DIR)/$(ROOTFSTARBALL)"
-ifeq ($(ADK_TARGET_QEMU),y)
+ifeq ($(ADK_TARGET_QEMU_ARM_MODEL_VERSATILEPB),y)
 	@echo 'The kernel file is: $(FW_DIR)/${TARGET_KERNEL}'
 	@echo "Use following command to create a QEMU Image:"
 	@echo "./scripts/create.sh qemu-${CPU_ARCH}.img $(FW_DIR)/$(ROOTFSTARBALL)"

+ 0 - 11
target/arm/kernel/qemu-arm-spitz

@@ -33,21 +33,10 @@ CONFIG_POWER_SUPPLY=y
 CONFIG_PDA_POWER=y
 CONFIG_APM_POWER=y
 CONFIG_SENSORS_MAX1111=y
-CONFIG_FB=y
-CONFIG_FB_CFB_FILLRECT=y
-CONFIG_FB_CFB_COPYAREA=y
-CONFIG_FB_CFB_IMAGEBLIT=y
-CONFIG_FB_PXA=y
 CONFIG_BACKLIGHT_LCD_SUPPORT=y
 CONFIG_LCD_CLASS_DEVICE=y
 CONFIG_LCD_CORGI=y
 CONFIG_BACKLIGHT_CLASS_DEVICE=y
 CONFIG_BACKLIGHT_GENERIC=y
-CONFIG_DUMMY_CONSOLE=y
-CONFIG_FRAMEBUFFER_CONSOLE=y
-CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y
-CONFIG_FONTS=y
-CONFIG_FONT_8x16=y
-CONFIG_FONT_AUTOSELECT=y
 CONFIG_HID=y
 CONFIG_HID_GENERIC=y

+ 42 - 0
target/arm/kernel/qemu-arm-terrier

@@ -0,0 +1,42 @@
+CONFIG_ARM=y
+CONFIG_ARM_PATCH_PHYS_VIRT=y
+CONFIG_ARCH_PXA=y
+CONFIG_PXA_SHARPSL=y
+CONFIG_PXA_SHARPSL_DETECT_MACH_ID=y
+CONFIG_MACH_BORZOI=y
+CONFIG_PXA27x=y
+CONFIG_PXA_SHARP_Cxx00=y
+CONFIG_SHARPSL_PM=y
+CONFIG_SHARPSL_PM_MAX1111=y
+CONFIG_PXA_SSP=y
+CONFIG_PLAT_PXA=y
+CONFIG_CPU_XSCALE=y
+CONFIG_IWMMXT=y
+CONFIG_XSCALE_PMU=y
+CONFIG_MULTI_IRQ_HANDLER=y
+CONFIG_SHARP_PARAM=y
+CONFIG_SHARP_SCOOP=y
+CONFIG_AEABI=y
+CONFIG_ATAGS=y
+CONFIG_ATAGS_PROC=y
+CONFIG_I2C=y
+CONFIG_I2C_BOARDINFO=y
+CONFIG_I2C_PXA=y
+CONFIG_SPI=y
+CONFIG_SPI_MASTER=y
+CONFIG_SPI_PXA2XX_DMA=y
+CONFIG_SPI_PXA2XX=y
+CONFIG_GPIO_DEVRES=y
+CONFIG_GPIOLIB=y
+CONFIG_GPIO_PXA=y
+CONFIG_POWER_SUPPLY=y
+CONFIG_PDA_POWER=y
+CONFIG_APM_POWER=y
+CONFIG_SENSORS_MAX1111=y
+CONFIG_BACKLIGHT_LCD_SUPPORT=y
+CONFIG_LCD_CLASS_DEVICE=y
+CONFIG_LCD_CORGI=y
+CONFIG_BACKLIGHT_CLASS_DEVICE=y
+CONFIG_BACKLIGHT_GENERIC=y
+CONFIG_HID=y
+CONFIG_HID_GENERIC=y

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

@@ -37,6 +37,7 @@ config ADK_TARGET_KERNEL_MINICONFIG
 	default "qemu-arm-versatilepb" if ADK_TARGET_QEMU_ARM_MODEL_VERSATILEPB
 	default "qemu-arm-vexpress-a9" if ADK_TARGET_QEMU_ARM_MODEL_VEXPRESS_A9
 	default "qemu-arm-spitz" if ADK_TARGET_QEMU_ARM_MODEL_SPITZ
+	default "qemu-arm-terrier" if ADK_TARGET_QEMU_ARM_MODEL_TERRIER
 	default "qemu-mips" if ADK_TARGET_SYSTEM_QEMU_MIPS
 	default "qemu-mips64" if ADK_TARGET_SYSTEM_QEMU_MIPS64
 	default "qemu-ppc" if ADK_TARGET_SYSTEM_QEMU_PPC

+ 9 - 1
target/config/Config.in.qemu

@@ -28,12 +28,20 @@ config ADK_TARGET_QEMU_ARM_MODEL_VERSATILEPB
 	select ADK_CPU_ARM926EJ_S
 	depends on ADK_TARGET_ARM_SOFT_FLOAT
 
+config ADK_TARGET_QEMU_ARM_MODEL_TERRIER
+	boolean "Xscale PXA270 Terrier PDA"
+	select ADK_soft_float
+	select ADK_eabi
+	select ADK_CPU_XSCALE
+	select ADK_TARGET_QEMU_WITH_GRAPHIC_ONLY
+	depends on ADK_TARGET_ARM_SOFT_FLOAT
+
 config ADK_TARGET_QEMU_ARM_MODEL_SPITZ
 	boolean "Xscale PXA270 Spitz PDA"
 	select ADK_soft_float
 	select ADK_eabi
 	select ADK_CPU_XSCALE
-	select ADK_TARGET_QEMU_WITH_GRAPHIC
+	select ADK_TARGET_QEMU_WITH_GRAPHIC_ONLY
 	depends on ADK_TARGET_ARM_SOFT_FLOAT
 
 endchoice

+ 6 - 3
target/config/Config.in.qemuopts

@@ -7,8 +7,13 @@ depends on ADK_TARGET_QEMU
 config ADK_QEMU_ARGS
 	string
 	default "" if ADK_TARGET_QEMU_WITH_GRAPHIC
+	default "" if ADK_TARGET_QEMU_WITH_GRAPHIC_ONLY
 	default "-nographic"
 
+config ADK_TARGET_QEMU_WITH_GRAPHIC_ONLY
+	boolean
+	depends on ADK_TARGET_QEMU_ARM_MODEL_SPITZ || ADK_TARGET_QEMU_ARM_MODEL_TERRIER
+
 choice 
 prompt "Use a Bootloader"
 depends on ADK_TARGET_SYSTEM_QEMU_X86_64 || ADK_TARGET_SYSTEM_QEMU_X86
@@ -46,8 +51,7 @@ endchoice
 
 choice
 prompt "Qemu Emulation with graphical output"
-depends on ADK_TARGET_SYSTEM_QEMU_X86_64 || ADK_TARGET_SYSTEM_QEMU_X86 || ADK_TARGET_QEMU_ARM_MODEL_SPITZ || ADK_TARGET_SYSTEM_QEMU_SH4
-default ADK_TARGET_QEMU_WITH_GRAPHIC if ADK_TARGET_QEMU_ARM_MODEL_SPITZ
+depends on ADK_TARGET_SYSTEM_QEMU_X86_64 || ADK_TARGET_SYSTEM_QEMU_X86 || ADK_TARGET_SYSTEM_QEMU_SH4
 
 config ADK_TARGET_QEMU_WITHOUT_GRAPHIC
 	boolean "disabled"
@@ -62,7 +66,6 @@ config ADK_TARGET_QEMU_WITH_GRAPHIC
 	select ADK_KERNEL_FRAMEBUFFER_CONSOLE
 	select ADK_KERNEL_FB_SM501 if ADK_TARGET_SYSTEM_QEMU_SH4
 	select ADK_KERNEL_FB_CIRRUS if ADK_TARGET_SYSTEM_QEMU_X86 || ADK_TARGET_SYSTEM_QEMU_X86_64
-	select ADK_KERNEL_FB_PXA if ADK_TARGET_QEMU_ARM_MODEL_SPITZ
 	select ADK_KERNEL_INPUT
 	select ADK_KERNEL_INPUT_KEYBOARD
 	select ADK_KERNEL_KEYBOARD_ATKBD if ADK_TARGET_SYSTEM_QEMU_X86 || ADK_TARGET_SYSTEM_QEMU_X86_64

+ 5 - 2
target/config/Config.in.runtime

@@ -56,11 +56,11 @@ config ADK_QUIET_KERNEL
 
 choice
 prompt "bootup messages from initscripts"
-default ADK_RUNTIME_VERBOSE_INIT_VGA if ADK_TARGET_WITH_VGA
+default ADK_RUNTIME_VERBOSE_INIT_VGA if ADK_TARGET_WITH_VGA || ADK_TARGET_QEMU_WITH_GRAPHIC || ADK_TARGET_QEMU_WITH_GRAPHIC_ONLY
 default ADK_RUNTIME_VERBOSE_INIT_SERIAL
 
 config ADK_RUNTIME_VERBOSE_INIT_VGA
-	depends on ADK_TARGET_WITH_VGA
+	depends on ADK_TARGET_WITH_VGA || ADK_TARGET_QEMU_WITH_GRAPHIC || ADK_TARGET_QEMU_WITH_GRAPHIC_ONLY
 	boolean "output via VGA"
 
 config ADK_RUNTIME_VERBOSE_INIT_SERIAL
@@ -91,6 +91,7 @@ endchoice
 config ADK_RUNTIME_GETTY_VGA
 	boolean "start getty on VGA console (tty1-tty6)"
 	depends on ADK_RUNTIME_GETTY
+	default y if ADK_TARGET_QEMU_WITH_GRAPHIC_ONLY
 	default y if ADK_TARGET_QEMU_WITH_GRAPHIC
 	default y if ADK_TARGET_SYSTEM_RASPBERRY_PI
 	default y if ADK_TARGET_SYSTEM_CUBOX_I
@@ -104,6 +105,8 @@ config ADK_RUNTIME_GETTY_VGA
 config ADK_RUNTIME_GETTY_SERIAL
 	boolean "start getty on serial console"
 	depends on ADK_RUNTIME_GETTY
+	default n if ADK_TARGET_QEMU_WITH_GRAPHIC_ONLY
+	default n if ADK_TARGET_QEMU_WITH_GRAPHIC
 	default n if ADK_TARGET_SYSTEM_RASPBERRY_PI
 	default n if ADK_TARGET_SYSTEM_LEMOTE_YEELONG
 	default n if ADK_TARGET_SYSTEM_IBM_X40

+ 4 - 4
target/config/Config.in.target

@@ -47,7 +47,7 @@ config ADK_TARGET_CMDLINE
 	default "console=ttyS0,38400" if ADK_TARGET_SYSTEM_PCENGINES_WRAP
 	default "console=ttyS0,115200 console=tty0 geodewdt.nowayout=1" if ADK_TARGET_SYSTEM_PCENGINES_ALIX1C
 	default "console=ttyS0,115200 console=tty0" if ADK_TARGET_SYSTEM_VBOX_I686
-	default "console=ttyS0,115200" if ADK_TARGET_QEMU_ARM_MODEL_SPITZ
+	default "console=tty0" if ADK_TARGET_QEMU_ARM_MODEL_SPITZ || ADK_TARGET_QEMU_ARM_MODEL_TERRIER
 	default "console=ttyAMA0" if ADK_TARGET_QEMU_ARM_MODEL_VERSATILEPB
 	default "console=ttyAMA0" if ADK_TARGET_QEMU_ARM_MODEL_VEXPRESS_A9
 	default "console=ttyUL0" if ADK_TARGET_QEMU_MICROBLAZE_MODEL_S3ADSP1800
@@ -109,7 +109,7 @@ config ADK_TARGET_ROOTFS_SQUASHFS
 	select ADK_HOST_NEED_SQUASHFS
 	select ADK_HOST_NEED_QEMU if ADK_TARGET_QEMU
 	select ADK_TARGET_QEMU_WITH_BLOCK if ADK_TARGET_QEMU
-	depends on ADK_TARGET_WITH_MTD
+	depends on ADK_TARGET_WITH_MTD || ADK_TARGET_SYSTEM_QEMU_MICROBLAZE
 	help
 	  highly compressed read-only filesystem for MTD flash systems.
 
@@ -118,7 +118,7 @@ config ADK_TARGET_ROOTFS_JFFS2
 	select ADK_KERNEL_JFFS2_FS
 	select ADK_HOST_NEED_MTD_UTILS
 	select ADK_TARGET_QEMU_WITH_BLOCK if ADK_TARGET_QEMU
-	depends on ADK_TARGET_WITH_MTD
+	depends on ADK_TARGET_WITH_MTD || ADK_TARGET_SYSTEM_QEMU_MICROBLAZE
 	help
 	  compressed read-write filesystem for MTD flash systems.
 
@@ -128,8 +128,8 @@ config ADK_TARGET_ROOTFS_YAFFS
 	select ADK_KERNEL_YAFFS_FS
 	select ADK_KERNEL_YAFFS_YAFFS2
 	select ADK_KERNEL_YAFFS_AUTO_YAFFS2
-	depends on ADK_TARGET_WITH_NAND
 	select ADK_KERNEL_ADDON_YAFFS2
+	depends on ADK_TARGET_WITH_NAND
 	help
 	  Root filesystem on NAND flash with YAFFS2.
 

+ 13 - 1
target/linux/config/Config.in.graphics

@@ -27,7 +27,12 @@ config ADK_KERNEL_FONT_8x16
 	select ADK_KERNEL_FONTS
 
 config ADK_KERNEL_FB
+	select ADK_KERNEL_VT
+	select ADK_KERNEL_VT_CONSOLE
  	boolean
+
+config ADK_KERNEL_DUMMY_CONSOLE
+	boolean
  
 config ADK_KERNEL_FRAMEBUFFER_CONSOLE
 	boolean
@@ -37,6 +42,9 @@ config ADK_KERNEL_FRAMEBUFFER_CONSOLE
 config ADK_KERNEL_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY
 	boolean
 
+config ADK_KERNEL_FRAMEBUFFER_CONSOLE_ROTATION
+	boolean
+
 config ADK_KERNEL_FB_MXS
  	boolean
 
@@ -181,10 +189,14 @@ config ADK_KERNEL_FB_PXA
 	prompt "Framebuffer support for Sharp Zaurus (PXA)"
 	boolean
 	select ADK_KERNEL_FB
+	select ADK_KERNEL_DUMMY_CONSOLE
 	select ADK_KERNEL_FRAMEBUFFER_CONSOLE
+	select ADK_KERNEL_FRAMEBUFFER_CONSOLE_ROTATION
 	default y if ADK_TARGET_SYSTEM_SHARP_ZAURUS
+	default y if ADK_TARGET_QEMU_ARM_MODEL_TERRIER
+	default y if ADK_TARGET_QEMU_ARM_MODEL_SPITZ
  	default n
-	depends on ADK_TARGET_SYSTEM_SHARP_ZAURUS
+	depends on ADK_TARGET_SYSTEM_SHARP_ZAURUS || ADK_TARGET_QEMU_ARM_MODEL_TERRIER || ADK_TARGET_QEMU_ARM_MODEL_SPITZ
  	help
 	 Framebuffer support for Sharp Zaurus CL Series.
 

+ 11 - 1
target/linux/config/Config.in.input

@@ -1,5 +1,5 @@
 menu "Input devices"
-depends on ADK_TARGET_WITH_USB || ADK_TARGET_WITH_INPUT || ADK_TARGET_WITH_TOUCHSCREEN
+depends on ADK_TARGET_WITH_USB || ADK_TARGET_WITH_INPUT || ADK_TARGET_WITH_TOUCHSCREEN || ADK_TARGET_QEMU
 
 config ADK_KERNEL_INPUT
 	boolean
@@ -9,6 +9,8 @@ config ADK_KERNEL_INPUT
 	default y if ADK_TARGET_SYSTEM_IBM_X40
 	default y if ADK_TARGET_SYSTEM_LEMOTE_YEELONG
 	default y if ADK_TARGET_SYSTEM_SHARP_ZAURUS
+	default y if ADK_TARGET_QEMU_ARM_MODEL_SPITZ
+	default y if ADK_TARGET_QEMU_ARM_MODEL_TERRIER
 	default y if ADK_TARGET_SYSTEM_RASPBERRY_PI
 	default n
 
@@ -33,11 +35,15 @@ config ADK_KERNEL_MOUSE_ATARI
 config ADK_KERNEL_KEYBOARD_GPIO
 	boolean
 	default y if ADK_TARGET_SYSTEM_SHARP_ZAURUS
+	default y if ADK_TARGET_QEMU_ARM_MODEL_SPITZ
+	default y if ADK_TARGET_QEMU_ARM_MODEL_TERRIER
 	default n
 
 config ADK_KERNEL_KEYBOARD_MATRIX
 	boolean
 	default y if ADK_TARGET_SYSTEM_SHARP_ZAURUS
+	default y if ADK_TARGET_QEMU_ARM_MODEL_SPITZ
+	default y if ADK_TARGET_QEMU_ARM_MODEL_TERRIER
 	default n
 
 config ADK_KERNEL_INPUT_TOUCHSCREEN
@@ -58,6 +64,8 @@ config ADK_KERNEL_INPUT_KEYBOARD
 	default y if ADK_TARGET_SYSTEM_IBM_X40
 	default y if ADK_TARGET_SYSTEM_LEMOTE_YEELONG
 	default y if ADK_TARGET_SYSTEM_SHARP_ZAURUS
+	default y if ADK_TARGET_QEMU_ARM_MODEL_SPITZ
+	default y if ADK_TARGET_QEMU_ARM_MODEL_TERRIER
 	default y if ADK_TARGET_SYSTEM_RASPBERRY_PI
 	default n
 
@@ -69,6 +77,8 @@ config ADK_KERNEL_INPUT_MOUSE
 	default y if ADK_TARGET_SYSTEM_IBM_X40
 	default y if ADK_TARGET_SYSTEM_LEMOTE_YEELONG
 	default y if ADK_TARGET_SYSTEM_SHARP_ZAURUS
+	default y if ADK_TARGET_QEMU_ARM_MODEL_SPITZ
+	default y if ADK_TARGET_QEMU_ARM_MODEL_TERRIER
 	default y if ADK_TARGET_SYSTEM_RASPBERRY_PI
 	default n