diff options
author | Scott Murray <scott.murray@konsulko.com> | 2022-11-23 15:37:20 -0500 |
---|---|---|
committer | Scott Murray <scott.murray@konsulko.com> | 2022-11-23 16:17:51 -0500 |
commit | dce8116fb1a1b6f3c2976db126d9f923e2fe4c6f (patch) | |
tree | 6f250dfebc50e8323c4a955784a7c7a8cf06b889 /recipes-config/qemu-config | |
parent | 46a4e4e4f43625686e73db8523bbfc9abaed558f (diff) |
agl-qemu-runner: Add recipes
Add recipes for agl-qemu-runner.sh QEMU wrapper script and template
systemd unit, and guest per-image configuration files and systemd
unit links for the various demo platform images. The configurations
for the demo images can be mixed and matched somewhat, but only one
each of IVI and cluster should be used, as there are some static CPU
assignments in the configurations. As well, this has only been
tested on the AGL reference hardware at present, some rework will
likely be required to support other platforms.
There is room to add a bbclass to simplify the guest configuration
recipes, but that has not been done for now as this approach may be
temporary; a switch to libvirtd with appropriate configurations is
likely.
Bug-AGL: SPEC-4618
Change-Id: Ieefbd4081cca506f915957cc313411a5ed1ece5c
Signed-off-by: Scott Murray <scott.murray@konsulko.com>
Diffstat (limited to 'recipes-config/qemu-config')
8 files changed, 136 insertions, 0 deletions
diff --git a/recipes-config/qemu-config/files/agl-cluster-demo-platform-flutter.conf b/recipes-config/qemu-config/files/agl-cluster-demo-platform-flutter.conf new file mode 100644 index 000000000..262f3c2d4 --- /dev/null +++ b/recipes-config/qemu-config/files/agl-cluster-demo-platform-flutter.conf @@ -0,0 +1,4 @@ +QEMU_TASKSET_CPUS="4-7" +QEMU_SMP_OPT="-smp 4" +QEMU_MEM_OPT="-m 2G" +QEMU_KERNEL_CMDLINE_APPEND="root=/dev/vda rw mem=2048M video=Virtual-1:1920x1080" diff --git a/recipes-config/qemu-config/files/agl-cluster-demo-platform.conf b/recipes-config/qemu-config/files/agl-cluster-demo-platform.conf new file mode 100644 index 000000000..262f3c2d4 --- /dev/null +++ b/recipes-config/qemu-config/files/agl-cluster-demo-platform.conf @@ -0,0 +1,4 @@ +QEMU_TASKSET_CPUS="4-7" +QEMU_SMP_OPT="-smp 4" +QEMU_MEM_OPT="-m 2G" +QEMU_KERNEL_CMDLINE_APPEND="root=/dev/vda rw mem=2048M video=Virtual-1:1920x1080" diff --git a/recipes-config/qemu-config/files/agl-demo-platform.conf b/recipes-config/qemu-config/files/agl-demo-platform.conf new file mode 100644 index 000000000..e72386789 --- /dev/null +++ b/recipes-config/qemu-config/files/agl-demo-platform.conf @@ -0,0 +1,6 @@ +QEMU_TASKSET_CPUS="0-3" +QEMU_SMP_OPT="-smp 4" +QEMU_MEM_OPT="-m 4G" +QEMU_INPUT_OPT="-device virtio-tablet-device" +QEMU_AUDIO_OPT="-audiodev alsa,id=agl -device intel-hda -device hda-duplex,audiodev=agl" +QEMU_KERNEL_CMDLINE_APPEND="root=/dev/vda rw mem=4196M video=Virtual-1:1920x1080" diff --git a/recipes-config/qemu-config/files/agl-ivi-demo-platform-flutter.conf b/recipes-config/qemu-config/files/agl-ivi-demo-platform-flutter.conf new file mode 100644 index 000000000..e72386789 --- /dev/null +++ b/recipes-config/qemu-config/files/agl-ivi-demo-platform-flutter.conf @@ -0,0 +1,6 @@ +QEMU_TASKSET_CPUS="0-3" +QEMU_SMP_OPT="-smp 4" +QEMU_MEM_OPT="-m 4G" +QEMU_INPUT_OPT="-device virtio-tablet-device" +QEMU_AUDIO_OPT="-audiodev alsa,id=agl -device intel-hda -device hda-duplex,audiodev=agl" +QEMU_KERNEL_CMDLINE_APPEND="root=/dev/vda rw mem=4196M video=Virtual-1:1920x1080" diff --git a/recipes-config/qemu-config/qemu-config-agl-cluster-demo-platform-flutter.bb b/recipes-config/qemu-config/qemu-config-agl-cluster-demo-platform-flutter.bb new file mode 100644 index 000000000..c15528a6e --- /dev/null +++ b/recipes-config/qemu-config/qemu-config-agl-cluster-demo-platform-flutter.bb @@ -0,0 +1,29 @@ +SUMMARY = "Setting files for agl-cluster-demo-plaform-flutter guest VM" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302" + +inherit systemd allarch + +SRC_URI = "file://${QEMU_IMAGE}.conf" + +do_configure[noexec] = "1" +do_compile[noexec] = "1" + +QEMU_IMAGE = "agl-cluster-demo-platform-flutter" +QEMU_UNIT = "agl-qemu-runner@${QEMU_IMAGE}.service" + +do_install() { + # Install template unit links + install -d ${D}${systemd_system_unitdir} + ln -sf agl-qemu-runner@.service ${D}${systemd_system_unitdir}/${QEMU_UNIT} + install -d ${D}${systemd_system_unitdir}/multi-user.target.wants + ln -sf ${systemd_system_unitdir}/${QEMU_UNIT} ${D}${systemd_system_unitdir}/multi-user.target.wants/${QEMU_UNIT} + + # Install conf file + install -d ${D}${sysconfdir}/agl-qemu-runner + install -m 0644 ${WORKDIR}/${QEMU_IMAGE}.conf ${D}${sysconfdir}/agl-qemu-runner/ +} + +FILES:${PN} += "${systemd_system_unitdir}" + +RDEPENDS:${PN} += "agl-qemu-runner" diff --git a/recipes-config/qemu-config/qemu-config-agl-cluster-demo-platform.bb b/recipes-config/qemu-config/qemu-config-agl-cluster-demo-platform.bb new file mode 100644 index 000000000..4f9c5a92f --- /dev/null +++ b/recipes-config/qemu-config/qemu-config-agl-cluster-demo-platform.bb @@ -0,0 +1,29 @@ +SUMMARY = "Setting files for agl-cluster-demo-plaform guest VM" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302" + +inherit systemd allarch + +SRC_URI = "file://${QEMU_IMAGE}.conf" + +do_configure[noexec] = "1" +do_compile[noexec] = "1" + +QEMU_IMAGE = "agl-cluster-demo-platform" +QEMU_UNIT = "agl-qemu-runner@${QEMU_IMAGE}.service" + +do_install() { + # Install template unit links + install -d ${D}${systemd_system_unitdir} + ln -sf agl-qemu-runner@.service ${D}${systemd_system_unitdir}/${QEMU_UNIT} + install -d ${D}${systemd_system_unitdir}/multi-user.target.wants + ln -sf ${systemd_system_unitdir}/${QEMU_UNIT} ${D}${systemd_system_unitdir}/multi-user.target.wants/${QEMU_UNIT} + + # Install conf file + install -d ${D}${sysconfdir}/agl-qemu-runner + install -m 0644 ${WORKDIR}/${QEMU_IMAGE}.conf ${D}${sysconfdir}/agl-qemu-runner/ +} + +FILES:${PN} += "${systemd_system_unitdir}" + +RDEPENDS:${PN} += "agl-qemu-runner" diff --git a/recipes-config/qemu-config/qemu-config-agl-demo-platform.bb b/recipes-config/qemu-config/qemu-config-agl-demo-platform.bb new file mode 100644 index 000000000..1d5e0df22 --- /dev/null +++ b/recipes-config/qemu-config/qemu-config-agl-demo-platform.bb @@ -0,0 +1,29 @@ +SUMMARY = "Setting files for agl-demo-plaform guest VM" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302" + +inherit systemd allarch + +SRC_URI = "file://${QEMU_IMAGE}.conf" + +do_configure[noexec] = "1" +do_compile[noexec] = "1" + +QEMU_IMAGE = "agl-demo-platform" +QEMU_UNIT = "agl-qemu-runner@${QEMU_IMAGE}.service" + +do_install() { + # Install template unit links + install -d ${D}${systemd_system_unitdir} + ln -sf agl-qemu-runner@.service ${D}${systemd_system_unitdir}/${QEMU_UNIT} + install -d ${D}${systemd_system_unitdir}/multi-user.target.wants + ln -sf ${systemd_system_unitdir}/${QEMU_UNIT} ${D}${systemd_system_unitdir}/multi-user.target.wants/${QEMU_UNIT} + + # Install conf file + install -d ${D}${sysconfdir}/agl-qemu-runner + install -m 0644 ${WORKDIR}/${QEMU_IMAGE}.conf ${D}${sysconfdir}/agl-qemu-runner/ +} + +FILES:${PN} += "${systemd_system_unitdir}" + +RDEPENDS:${PN} += "agl-qemu-runner" diff --git a/recipes-config/qemu-config/qemu-config-agl-ivi-demo-platform-flutter.bb b/recipes-config/qemu-config/qemu-config-agl-ivi-demo-platform-flutter.bb new file mode 100644 index 000000000..5efb7a96c --- /dev/null +++ b/recipes-config/qemu-config/qemu-config-agl-ivi-demo-platform-flutter.bb @@ -0,0 +1,29 @@ +SUMMARY = "Setting files for agl-ivi-demo-plaform-flutter guest VM" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302" + +inherit systemd allarch + +SRC_URI = "file://${QEMU_IMAGE}.conf" + +do_configure[noexec] = "1" +do_compile[noexec] = "1" + +QEMU_IMAGE = "agl-ivi-demo-platform-flutter" +QEMU_UNIT = "agl-qemu-runner@${QEMU_IMAGE}.service" + +do_install() { + # Install template unit links + install -d ${D}${systemd_system_unitdir} + ln -sf agl-qemu-runner@.service ${D}${systemd_system_unitdir}/${QEMU_UNIT} + install -d ${D}${systemd_system_unitdir}/multi-user.target.wants + ln -sf ${systemd_system_unitdir}/${QEMU_UNIT} ${D}${systemd_system_unitdir}/multi-user.target.wants/${QEMU_UNIT} + + # Install conf file + install -d ${D}${sysconfdir}/agl-qemu-runner + install -m 0644 ${WORKDIR}/${QEMU_IMAGE}.conf ${D}${sysconfdir}/agl-qemu-runner/ +} + +FILES:${PN} += "${systemd_system_unitdir}" + +RDEPENDS:${PN} += "agl-qemu-runner" |