[SLOF] [PATCH v3 00/22] Generic virtio 1.0 with block and network support
Nikunj A Dadhania
nikunj at linux.vnet.ibm.com
Fri Jan 22 21:54:43 AEDT 2016
Following patch series enables virtio 1.0 support in SLOF.
Currently, two drivers are supported virtio-blk and virtio-net.
Patches are organised in following order:
01-12: Generic fixes, code improvements and re-organization
13-19: Enables generic virtio 1.0 functionality
20-21: Converts virtio-blk and virtio-net drivers to 1.0
22: Enables modern devices (device ids > 1041)
Changelog:
v2:
* split patch 08 to different patches
* Set local-mac-address only once
* rename virtio_{read,write}64 to virtio_pci_{read,write}64
* Remove q_size magic
* Introduce cpu_to_modern{16,32,64} and vice versa
* Use cpu_to_le32 in place of bswap32
* Consistently use int type and 0/-1 as return
* Not required to set running = 0 in error case
v1:
* Patch re-organisation as suggested by alexey
* Separated out coding style changes and code re-organization
* Feature negotiation now sets and checks FEATURES_OK bit
* Added virtio_get_status for feature negotiation
* Added missing notify_off_mul in SLOF virtio_device structure
* virtio-net - net_hdr_size was missing at one place
* squashed all the api conversion to one single patch
* Introduced and enabled virtio_parse_capabilities in
one single patch. Also, disabled is_modern until the
driver is ready.
ToDo:
* Convert virtio-scsi and virtio-9p drivers
Nikunj A Dadhania (22):
virtio: fix gcc warnings (-Wextra)
pci: add byte read/write helper routines
fix code style in byteorder.h
virtio: fix code style/design issues.
virtio: introduce helper for initializing virt queue
virtio-{blk,9p}: enable resetting the device
virtio-blk: add helpers for filling descriptors
virtio-{net,blk,scsi,9p}: use status variable
virtio-net: use virtio_fill_desc
virtio-net: replace vq array with vq_{tx,rx}
virtio-net: make net_hdr_size a variable
virtio-net: move setup-mac to the open routine
virtio: add virtio 1.0 related struct and defines
virtio: add 64-bit virtio helpers for 1.0
virtio: make all virtio apis 1.0 aware
virtio: 1.0 features set/get register accessor
virtio: 1.0 guest features negotiation
virtio: add and enable 1.0 capability parsing
virtio: 1.0 helper to read 16/32/64 bit value
virtio-blk: enable virtio 1.0
virtio-net: enable virtio 1.0
virtio: support virtio 1.0 only device ids
board-qemu/slof/pci-device_1af4_1001.fs | 9 -
board-qemu/slof/pci-device_1af4_1009.fs | 9 -
board-qemu/slof/virtio-net.fs | 23 +-
board-qemu/slof/virtio.fs | 18 ++
include/byteorder.h | 22 +-
include/helpers.h | 2 +
lib/libvirtio/virtio-9p.c | 33 ++-
lib/libvirtio/virtio-blk.c | 113 ++++---
lib/libvirtio/virtio-net.c | 191 ++++++------
lib/libvirtio/virtio-net.h | 12 -
lib/libvirtio/virtio-scsi.c | 163 ++++++-----
lib/libvirtio/virtio.c | 503 ++++++++++++++++++++++++++++----
lib/libvirtio/virtio.code | 6 +
lib/libvirtio/virtio.h | 61 +++-
lib/libvirtio/virtio.in | 2 +
slof/fs/pci-device.fs | 8 +-
slof/helpers.c | 14 +
17 files changed, 851 insertions(+), 338 deletions(-)
--
2.5.0
More information about the SLOF
mailing list