From: liguang <lig.fnst(a)cn.fujitsu.com>
add a new controller type, then one can
define a pci-bridge controller like this:
<controller type='pci-bridge' index='0'/>
<controller type='pci-bridge' index='1'>
<address type='pci' domain='0x0000' bus='0x00'
slot='0x05' function='0x0'/>
</controller>
actually, it works as a pci-bus, so as to support
multi-pci-bus via pci-to-pci bridge
Signed-off-by: liguang <lig.fnst(a)cn.fujitsu.com>
---
docs/schemas/domaincommon.rng | 1 +
src/conf/domain_conf.c | 3 ++-
src/conf/domain_conf.h | 1 +
3 files changed, 4 insertions(+), 1 deletion(-)
diff --git a/docs/schemas/domaincommon.rng b/docs/schemas/domaincommon.rng
index 8d7e6db..b6dc013 100644
--- a/docs/schemas/domaincommon.rng
+++ b/docs/schemas/domaincommon.rng
@@ -1357,6 +1357,7 @@
<value>sata</value>
<value>ccid</value>
<value>usb</value>
+ <value>pci-bridge</value>
</choice>
</attribute>
</optional>
diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c
index cc26f21..6a990bb 100644
--- a/src/conf/domain_conf.c
+++ b/src/conf/domain_conf.c
@@ -295,7 +295,8 @@ VIR_ENUM_IMPL(virDomainController, VIR_DOMAIN_CONTROLLER_TYPE_LAST,
"sata",
"virtio-serial",
"ccid",
- "usb")
+ "usb",
+ "pci-bridge")
VIR_ENUM_IMPL(virDomainControllerModelSCSI, VIR_DOMAIN_CONTROLLER_MODEL_SCSI_LAST,
"auto",
diff --git a/src/conf/domain_conf.h b/src/conf/domain_conf.h
index edddf25..1ec8564 100644
--- a/src/conf/domain_conf.h
+++ b/src/conf/domain_conf.h
@@ -682,6 +682,7 @@ enum virDomainControllerType {
VIR_DOMAIN_CONTROLLER_TYPE_VIRTIO_SERIAL,
VIR_DOMAIN_CONTROLLER_TYPE_CCID,
VIR_DOMAIN_CONTROLLER_TYPE_USB,
+ VIR_DOMAIN_CONTROLLER_TYPE_PCI_BRIDGE,
VIR_DOMAIN_CONTROLLER_TYPE_LAST
};
--
1.8.1.5