[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 1/4] vmxnet3: The vmxnet3 device is a PCIE endpo
From: |
Jason Wang |
Subject: |
Re: [Qemu-devel] [PATCH 1/4] vmxnet3: The vmxnet3 device is a PCIE endpoint |
Date: |
Wed, 25 Nov 2015 10:38:51 +0800 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.3.0 |
On 11/19/2015 06:52 PM, Shmulik Ladkani wrote:
> Report the 'express endpoint' capability if on a PCIE bus.
>
> Signed-off-by: Shmulik Ladkani <address@hidden>
> ---
> hw/net/vmxnet3.c | 5 +++++
> 1 file changed, 5 insertions(+)
>
> diff --git a/hw/net/vmxnet3.c b/hw/net/vmxnet3.c
> index 5e3a233..ed286cc 100644
> --- a/hw/net/vmxnet3.c
> +++ b/hw/net/vmxnet3.c
> @@ -2233,6 +2233,10 @@ static void vmxnet3_pci_realize(PCIDevice *pci_dev,
> Error **errp)
> VMW_WRPRN("Failed to initialize MSI, configuration is
> inconsistent.");
> }
>
> + if (pci_bus_is_express(pci_dev->bus)) {
> + pcie_endpoint_cap_init(pci_dev, 0);
> + }
> +
> vmxnet3_net_init(s);
>
> register_savevm(dev, "vmxnet3-msix", -1, 1,
> @@ -2568,6 +2572,7 @@ static void vmxnet3_class_init(ObjectClass *class, void
> *data)
> c->class_id = PCI_CLASS_NETWORK_ETHERNET;
> c->subsystem_vendor_id = PCI_VENDOR_ID_VMWARE;
> c->subsystem_id = PCI_DEVICE_ID_VMWARE_VMXNET3;
> + c->is_express = 1;
Should we do this conditionally? And how about the migration
compatibility? Looks like pcie device is using vmstate_pcie_device
instead of vmstate_pci_device, maybe need a new property bit for this.
>
> dc->reset = vmxnet3_qdev_reset;
> dc->vmsd = &vmstate_vmxnet3;
[Qemu-devel] [PATCH 2/4] vmxnet3: Change offsets of PCI capabilities, Shmulik Ladkani, 2015/11/19
[Qemu-devel] [PATCH 3/4] vmxnet3: Change the offset of the MSIX PBA table, Shmulik Ladkani, 2015/11/19
[Qemu-devel] [PATCH 4/4] vmxnet3: Report the Device Serial Number capability, Shmulik Ladkani, 2015/11/19