The 'model' and 'target' element can be freely moved around. Signed-off-by: Peter Krempa <pkrempa@xxxxxxxxxx> --- src/conf/schemas/domaincommon.rng | 190 +++++++++++++++--------------- 1 file changed, 96 insertions(+), 94 deletions(-) diff --git a/src/conf/schemas/domaincommon.rng b/src/conf/schemas/domaincommon.rng index 49a61d2748..ecc9cd41c4 100644 --- a/src/conf/schemas/domaincommon.rng +++ b/src/conf/schemas/domaincommon.rng @@ -2691,103 +2691,105 @@ <attribute name="type"> <value>pci</value> </attribute> - <optional> - <element name="model"> - <attribute name="name"> - <choice> - <!-- implementations of "pci-root" --> - <value>spapr-pci-host-bridge</value> - <!-- implementations of "pci-bridge" --> - <value>pci-bridge</value> - <!-- implementations of "dmi-to-pci-bridge" --> - <value>i82801b11-bridge</value> - <!-- implementations of "pcie-to-pci-bridge" --> - <value>pcie-pci-bridge</value> - <!-- implementations of "pcie-root-port" --> - <value>ioh3420</value> - <value>pcie-root-port</value> - <!-- implementations of "pcie-switch-upstream-port" --> - <value>x3130-upstream</value> - <!-- implementations of "pcie-switch-downstream-port" --> - <value>xio3130-downstream</value> - <!-- implementations of "pci-expander-bus" --> - <value>pxb</value> - <!-- implementations of "pcie-expander-bus" --> - <value>pxb-pcie</value> - </choice> - </attribute> - <empty/> - </element> - </optional> - <optional> - <element name="target"> - <optional> - <attribute name="chassisNr"> - <ref name="uint8"/> - </attribute> - </optional> - <optional> - <attribute name="chassis"> - <ref name="uint8"/> - </attribute> - </optional> - <optional> - <attribute name="port"> - <ref name="uint8"/> - </attribute> - </optional> - <optional> - <attribute name="busNr"> - <ref name="uint8"/> + <interleave> + <optional> + <element name="model"> + <attribute name="name"> + <choice> + <!-- implementations of "pci-root" --> + <value>spapr-pci-host-bridge</value> + <!-- implementations of "pci-bridge" --> + <value>pci-bridge</value> + <!-- implementations of "dmi-to-pci-bridge" --> + <value>i82801b11-bridge</value> + <!-- implementations of "pcie-to-pci-bridge" --> + <value>pcie-pci-bridge</value> + <!-- implementations of "pcie-root-port" --> + <value>ioh3420</value> + <value>pcie-root-port</value> + <!-- implementations of "pcie-switch-upstream-port" --> + <value>x3130-upstream</value> + <!-- implementations of "pcie-switch-downstream-port" --> + <value>xio3130-downstream</value> + <!-- implementations of "pci-expander-bus" --> + <value>pxb</value> + <!-- implementations of "pcie-expander-bus" --> + <value>pxb-pcie</value> + </choice> </attribute> - </optional> - <optional> - <attribute name="index"> - <ref name="uint8"/> + <empty/> + </element> + </optional> + <optional> + <element name="target"> + <optional> + <attribute name="chassisNr"> + <ref name="uint8"/> + </attribute> + </optional> + <optional> + <attribute name="chassis"> + <ref name="uint8"/> + </attribute> + </optional> + <optional> + <attribute name="port"> + <ref name="uint8"/> + </attribute> + </optional> + <optional> + <attribute name="busNr"> + <ref name="uint8"/> + </attribute> + </optional> + <optional> + <attribute name="index"> + <ref name="uint8"/> + </attribute> + </optional> + <optional> + <attribute name="hotplug"> + <ref name="virOnOff"/> + </attribute> + </optional> + <optional> + <element name="node"> + <ref name="unsignedInt"/> + </element> + </optional> + </element> + </optional> + <!-- *-root controllers have an optional element "pcihole64"--> + <choice> + <group> + <attribute name="model"> + <choice> + <value>pci-root</value> + <value>pcie-root</value> + </choice> </attribute> - </optional> - <optional> - <attribute name="hotplug"> - <ref name="virOnOff"/> + <optional> + <element name="pcihole64"> + <ref name="scaledInteger"/> + </element> + </optional> + </group> + <group> + <attribute name="model"> + <choice> + <value>pci-bridge</value> + <value>dmi-to-pci-bridge</value> + <value>pcie-to-pci-bridge</value> + <value>pcie-root-port</value> + <value>pcie-switch-upstream-port</value> + <value>pcie-switch-downstream-port</value> + <value>pci-expander-bus</value> + <value>pcie-expander-bus</value> + </choice> </attribute> - </optional> - <optional> - <element name="node"> - <ref name="unsignedInt"/> - </element> - </optional> - </element> - </optional> - <!-- *-root controllers have an optional element "pcihole64"--> - <choice> - <group> - <attribute name="model"> - <choice> - <value>pci-root</value> - <value>pcie-root</value> - </choice> - </attribute> - <optional> - <element name="pcihole64"> - <ref name="scaledInteger"/> - </element> - </optional> - </group> - <group> - <attribute name="model"> - <choice> - <value>pci-bridge</value> - <value>dmi-to-pci-bridge</value> - <value>pcie-to-pci-bridge</value> - <value>pcie-root-port</value> - <value>pcie-switch-upstream-port</value> - <value>pcie-switch-downstream-port</value> - <value>pci-expander-bus</value> - <value>pcie-expander-bus</value> - </choice> - </attribute> - </group> - </choice> + </group> + </choice> + </interleave> </group> <!-- virtio-serial has optional "ports" and "vectors" --> <group> -- 2.37.3