[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

[libvirt] [PATCH v4] add pci-bridge support



Now, it's impossible to arrange devices into multi-pci-bus,
for example:
   <sound model='ac97'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/>
   </sound>
   <video>
      <model type='cirrus' vram='9216' heads='1'/>
      <address type='pci' domain='0x0000' bus='0x1' slot='0x02' function='0x0'/>
   </video>
libvirt will complain about "bus != 0",
fortunately, qemu supports pci-to-pci bridge,
if we want to use multi-pci-bus, we can define
2 pci bridge controllers, then attach 1 to the other
as a subordinate pci-bus, so, 2 pci-buses appear.
for example:
   <controller type='pci-bridge' index='0'/>
   <controller type='pci-bridge' index='1'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/>
   </controller>
   <sound model='ac97'>
      <address type='pci' domain='0x0000' bus='0x01' slot='0x02' function='0x0'/>
   </sound>
   <video>
      <model type='cirrus' vram='9216' heads='1'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/>
   </video>


 src/conf/domain_conf.c        |   98 ++++-
 src/conf/domain_conf.h        |    1 +
 docs/schemas/domaincommon.rng |    1 +
 src/qemu/qemu_capabilities.c  |    4 +
 src/qemu/qemu_capabilities.h  |    1 +
 src/qemu/qemu_command.c       |   43 ++++++++++++++++++++-----
 6 files changed, 126 insertions(+), 22 deletions(-)


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]