[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PULL V4 09/31] pcie: Introduce function for DSN capability
From: |
Jason Wang |
Subject: |
[Qemu-devel] [PULL V4 09/31] pcie: Introduce function for DSN capability creation |
Date: |
Thu, 2 Jun 2016 14:48:00 +0800 |
From: Dmitry Fleytman <address@hidden>
Signed-off-by: Dmitry Fleytman <address@hidden>
Signed-off-by: Leonid Bloch <address@hidden>
Reviewed-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Jason Wang <address@hidden>
---
hw/pci/pcie.c | 10 ++++++++++
include/hw/pci/pcie.h | 1 +
2 files changed, 11 insertions(+)
diff --git a/hw/pci/pcie.c b/hw/pci/pcie.c
index 24cfc3b..9599fde 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);
+}
diff --git a/include/hw/pci/pcie.h b/include/hw/pci/pcie.h
index cbbf0c5..056d25e 100644
--- a/include/hw/pci/pcie.h
+++ b/include/hw/pci/pcie.h
@@ -119,6 +119,7 @@ void pcie_add_capability(PCIDevice *dev,
uint16_t offset, uint16_t size);
void pcie_ari_init(PCIDevice *dev, uint16_t offset, uint16_t nextfn);
+void pcie_dev_ser_num_init(PCIDevice *dev, uint16_t offset, uint64_t ser_num);
extern const VMStateDescription vmstate_pcie_device;
--
2.7.4
- [Qemu-devel] [PULL V4 00/31] Net patches, Jason Wang, 2016/06/02
- [Qemu-devel] [PULL V4 02/31] net: mipsnet: check packet length against buffer, Jason Wang, 2016/06/02
- [Qemu-devel] [PULL V4 01/31] net/tap: Allocating Large sized arrays to heap, Jason Wang, 2016/06/02
- [Qemu-devel] [PULL V4 03/31] net: vl: Move default_net to vl.c, Jason Wang, 2016/06/02
- [Qemu-devel] [PULL V4 05/31] pci: fix unaligned access in pci_xxx_quad(), Jason Wang, 2016/06/02
- [Qemu-devel] [PULL V4 04/31] net/net: Add SocketReadState for reuse codes, Jason Wang, 2016/06/02
- [Qemu-devel] [PULL V4 06/31] msix: make msix_clr_pending() visible for clients, Jason Wang, 2016/06/02
- [Qemu-devel] [PULL V4 07/31] pci: Introduce define for PM capability version 1.1, Jason Wang, 2016/06/02
- [Qemu-devel] [PULL V4 08/31] pcie: Add support for PCIe CAP v1, Jason Wang, 2016/06/02
- [Qemu-devel] [PULL V4 10/31] vmxnet3: Use generic function for DSN capability definition, Jason Wang, 2016/06/02
- [Qemu-devel] [PULL V4 09/31] pcie: Introduce function for DSN capability creation,
Jason Wang <=
- [Qemu-devel] [PULL V4 11/31] net: Introduce Toeplitz hash calculator, Jason Wang, 2016/06/02
- [Qemu-devel] [PULL V4 12/31] net: Add macros for MAC address tracing, Jason Wang, 2016/06/02
- [Qemu-devel] [PULL V4 13/31] vmxnet3: Use common MAC address tracing macros, Jason Wang, 2016/06/02
- [Qemu-devel] [PULL V4 15/31] rtl8139: Move more TCP definitions to common header, Jason Wang, 2016/06/02
- [Qemu-devel] [PULL V4 14/31] net_pkt: Name vmxnet3 packet abstractions more generic, Jason Wang, 2016/06/02
- [Qemu-devel] [PULL V4 17/31] vmxnet3: Use pci_dma_* API instead of cpu_physical_memory_*, Jason Wang, 2016/06/02
- [Qemu-devel] [PULL V4 16/31] net_pkt: Extend packet abstraction as required by e1000e functionality, Jason Wang, 2016/06/02
- [Qemu-devel] [PULL V4 18/31] e1000_regs: Add definitions for Intel 82574-specific bits, Jason Wang, 2016/06/02
- [Qemu-devel] [PULL V4 19/31] e1000: Move out code that will be reused in e1000e, Jason Wang, 2016/06/02
- [Qemu-devel] [PULL V4 22/31] net: improve UDP/TCP checksum computation., Jason Wang, 2016/06/02