aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJan-Simon Möller <jsmoeller@linuxfoundation.org>2017-07-25 23:02:31 +0200
committerJan-Simon Moeller <jsmoeller@linuxfoundation.org>2017-07-26 16:23:34 +0000
commit16aa39224d1b4691d3d2a109a860f904a94ff708 (patch)
treeae4c2b3ffcb993cf9948d7f1c270b36fe1baca47
parent986afefd22b5c6184ad42667bbc203ee47e83431 (diff)
Fix runqemu by generating an ext4 image by default
runqemu does not detect an ext4.xz , thus default to ext4. Call it with: runqemu qemux86-64 kvm audio Also due to the optimization levels for x86-64, adapt QB_CPU and QB_CPU_KVM. For audiomanager to start up, sound needs to be enabled. QB_AUDIO_DRV and QB_AUDIO_OPT enable this. Finally bump memory in runqemu to 2G. For CI purposes, introduce a DISTRO_FEATURES flag 'AGLCI'. v2: fix missing space in append v3: qemuboot options fix v4: QB_AUDIO_DRV defaults to alsa Bug-AGL: SPEC-784 Change-Id: Ie9c9c2b7d8838b512f3f19b1e29952079039e0ab Signed-off-by: Jan-Simon Möller <jsmoeller@linuxfoundation.org> Reviewed-on: https://gerrit.automotivelinux.org/gerrit/10387 Tested-by: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> ci-image-build: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> ci-image-boot-test: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org>
-rw-r--r--meta-agl-bsp/conf/include/agl_qemux86-64.inc3
-rw-r--r--meta-agl-distro/conf/distro/include/x86_64-tune.inc24
-rw-r--r--meta-agl-distro/conf/distro/poky-agl.conf11
-rw-r--r--templates/feature/agl-ci/99_local.conf.inc1
4 files changed, 21 insertions, 18 deletions
diff --git a/meta-agl-bsp/conf/include/agl_qemux86-64.inc b/meta-agl-bsp/conf/include/agl_qemux86-64.inc
index 8db4a66b9..d9294ad9e 100644
--- a/meta-agl-bsp/conf/include/agl_qemux86-64.inc
+++ b/meta-agl-bsp/conf/include/agl_qemux86-64.inc
@@ -22,3 +22,6 @@ DISTRO_FEATURES_append = " sota"
# Root device
ROOT_VM = "root=PARTUUID=${DISK_SIGNATURE}-02"
+
+# runqemu tweaks
+QB_OPT_APPEND_append = " -show-cursor"
diff --git a/meta-agl-distro/conf/distro/include/x86_64-tune.inc b/meta-agl-distro/conf/distro/include/x86_64-tune.inc
index 9130173fa..023da85b8 100644
--- a/meta-agl-distro/conf/distro/include/x86_64-tune.inc
+++ b/meta-agl-distro/conf/distro/include/x86_64-tune.inc
@@ -19,27 +19,18 @@ TUNE_FEATURES_tune-corei7-32 = "${TUNE_FEATURES_tune-x86} corei7"
BASE_LIB_tune-corei7-32 = "lib"
TUNE_PKGARCH_tune-corei7-32 = "corei7-32"
PACKAGE_EXTRA_ARCHS_tune-corei7-32 = "${PACKAGE_EXTRA_ARCHS_tune-core2-32} corei7-32"
-QEMU_EXTRAOPTIONS_corei7-32 = " -cpu Nehalem,check=false"
-QB_CPU_corei7-32 = "-cpu Nehalem,check=false"
-QB_MACHINE_corei7-32 = "-machine q35"
AVAILTUNES += "corei7-64"
TUNE_FEATURES_tune-corei7-64 = "${TUNE_FEATURES_tune-x86-64} corei7"
BASE_LIB_tune-corei7-64 = "lib64"
TUNE_PKGARCH_tune-corei7-64 = "corei7-64"
PACKAGE_EXTRA_ARCHS_tune-corei7-64 = "${PACKAGE_EXTRA_ARCHS_tune-core2-64} corei7-64"
-QEMU_EXTRAOPTIONS_corei7-64 = " -cpu Nehalem,check=false"
-QB_CPU_corei7-64 = " -cpu Nehalem,check=false"
-QB_MACHINE_corei7-64 = "-machine q35"
AVAILTUNES += "corei7-64-x32"
TUNE_FEATURES_tune-corei7-64-x32 = "${TUNE_FEATURES_tune-x86-64-x32} corei7"
BASE_LIB_tune-corei7-64-x32 = "libx32"
TUNE_PKGARCH_tune-corei7-64-x32 = "corei7-64-x32"
PACKAGE_EXTRA_ARCHS_tune-corei7-64-x32 = "${PACKAGE_EXTRA_ARCHS_tune-core2-64-x32} corei7-64-x32"
-QEMU_EXTRAOPTIONS_corei7-64-x32 = " -cpu Nehalem,check=false"
-QB_CPU_corei7-64-x32 = "-cpu Nehalem,check=false"
-QB_MACHINE_corei7-64-x32 = "-machine q35"
TUNE_ARCH = "${@bb.utils.contains('TUNE_FEATURES', 'm64', '${X86ARCH64}', '' ,d)}"
@@ -49,8 +40,13 @@ TUNE_FEATURES_tune-qemux86-64 = "${TUNE_FEATURES_tune-x86-64} corei7"
BASE_LIB_tune-qemux86-64 = "lib64"
TUNE_PKGARCH_tune-qemux86-64 = "corei7-64"
PACKAGE_EXTRA_ARCHS_tune-qemux86-64 = "${PACKAGE_EXTRA_ARCHS_tune-core2-64} corei7-64"
-QEMU_EXTRAOPTIONS_qemux86-64 = " -cpu Nehalem,check=false"
-QB_CPU_qemux86-64 = " -cpu Nehalem,check=false"
-QB_CPU_KVM_x86 = "-cpu Nehalem,check=false"
-QB_CPU_KVM_x86-64 = "-cpu Nehalem,check=false"
-QB_MACHINE_qemux86-64 = "-machine q35"
+
+# QEMU / runqemu options (partly overrides qemuboot-x86.inc)
+QB_MACHINE = "-machine q35"
+QB_SYSTEM_NAME_x86-64 = "qemu-system-x86_64"
+QB_CPU_x86-64 = "-cpu qemu64,+ssse3,+sse4.1,+sse4.2,+popcnt"
+QB_CPU_KVM_x86-64 = "-cpu kvm64 -cpu qemu64,+ssse3,+sse4.1,+sse4.2,+popcnt"
+
+QB_KERNEL_CMDLINE_APPEND = "vga=0 uvesafb.mode_option=1024x768-32 oprofile.timer=1 uvesafb.task_timeout=-1"
+# Add the 'virtio-rng-pci' device otherwise the guest may run out of entropy
+QB_OPT_APPEND = "-vga vmware -show-cursor -usb -usbdevice tablet -device virtio-rng-pci"
diff --git a/meta-agl-distro/conf/distro/poky-agl.conf b/meta-agl-distro/conf/distro/poky-agl.conf
index 47cb30836..f852b50f6 100644
--- a/meta-agl-distro/conf/distro/poky-agl.conf
+++ b/meta-agl-distro/conf/distro/poky-agl.conf
@@ -110,9 +110,12 @@ require conf/distro/include/${TARGET_ARCH}-tune.inc
# Generic qemu and qemuboot (runqemu) enhancements
# check qemuboot.bbclass
-# - use 1G RAM by default
-QB_MEM ?= "-m 1024"
-
+# - use 2G RAM by default
+QB_MEM ?= "-m 2048"
+# use pulseaudio on the host side - off as qemu-native is built with alsa
+#QB_AUDIO_DRV = "pa"
+# expose a virtual 'hda' sound card to the guest (arm/aarch64/x86-64)
+QB_AUDIO_OPT = "-soundhw hda"
# Board templates can add extra IMAGE_FSTYPES through this.
# It is added (late) through the AGL image recipes.
@@ -120,7 +123,7 @@ AGL_EXTRA_IMAGE_FSTYPES ??= ""
AGL_EXTRA_INITRAMFS_FSTYPES ??= ""
#
# Default IMAGE FSTYPES compressed tarball + ext4.xz
-AGL_DEFAULT_IMAGE_FSTYPES ?= "tar.xz ext4.xz"
+AGL_DEFAULT_IMAGE_FSTYPES ?= "tar.xz ${@bb.utils.contains('DISTRO_FEATURES', 'AGLCI', 'ext4.xz', 'ext4', d)}"
AGL_DEFAULT_INITRAMFS_FSTYPES ?= "ext4.gz"
# DEFAULT IMAGE_FSTYPES for AGL (no - BSPs should not set this)
diff --git a/templates/feature/agl-ci/99_local.conf.inc b/templates/feature/agl-ci/99_local.conf.inc
new file mode 100644
index 000000000..5386671ba
--- /dev/null
+++ b/templates/feature/agl-ci/99_local.conf.inc
@@ -0,0 +1 @@
+DISTRO_FEATURES_append = " AGLCI"