diff options
author | Dmitry Fleytman | 2016-06-01 10:23:34 +0200 |
---|---|---|
committer | Jason Wang | 2016-06-02 04:42:26 +0200 |
commit | b56b9285e4b58a0b8fe8b011d48dbf7e2afba785 (patch) | |
tree | fb2f97d52f06022b5827d2608dc54418e2a47225 /hw | |
parent | pcie: Add support for PCIe CAP v1 (diff) | |
download | qemu-b56b9285e4b58a0b8fe8b011d48dbf7e2afba785.tar.gz qemu-b56b9285e4b58a0b8fe8b011d48dbf7e2afba785.tar.xz qemu-b56b9285e4b58a0b8fe8b011d48dbf7e2afba785.zip |
pcie: Introduce function for DSN capability creation
Signed-off-by: Dmitry Fleytman <dmitry.fleytman@ravellosystems.com>
Signed-off-by: Leonid Bloch <leonid.bloch@ravellosystems.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Jason Wang <jasowang@redhat.com>
Diffstat (limited to 'hw')
-rw-r--r-- | hw/pci/pcie.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/hw/pci/pcie.c b/hw/pci/pcie.c index 24cfc3bcda..9599fdef57 100644 --- a/hw/pci/pcie.c +++ b/hw/pci/pcie.c @@ -695,3 +695,13 @@ void pcie_ari_init(PCIDevice *dev, uint16_t offset, uint16_t nextfn) offset, PCI_ARI_SIZEOF); pci_set_long(dev->config + offset + PCI_ARI_CAP, (nextfn & 0xff) << 8); } + +void pcie_dev_ser_num_init(PCIDevice *dev, uint16_t offset, uint64_t ser_num) +{ + static const int pci_dsn_ver = 1; + static const int pci_dsn_cap = 4; + + pcie_add_capability(dev, PCI_EXT_CAP_ID_DSN, pci_dsn_ver, offset, + PCI_EXT_CAP_DSN_SIZEOF); + pci_set_quad(dev->config + offset + pci_dsn_cap, ser_num); +} |