[PATCH v2 2/4] qemuboot: Fix command line and enable other machines


Bertrand Marquis
 

Fix qemuboot-xen-dtb to properly add dom0 bootargs by using a parameter
instead of directly using the QB_XEN_DOM0_BOOTARGS inside the function.
When not done, the variable is empty and dom0 bootargs are wrong in the
device tree.

Use QB_MACHINE to generate a device tree with qemu instead of always
using the armv8 machine. This will allow this class to be used for other
machines later.

Signed-off-by: Bertrand Marquis <bertrand.marquis@...>
---
classes/qemuboot-xen-dtb.bbclass | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/classes/qemuboot-xen-dtb.bbclass b/classes/qemuboot-xen-dtb.=
bbclass
index 6fe3164..d43d23a 100644
--- a/classes/qemuboot-xen-dtb.bbclass
+++ b/classes/qemuboot-xen-dtb.bbclass
@@ -29,6 +29,7 @@
# See also: Other QB_ variables as defined by the qemuboot.bbclass.
=20
write_lops_xen_section() {
+ DOM0_BOOTARGS=3D"$2"
cat <<EOF >"$1"
/dts-v1/;
/ {
@@ -47,7 +48,7 @@ write_lops_xen_section() {
};
lop_2 {
compatible =3D "system-device-tree-v1,lop,modify";
- modify =3D "/chosen:xen,dom0-bootargs:${QB_XEN_DOM0_BOOTARGS=
}";
+ modify =3D "/chosen:xen,dom0-bootargs:${DOM0_BOOTARGS}";
};
lop_3 {
compatible =3D "system-device-tree-v1,lop,modify";
@@ -118,8 +119,7 @@ generate_xen_qemuboot_dtb() {
-device qemu-xhci \
-device usb-tablet \
-device usb-kbd \
- -machine virt,gic-version=3D3 \
- -machine virtualization=3Dtrue \
+ ${QB_MACHINE} \
${QB_CPU} \
${QB_SMP} \
${QB_MEM} \
@@ -129,7 +129,8 @@ generate_xen_qemuboot_dtb() {
=20
# Lopper generates temporary files in cwd, so run it within ${B}
cd "${B}"
- write_lops_xen_section "${B}/lop-insert-xen-section.dts"
+ write_lops_xen_section "${B}/lop-insert-xen-section.dts" \
+ "${QB_XEN_DOM0_BOOTARGS}"
=20
write_lop_add_to_xen_cmdline "${B}/lop-xen-cmdline.dts" \
"${QB_XEN_CMDLINE_EXTRA}"
--=20
2.25.1