From mboxrd@z Thu Jan 1 00:00:00 1970 From: Yuanhan Liu Subject: [PATCH v2 0/7] virtio 1.0 enabling for virtio pmd driver Date: Tue, 12 Jan 2016 14:58:57 +0800 Message-ID: <1452581944-24838-1-git-send-email-yuanhan.liu@linux.intel.com> References: <1449719650-3482-1-git-send-email-yuanhan.liu@linux.intel.com> Cc: "Michael S. Tsirkin" To: dev@dpdk.org Return-path: Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by dpdk.org (Postfix) with ESMTP id 33337DE6 for ; Tue, 12 Jan 2016 07:58:11 +0100 (CET) In-Reply-To: <1449719650-3482-1-git-send-email-yuanhan.liu@linux.intel.com> List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" v2: - fix a data corruption reported by Qian, due to hdr size mismatch. check detailes at ptach 5. - Add missing config_irq and isr reading support from v1. - fix comments from v1. Almost all difference comes from virtio 1.0 are the PCI layout change: the major configuration structures are stored at bar space, and their location is stored at corresponding pci cap structure. Reading/parsing them is one of the major work of patch 7. To make handling virtio v1.0 and v0.95 co-exist well, this patch set introduces a virtio_pci_ops structure, to add another layer so that we could keep those vtpci_foo_bar "APIs". With that, we could do the minimum change to add virtio 1.0 support. --- Yuanhan Liu (7): virtio: don't set vring address again at queue startup virtio: introduce struct virtio_pci_ops virtio: move left pci stuff to virtio_pci.c viritio: switch to 64 bit features virtio: retrieve hdr_size from hw->vtnet_hdr_size eal: pci: export pci_map_device virtio: add 1.0 support doc/guides/rel_notes/release_2_3.rst | 3 + drivers/net/virtio/virtio_ethdev.c | 301 +--------- drivers/net/virtio/virtio_ethdev.h | 3 +- drivers/net/virtio/virtio_pci.c | 768 +++++++++++++++++++++++- drivers/net/virtio/virtio_pci.h | 102 +++- drivers/net/virtio/virtio_rxtx.c | 21 +- drivers/net/virtio/virtqueue.h | 4 +- lib/librte_eal/bsdapp/eal/eal_pci.c | 2 +- lib/librte_eal/bsdapp/eal/rte_eal_version.map | 6 + lib/librte_eal/common/eal_common_pci.c | 2 +- lib/librte_eal/common/eal_private.h | 11 - lib/librte_eal/common/include/rte_pci.h | 11 + lib/librte_eal/linuxapp/eal/eal_pci.c | 2 +- lib/librte_eal/linuxapp/eal/rte_eal_version.map | 6 + 14 files changed, 899 insertions(+), 343 deletions(-) -- 1.9.0