diff options
author | Waldemar Brodkorb <wbx@openadk.org> | 2014-03-04 18:42:45 +0100 |
---|---|---|
committer | Waldemar Brodkorb <wbx@openadk.org> | 2014-03-04 18:42:45 +0100 |
commit | e9da3aa77efafebd9ec392d9898ed33619433c4c (patch) | |
tree | 1d012d830b7d3a3d70822b62297e220b0a36e5b3 | |
parent | fe79926211afc01f7109a3635e1e72a46b674848 (diff) |
try to add support for graphical qemu
-rw-r--r-- | package/base-files/Makefile | 6 | ||||
-rw-r--r-- | rules.mk | 1 | ||||
-rw-r--r-- | target/config/Config.in | 33 | ||||
-rw-r--r-- | target/linux/config/Config.in.graphics | 24 | ||||
-rw-r--r-- | target/linux/config/Config.in.input | 49 | ||||
-rw-r--r-- | target/sh/Makefile | 6 | ||||
-rw-r--r-- | target/sh/kernel/qemu-sh | 23 | ||||
-rw-r--r-- | target/sh/sys-available/qemu-sh4 | 3 | ||||
-rw-r--r-- | target/sh/sys-available/qemu-sh4eb | 2 |
9 files changed, 64 insertions, 83 deletions
diff --git a/package/base-files/Makefile b/package/base-files/Makefile index ad09f8d3d..9323b25ad 100644 --- a/package/base-files/Makefile +++ b/package/base-files/Makefile @@ -75,6 +75,12 @@ endif ifeq ($(ADK_TARGET_SYSTEM_QEMU_PPC64),y) $(SED) 's#ttyS#hvc#g' $(IDIR_BASE_FILES)/etc/inittab endif +ifeq ($(ADK_TARGET_SYSTEM_QEMU_SH4),y) + $(SED) 's#ttyS0#ttySC1#g' $(IDIR_BASE_FILES)/etc/inittab +endif +ifeq ($(ADK_TARGET_SYSTEM_QEMU_SH4EB),y) + $(SED) 's#ttyS0#ttySC1#g' $(IDIR_BASE_FILES)/etc/inittab +endif ifeq ($(ADK_TARGET_QEMU_MICROBLAZE_MODEL_S3ADSP1800),y) $(SED) 's#ttyS#ttyUL#g' $(IDIR_BASE_FILES)/etc/inittab endif @@ -43,6 +43,7 @@ ADK_TARGET_MIPS_ABI:= $(strip $(subst ",, $(ADK_TARGET_MIPS_ABI))) ADK_TARGET_IP:= $(strip $(subst ",, $(ADK_TARGET_IP))) ADK_TARGET_SUFFIX:= $(strip $(subst ",, $(ADK_TARGET_SUFFIX))) ADK_TARGET_CMDLINE:= $(strip $(subst ",, $(ADK_TARGET_CMDLINE))) +ADK_QEMU_ARGS:= $(strip $(subst ",, $(ADK_QEMU_ARGS))) ADK_RUNTIME_TMPFS_SIZE:= $(strip $(subst ",, $(ADK_RUNTIME_TMPFS_SIZE))) ADK_RUNTIME_CONSOLE_SERIAL_SPEED:= $(strip $(subst ",, $(ADK_RUNTIME_CONSOLE_SERIAL_SPEED))) ADK_HOST:= $(strip $(subst ",, $(ADK_HOST))) diff --git a/target/config/Config.in b/target/config/Config.in index 44ee685fe..1e7fb49ae 100644 --- a/target/config/Config.in +++ b/target/config/Config.in @@ -214,6 +214,36 @@ config ADK_TARGET_KERNEL_MINICONFIG default "raspberry-pi" if ADK_TARGET_SYSTEM_RASPBERRY_PI default "sharp-zaurus" if ADK_TARGET_SYSTEM_SHARP_ZAURUS +config ADK_QEMU_ARGS + string + default "-nographic" if ADK_TARGET_QEMU_WITHOUT_GRAPHIC + +choice +prompt "Qemu Emulation with graphical output" +depends on ADK_HARDWARE_QEMU + +config ADK_TARGET_QEMU_WITHOUT_GRAPHIC + boolean "disabled" + +config ADK_TARGET_QEMU_WITH_GRAPHIC + boolean "enabled" + select ADK_KERNEL_VT + select ADK_KERNEL_VT_CONSOLE + select ADK_KERNEL_FONTS + select ADK_KERNEL_FONT_8x16 + select ADK_KERNEL_FB + select ADK_KERNEL_FRAMEBUFFER_CONSOLE + select ADK_KERNEL_FB_SM501 if ADK_TARGET_SYSTEM_QEMU_SH4 || ADK_TARGET_SYSTEM_QEMU_SH4EB + select ADK_KERNEL_FB_CIRRUS if ADK_TARGET_SYSTEM_QEMU_I686 || 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_I686 || ADK_TARGET_SYSTEM_QEMU_X86_64 + select ADK_KERNEL_INPUT_MOUSE + select ADK_KERNEL_INPUT_MOUSEDEV + +endchoice + choice prompt "Qemu Emulation using VirtIO drivers" depends on ADK_TARGET_SYSTEM_QEMU_SPARC64 @@ -612,7 +642,8 @@ config ADK_TARGET_CMDLINE default "console=ttyAMA0 console=tty0" if ADK_TARGET_QEMU_ARM_MODEL_VERSATILEPB default "console=ttyAMA0 console=tty0" if ADK_TARGET_QEMU_ARM_MODEL_VEXPRESS_A9 default "console=ttyS0,115200 console=tty0 fbcon=rotate:1" if ADK_TARGET_SYSTEM_SHARP_ZAURUS - default "console=ttySC1 console=tty0" if ADK_TARGET_SYSTEM_QEMU_SH + default "console=ttySC1 console=tty0" if ADK_TARGET_SYSTEM_QEMU_SH4 + default "console=ttySC1 console=tty0" if ADK_TARGET_SYSTEM_QEMU_SH4EB default "console=ttyS0" if ADK_TARGET_SYSTEM_ARANYM_M68K default "console=ttyS0,115200" if ADK_TARGET_SYSTEM_PCENGINES_ALIX2D13 default "console=ttyS0,115200" if ADK_TARGET_SYSTEM_PCENGINES_ALIX2D2 diff --git a/target/linux/config/Config.in.graphics b/target/linux/config/Config.in.graphics index f6f3962cf..477541478 100644 --- a/target/linux/config/Config.in.graphics +++ b/target/linux/config/Config.in.graphics @@ -33,9 +33,19 @@ config ADK_KERNEL_FB config ADK_KERNEL_FRAMEBUFFER_CONSOLE boolean +config ADK_KERNEL_MFD_SM501 + boolean + +config ADK_KERNEL_FB_CIRRUS + boolean + config ADK_KERNEL_FB_GEODE boolean +config ADK_KERNEL_FB_SM501 + select ADK_KERNEL_MFD_SM501 + boolean + config ADK_KERNEL_DRM boolean @@ -74,26 +84,14 @@ config ADK_KERNEL_FB_VESA help Framebuffer support for VirtualBox Emulator. -config ADK_KERNEL_FB_CIRRUS - prompt "................................ Framebuffer support for QEMU Emulator (Cirrus)" - boolean - select ADK_KERNEL_FB - select ADK_KERNEL_FRAMEBUFFER_CONSOLE - default y if ADK_TARGET_SYSTEM_QEMU_I686 - default n - depends on ADK_TARGET_SYSTEM_QEMU_I686 - help - Framebuffer support for Qemu Emulator. - config ADK_KERNEL_FB_PXA prompt "................................ Framebuffer support for Sharp Zaurus" tristate select ADK_KERNEL_FB select ADK_KERNEL_FRAMEBUFFER_CONSOLE default y if ADK_TARGET_SYSTEM_SHARP_ZAURUS - default y if ADK_TARGET_QEMU_ARM_MODEL_SPITZ default n - depends on ADK_TARGET_SYSTEM_SHARP_ZAURUS || ADK_TARGET_QEMU_ARM_MODEL_SPITZ + depends on ADK_TARGET_SYSTEM_SHARP_ZAURUS help Framebuffer support for Sharp Zaurus CL Series. diff --git a/target/linux/config/Config.in.input b/target/linux/config/Config.in.input index 37ad2172b..939354881 100644 --- a/target/linux/config/Config.in.input +++ b/target/linux/config/Config.in.input @@ -1,22 +1,12 @@ -menu "Input devices" -depends on ADK_TARGET_WITH_USB || ADK_TARGET_WITH_INPUT || ADK_TARGET_WITH_TOUCHSCREEN - config ADK_KERNEL_INPUT boolean - default y if ADK_TARGET_SYSTEM_QEMU_I686 - default y if ADK_TARGET_SYSTEM_QEMU_X86_64 - default y if ADK_TARGET_SYSTEM_QEMU_SH4 default y if ADK_TARGET_SYSTEM_ARANYM_M68K default y if ADK_TARGET_SYSTEM_VBOX_I686 default y if ADK_TARGET_SYSTEM_PCENGINES_ALIX1C default y if ADK_TARGET_SYSTEM_IBM_X40 default y if ADK_NATIVE_SYSTEM_IBM_X40 - default y if ADK_TARGET_SYSTEM_TAROX_PC - default y if ADK_NATIVE_SYSTEM_TAROX_PC - default y if ADK_TARGET_SYSTEM_INTEL_ATOM - default y if ADK_NATIVE_SYSTEM_INTEL_ATOM default y if ADK_TARGET_SYSTEM_LEMOTE_YEELONG - default y if ADK_TARGET_SYSTEM_SHUTTLE_SA76 + default y if ADK_NATIVE_SYSTEM_LEMOTE_YEELONG default y if ADK_TARGET_SYSTEM_SHARP_ZAURUS default y if ADK_TARGET_SYSTEM_RASPBERRY_PI default n @@ -67,72 +57,48 @@ config ADK_KERNEL_INPUT_EVDEV config ADK_KERNEL_INPUT_KEYBOARD boolean - default y if ADK_TARGET_SYSTEM_QEMU_I686 - default y if ADK_TARGET_SYSTEM_QEMU_X86_64 default y if ADK_TARGET_SYSTEM_ARANYM_M68K default y if ADK_TARGET_SYSTEM_VBOX_I686 default y if ADK_TARGET_SYSTEM_PCENGINES_ALIX1C default y if ADK_TARGET_SYSTEM_IBM_X40 default y if ADK_NATIVE_SYSTEM_IBM_X40 - default y if ADK_TARGET_SYSTEM_TAROX_PC - default y if ADK_NATIVE_SYSTEM_TAROX_PC - default y if ADK_TARGET_SYSTEM_INTEL_ATOM - default y if ADK_NATIVE_SYSTEM_INTEL_ATOM default y if ADK_TARGET_SYSTEM_LEMOTE_YEELONG - default y if ADK_TARGET_SYSTEM_SHUTTLE_SA76 + default y if ADK_NATIVE_SYSTEM_LEMOTE_YEELONG default y if ADK_TARGET_SYSTEM_SHARP_ZAURUS default y if ADK_TARGET_SYSTEM_RASPBERRY_PI default n config ADK_KERNEL_KEYBOARD_ATKBD boolean - default y if ADK_TARGET_SYSTEM_QEMU_I686 - default y if ADK_TARGET_SYSTEM_QEMU_X86_64 default y if ADK_TARGET_SYSTEM_VBOX_I686 default y if ADK_TARGET_SYSTEM_PCENGINES_ALIX1C default y if ADK_TARGET_SYSTEM_IBM_X40 default y if ADK_NATIVE_SYSTEM_IBM_X40 - default y if ADK_TARGET_SYSTEM_TAROX_PC - default y if ADK_NATIVE_SYSTEM_TAROX_PC - default y if ADK_TARGET_SYSTEM_INTEL_ATOM - default y if ADK_NATIVE_SYSTEM_INTEL_ATOM default y if ADK_TARGET_SYSTEM_LEMOTE_YEELONG - default y if ADK_TARGET_SYSTEM_SHUTTLE_SA76 + default y if ADK_NATIVE_SYSTEM_LEMOTE_YEELONG default n config ADK_KERNEL_INPUT_MOUSE boolean - default y if ADK_TARGET_SYSTEM_QEMU_I686 - default y if ADK_TARGET_SYSTEM_QEMU_X86_64 default y if ADK_TARGET_SYSTEM_ARANYM_M68K default y if ADK_TARGET_SYSTEM_VBOX_I686 default y if ADK_TARGET_SYSTEM_PCENGINES_ALIX1C default y if ADK_TARGET_SYSTEM_IBM_X40 default y if ADK_NATIVE_SYSTEM_IBM_X40 - default y if ADK_TARGET_SYSTEM_TAROX_PC - default y if ADK_NATIVE_SYSTEM_TAROX_PC - default y if ADK_TARGET_SYSTEM_INTEL_ATOM - default y if ADK_NATIVE_SYSTEM_INTEL_ATOM default y if ADK_TARGET_SYSTEM_LEMOTE_YEELONG - default y if ADK_TARGET_SYSTEM_SHUTTLE_SA76 + default y if ADK_NATIVE_SYSTEM_LEMOTE_YEELONG default y if ADK_TARGET_SYSTEM_SHARP_ZAURUS default y if ADK_TARGET_SYSTEM_RASPBERRY_PI default n config ADK_KERNEL_INPUT_MOUSEDEV boolean - default y if ADK_TARGET_SYSTEM_QEMU_I686 - default y if ADK_TARGET_SYSTEM_QEMU_X86_64 default y if ADK_TARGET_SYSTEM_VBOX_I686 default y if ADK_TARGET_SYSTEM_PCENGINES_ALIX1C default y if ADK_TARGET_SYSTEM_IBM_X40 default y if ADK_NATIVE_SYSTEM_IBM_X40 - default y if ADK_TARGET_SYSTEM_TAROX_PC - default y if ADK_NATIVE_SYSTEM_TAROX_PC - default y if ADK_TARGET_SYSTEM_INTEL_ATOM - default y if ADK_NATIVE_SYSTEM_INTEL_ATOM default y if ADK_TARGET_SYSTEM_LEMOTE_YEELONG - default y if ADK_TARGET_SYSTEM_SHUTTLE_SA76 + default y if ADK_NATIVE_SYSTEM_LEMOTE_YEELONG default y if ADK_TARGET_SYSTEM_SHARP_ZAURUS default y if ADK_TARGET_SYSTEM_RASPBERRY_PI default n @@ -151,6 +117,8 @@ config ADK_KERNEL_HID_GENERIC select ADK_KERNEL_HID_SUPPORT default n +menu "Input devices" +depends on ADK_TARGET_WITH_USB || ADK_TARGET_WITH_INPUT || ADK_TARGET_WITH_TOUCHSCREEN config ADK_KPACKAGE_KMOD_USB_HID prompt "kmod-usb-hid..................... USB keyboard/mouse support" @@ -164,7 +132,8 @@ config ADK_KPACKAGE_KMOD_USB_HID depends on ADK_PACKAGE_KMOD_USB_CONTROLLER depends on ADK_TARGET_WITH_USB default y if ADK_TARGET_SYSTEM_RASPBERRY_PI - default y if ADK_TARGET_SYSTEM_QEMU_SH4 + default y if ADK_TARGET_SYSTEM_QEMU_SH4 && ADK_TARGET_QEMU_WITH_GRAPHIC + default y if ADK_TARGET_SYSTEM_QEMU_SH4EB && ADK_TARGET_QEMU_WITH_GRAPHIC default n config ADK_KERNEL_LOGITECH_DINOVO diff --git a/target/sh/Makefile b/target/sh/Makefile index 98c5fb3ce..da733acac 100644 --- a/target/sh/Makefile +++ b/target/sh/Makefile @@ -18,7 +18,7 @@ ifneq ($(ADK_HARDWARE_QEMU),) @echo "Use following command to create a QEMU Image:" @echo "./scripts/create.sh +g qemu-${CPU_ARCH}.img $(FW_DIR)/$(ROOTFSTARBALL)" @echo "Start qemu with following options:" - @echo 'qemu-system-${CPU_ARCH} -M r2d -kernel $(FW_DIR)/$(TARGET_KERNEL) qemu-${CPU_ARCH}.img' + @echo 'qemu-system-${CPU_ARCH} ${ADK_QEMU_ARGS} -M r2d -kernel $(FW_DIR)/$(TARGET_KERNEL) qemu-${CPU_ARCH}.img' endif endif ifeq ($(ADK_TARGET_FS),initramfs) @@ -28,7 +28,7 @@ imageinstall: $(FW_DIR)/$(INITRAMFS) @echo 'The initramfs image is: ${FW_DIR}/${INITRAMFS}' ifeq ($(ADK_HARDWARE_QEMU),y) @echo "Start qemu with following command line:" - @echo 'qemu-system-${CPU_ARCH} -M r2d -kernel $(FW_DIR)/$(TARGET_KERNEL) -initrd ${FW_DIR}/${INITRAMFS}' + @echo 'qemu-system-${CPU_ARCH} ${ADK_QEMU_ARGS} -M r2d -kernel $(FW_DIR)/$(TARGET_KERNEL) -initrd ${FW_DIR}/${INITRAMFS}' endif endif ifeq ($(ADK_TARGET_FS),initramfs-piggyback) @@ -37,6 +37,6 @@ imageinstall: createinitramfs @echo 'The kernel+initramfs file is: $(FW_DIR)/${TARGET_KERNEL}' ifeq ($(ADK_HARDWARE_QEMU),y) @echo "Start qemu with following command line:" - @echo 'qemu-system-${CPU_ARCH} -M r2d -kernel $(FW_DIR)/$(TARGET_KERNEL)' + @echo 'qemu-system-${CPU_ARCH} ${ADK_QEMU_ARGS} -M r2d -kernel $(FW_DIR)/$(TARGET_KERNEL)' endif endif diff --git a/target/sh/kernel/qemu-sh b/target/sh/kernel/qemu-sh index 9ea0e8595..5c38a01fb 100644 --- a/target/sh/kernel/qemu-sh +++ b/target/sh/kernel/qemu-sh @@ -13,6 +13,7 @@ CONFIG_SH_RTS7751R2D=y CONFIG_RTS7751R2D_PLUS=y CONFIG_SH_TIMER_TMU=y CONFIG_SH_INTC=y +CONFIG_CMDLINE_OVERWRITE=y CONFIG_PCI=y CONFIG_PCI_DOMAINS=y CONFIG_SCSI=y @@ -34,25 +35,3 @@ CONFIG_SERIAL_SH_SCI_NR_UARTS=2 CONFIG_SERIAL_SH_SCI_CONSOLE=y CONFIG_SERIAL_CORE=y CONFIG_SERIAL_CORE_CONSOLE=y -CONFIG_MFD_SM501=y -CONFIG_VGA_ARB=y -CONFIG_VGA_ARB_MAX_GPUS=16 -CONFIG_VIDEO_OUTPUT_CONTROL=m -CONFIG_FB=y -CONFIG_FB_CFB_FILLRECT=y -CONFIG_FB_CFB_COPYAREA=y -CONFIG_FB_CFB_IMAGEBLIT=y -CONFIG_FB_SYS_FILLRECT=m -CONFIG_FB_SYS_COPYAREA=m -CONFIG_FB_SYS_IMAGEBLIT=m -CONFIG_FB_SYS_FOPS=m -CONFIG_FB_DEFERRED_IO=y -CONFIG_FB_BACKLIGHT=y -CONFIG_FB_SH_MOBILE_LCDC=m -CONFIG_FB_SM501=y -CONFIG_BACKLIGHT_LCD_SUPPORT=y -CONFIG_LCD_CLASS_DEVICE=m -CONFIG_BACKLIGHT_CLASS_DEVICE=y -CONFIG_BACKLIGHT_GENERIC=y -CONFIG_FRAMEBUFFER_CONSOLE=y -CONFIG_FONT_8x16=y diff --git a/target/sh/sys-available/qemu-sh4 b/target/sh/sys-available/qemu-sh4 index c0382755a..83a645d65 100644 --- a/target/sh/sys-available/qemu-sh4 +++ b/target/sh/sys-available/qemu-sh4 @@ -4,9 +4,8 @@ config ADK_TARGET_SYSTEM_QEMU_SH4 select ADK_little select ADK_qemu_sh4 select ADK_CPU_SH4 + select ADK_KERNEL_CPU_LITTLE_ENDIAN select ADK_HARDWARE_QEMU - select ADK_TARGET_WITH_VGA - select ADK_TARGET_WITH_INPUT select ADK_TARGET_WITH_USB select ADK_USE_KERNEL_MINICONFIG select ADK_TARGET_KERNEL_ZIMAGE diff --git a/target/sh/sys-available/qemu-sh4eb b/target/sh/sys-available/qemu-sh4eb index 5f7a15c84..80389775e 100644 --- a/target/sh/sys-available/qemu-sh4eb +++ b/target/sh/sys-available/qemu-sh4eb @@ -6,8 +6,6 @@ config ADK_TARGET_SYSTEM_QEMU_SH4EB select ADK_CPU_SH4 select ADK_KERNEL_CPU_BIG_ENDIAN select ADK_HARDWARE_QEMU - select ADK_TARGET_WITH_VGA - select ADK_TARGET_WITH_INPUT select ADK_TARGET_WITH_USB select ADK_USE_KERNEL_MINICONFIG select ADK_TARGET_KERNEL_ZIMAGE |