From mboxrd@z Thu Jan 1 00:00:00 1970 From: Yuanhan Liu Subject: Re: [PATCH 0/6 for 2.3] initial virtio 1.0 enabling Date: Thu, 10 Dec 2015 11:58:38 +0800 Message-ID: <20151210035838.GQ29571@yliu-dev.sh.intel.com> References: <1449719650-3482-1-git-send-email-yuanhan.liu@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: dev@dpdk.org To: "Michael S. Tsirkin" Return-path: Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by dpdk.org (Postfix) with ESMTP id 32DAC8DA9 for ; Thu, 10 Dec 2015 04:57:21 +0100 (CET) Content-Disposition: inline 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" Michael, Sorry that I forgot to CC you. (In fact, I intended to, but there is a tiny bug at my send-email script :( It'd be great if you could take some time to review it. Thanks. --yliu On Thu, Dec 10, 2015 at 11:54:04AM +0800, Yuanhan Liu wrote: > Hi, > > Here is an initial virtio 1.0 pmd driver enabling. > > 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 6. > > 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. > > Note that the enabling is still in rough state, and it's likely I may > miss something. So, comments are huge welcome! > > --yliu > > --- > Yuanhan Liu (6): > 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: set RTE_PCI_DRV_NEED_MAPPING flag > virtio: add virtio v1.0 support > > drivers/net/virtio/virtio_ethdev.c | 297 +-------------- > drivers/net/virtio/virtio_ethdev.h | 3 +- > drivers/net/virtio/virtio_pci.c | 752 +++++++++++++++++++++++++++++++++++-- > drivers/net/virtio/virtio_pci.h | 100 ++++- > drivers/net/virtio/virtio_rxtx.c | 15 - > drivers/net/virtio/virtqueue.h | 4 +- > 6 files changed, 843 insertions(+), 328 deletions(-) > > -- > 1.9.0