On 2016/01/18 22:13, Tan, Jianfeng wrote: > Hi Tetsuya, > > On 1/18/2016 5:13 PM, Tetsuya Mukawa wrote: >> The patches abstract pci access method of virtio-net PMD. >> The patch should be on Yuanhan's below patch series. >> - [PATCH v4 0/8] virtio 1.0 enabling for virtio pmd driver >> >> >> Tetsuya Mukawa (3): >> virtio: Change the parameter order of io_write8/16/32() >> virtio: move rte_eal_pci_unmap_device() to virtio_pci.c >> virtio: Add a new layer to abstract pci access method >> >> drivers/net/virtio/virtio_ethdev.c | 4 +- >> drivers/net/virtio/virtio_pci.c | 468 >> ++++++++++++++++++++++++++----------- >> drivers/net/virtio/virtio_pci.h | 33 ++- >> 3 files changed, 369 insertions(+), 136 deletions(-) >> > > Now I believe we will become more clear about the difference of our > two implementations. > > I was planning to just implement another struct virtio_pci_ops because > it's going the long way round for my implementation to translate > virtio_pci_ops to ioport/pci configuration space rd/wr then back to > sendmsg/ioctl. And in my implementation, there's no need to > differentiate legacy/modern device. > > As I understand, your implementation does not need another > implementation of struct virtio_pci_ops, but you need different > implementation in lower layer as this patch show. You want to support > both legacy/modern device, right?
Thanks for comments. Yes, I want to support both legacy and modern virtio devices. I will rebase my container patches on this abstraction, then submit it again. Thanks, Tetsuya