[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v2 0/2] add check for PCIe root ports and downstream
From: |
arei.gonglei |
Subject: |
[Qemu-devel] [PATCH v2 0/2] add check for PCIe root ports and downstream ports |
Date: |
Thu, 21 Aug 2014 17:47:44 +0800 |
From: Gonglei <address@hidden>
Root ports and downstream ports of switches are the hot
pluggable ports in a PCI Express hierarchy.
PCI Express supports chip-to-chip interconnect, a PCIe link can
only connect one pci device/Switch/EndPoint or PCI-bridge.
7.3. Configuration Transaction Rules (PCI Express specification 3.0)
7.3.1. Device Number
Downstream Ports that do not have ARI Forwarding enabled must
associate only Device 0 with the device attached to the Logical Bus
representing the Link from the Port.
If ARI Forwarding is disabled, according to PCIe spec
section 7.3.1, only slot 0 with the device attached to
logic bus representing the link from downstream
ports and root ports.
So, adding check for PCIe downstream ports and root ports,
which avoid useless operation, both hotplug and coldplug.
Changes since v1:
- using object_dynamic_cast() instead of simple string comparing (Paolo)
- add ARI Forwarding enable bit check
- using pcie_cap_get_type() instead of simple string comparing (Marcel)
- fix some other comments.
Gonglei (2):
qdev: Introduce a function to get qbus's parent
pci: add check for pcie root ports and downstream ports
hw/core/qdev.c | 7 +++++++
hw/pci/pci.c | 51 ++++++++++++++++++++++++++++++++++++++++++++++++++
include/hw/qdev-core.h | 1 +
3 files changed, 59 insertions(+)
--
1.7.12.4
- [Qemu-devel] [PATCH v2 0/2] add check for PCIe root ports and downstream ports,
arei.gonglei <=