[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Minios-devel] [UNIKRAFT PATCH 0/7] plat/drivers: Improve virtio support in Unikraft



Introduces the basic building blocks for the working with virtio devices in 
Unikraft. We introduce a virtio bus to bridge the virtio device with the virtio
device driver. We introduces a virtio PCI driver implementation to scan the 
virtio 
device on the PCI bus. The virtio PCI driver operates in legacy mode.

This patch also introduces a virtqueue abstraction to interact with the virtio
ring. The virtqueue layer supports creation and deletion operations on the 
virtqueue, enqueuing and dequeuing descriptor into the virtio ring as well as 
support handling interrupts on the virtio ring.

Sharan Santhanam (7):
  plat/driver: Remove the virtio-ring implementation
  plat/common: Introduce virtio standard header
  plat/drivers: Introduce the virtio bus
  plat/drivers: Introduce virtio PCI device
  plat/drivers: Reintroduce the virtio ring
  plat/drivers: Interrupt handling for virtio-ring
  plat/drivers: Add & Remove buffer from virtio-ring

 plat/common/include/pci/virtio/virtio_pci.h  |  66 ----
 plat/common/include/pci/virtio/virtio_ring.h | 276 ---------------
 plat/drivers/include/virtio/virtio.h         | 327 ++++++++++++++++++
 plat/drivers/include/virtio/virtio_config.h  | 259 ++++++++++++++
 plat/drivers/include/virtio/virtio_ids.h     |  64 ++++
 plat/drivers/include/virtio/virtio_pci.h     |  70 ++++
 plat/drivers/include/virtio/virtio_ring.h    | 196 +++++++++++
 plat/drivers/include/virtio/virtio_types.h   |  62 ++++
 plat/drivers/include/virtio/virtqueue.h      | 237 +++++++++++++
 plat/drivers/virtio/virtio_bus.c             | 211 ++++++++++++
 plat/drivers/virtio/virtio_pci.c             | 433 +++++++++++++++++++++++
 plat/drivers/virtio/virtio_ring.c            | 496 ++++++++++++++++++++-------
 plat/kvm/Config.uk                           |  24 +-
 plat/kvm/Makefile.uk                         |  17 +-
 14 files changed, 2265 insertions(+), 473 deletions(-)
 delete mode 100644 plat/common/include/pci/virtio/virtio_pci.h
 delete mode 100644 plat/common/include/pci/virtio/virtio_ring.h
 create mode 100644 plat/drivers/include/virtio/virtio.h
 create mode 100644 plat/drivers/include/virtio/virtio_config.h
 create mode 100644 plat/drivers/include/virtio/virtio_ids.h
 create mode 100644 plat/drivers/include/virtio/virtio_pci.h
 create mode 100644 plat/drivers/include/virtio/virtio_ring.h
 create mode 100644 plat/drivers/include/virtio/virtio_types.h
 create mode 100644 plat/drivers/include/virtio/virtqueue.h
 create mode 100644 plat/drivers/virtio/virtio_bus.c
 create mode 100644 plat/drivers/virtio/virtio_pci.c

-- 
2.7.4


_______________________________________________
Minios-devel mailing list
Minios-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/mailman/listinfo/minios-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.