[libvirt] Attaching PCI devices to the PCIe root complex

Michael S. Tsirkin mst at redhat.com
Wed Oct 2 09:28:18 UTC 2013


On Wed, Oct 02, 2013 at 10:53:07AM +0200, Paolo Bonzini wrote:
> Il 25/09/2013 10:59, Michael S. Tsirkin ha scritto:
> >> > I couldn't find on PCIe spec any mention that "Root Complex Integrated EndPoint"
> >> > must be PCIe. But, from spec 1.3.2.3:
> >> > - A Root Complex Integrated Endpoint must not require I/O resources claimed through BAR(s).
> >> > - A Root Complex Integrated Endpoint must not generate I/O Requests.
> >> > - A Root Complex Integrated Endpoint is required to support MSI or MSI-X or both if an
> >> > interrupt resource is requested.
> > Heh PCI-SIG keeps fighting against legacy interrupts and IO.
> > But lots of hardware happily ignores these rules.
> > And the reason is simple: software does not enforce them.
> 
> I think it's "must not require", not "must not have".  So it's the usual
> rule that applies to PCIe device, i.e. that they should work even if the
> OS doesn't enable the I/O BARs.

I agree, thanks for pointing this out.

Seems to still apply to the MSI rule.

> Then I have no idea what the I/O BAR in i915 is for, and whether the
> device can be used without that BAR.
> 
> Paolo




More information about the libvir-list mailing list