On Tue, May 10, 2022 at 8:35 AM Bertrand Marquis <[email protected]> wrote: > > Remove the pci node from the qemu device tree when runqemu is used with > xen-qemuboot. > > Linux is ending up in an infinite loop when trying to access PCI > configuration space when running on top of Xen on arm32. > As we do not need or support any of the devices on PCI on arm32 at the > moment, just remove the node from the device tree generated by qemu. > > The problem does not appear at the moment without Xen and it is unclear > why it is with Xen. > This will be investigated but in the meantime provide a working > configuration for users. > > Signed-off-by: Bertrand Marquis <[email protected]>
Thanks for this - my review is from inspecting the patch applied; I have yet to test it but there's no need to hold this back with positive reports now from Bruce and Bertrand. Reviewed-by: Christopher Clark <[email protected]> thanks, Christopher > --- > classes/qemuboot-xen-dtb.bbclass | 22 ++++++++++++++++++++++ > 1 file changed, 22 insertions(+) > > diff --git a/classes/qemuboot-xen-dtb.bbclass > b/classes/qemuboot-xen-dtb.bbclass > index d43d23a..1f17a86 100644 > --- a/classes/qemuboot-xen-dtb.bbclass > +++ b/classes/qemuboot-xen-dtb.bbclass > @@ -63,6 +63,21 @@ write_lops_xen_section() { > EOF > } > > +write_lop_rm_pci() { > + cat <<EOF >"$1" > +/dts-v1/; > +/ { > + compatible = "system-device-tree-v1"; > + lops { > + lop_1 { > + compatible = "system-device-tree-v1,lop,modify"; > + modify = "/pcie@10000000::"; > + }; > + }; > +}; > +EOF > +} > + > write_lop_add_to_xen_cmdline() { > EXTRA_XEN_BOOTARGS="$2" > cat <<EOF >"$1" > @@ -135,6 +150,13 @@ generate_xen_qemuboot_dtb() { > write_lop_add_to_xen_cmdline "${B}/lop-xen-cmdline.dts" \ > "${QB_XEN_CMDLINE_EXTRA}" > > + # On Qemu Arm32, Dom0 accessing PCI config space ends up in an > + # infinite loop. Remove pci node from the device tree > + if [ "${MACHINE}" = "qemuarm" ]; then > + write_lop_rm_pci "${B}/lop-rm-pci.dts" > + LOP_MODULE_ARGS="${LOP_MODULE_ARGS} -i ${B}/lop-rm-pci.dts" > + fi > + > if [ -z "${QB_XEN_DOMAIN_MODULES}" ]; then > bbwarn "No domain modules: please set QB_XEN_DOMAIN_MODULES" > fi > -- > 2.25.1 > > > >
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#7285): https://lists.yoctoproject.org/g/meta-virtualization/message/7285 Mute This Topic: https://lists.yoctoproject.org/mt/91015801/21656 Group Owner: [email protected] Unsubscribe: https://lists.yoctoproject.org/g/meta-virtualization/unsub [[email protected]] -=-=-=-=-=-=-=-=-=-=-=-
