From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:40315) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Z9r4d-0001dT-JJ for qemu-devel@nongnu.org; Tue, 30 Jun 2015 04:39:28 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Z9r4Z-0000fJ-IQ for qemu-devel@nongnu.org; Tue, 30 Jun 2015 04:39:23 -0400 Received: from mx1.redhat.com ([209.132.183.28]:44074) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Z9r4Z-0000f9-Cg for qemu-devel@nongnu.org; Tue, 30 Jun 2015 04:39:19 -0400 From: Gerd Hoffmann Date: Tue, 30 Jun 2015 10:38:51 +0200 Message-Id: <1435653553-7728-1-git-send-email-kraxel@redhat.com> Subject: [Qemu-devel] [PATCH v2 00/22] virtio: add version 1.0 support List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: seabios@seabios.org Cc: Gerd Hoffmann , qemu-devel@nongnu.org, "Michael S. Tsirkin" Hi, This patch series adds virtio 1.0 support to the virtio blk and scsi drivers in seabios. With this series applied seabios happily boots in virtio 1.0 mode from both transitional and modern devices. Tested with Fedora 22 guest, booting from virtio-scsi cdrom (live iso), virtio-scsi disk and virtio-blk disk. The patches are also available in the git repository at: git://git.kraxel.org/seabios virtio v2 changes: * rename vp_modern_{read_write} to vp_{read,write} * switch legacy virtio code to vp_{read,write} too. * make vp_read return the values. Gerd Hoffmann (22): pci: allow to loop over capabilities virtio: run drivers in 32bit mode virtio: add struct vp_device virtio: pass struct pci_device to vp_init_simple virtio: add version 1.0 structs and #defines virtio: add version 0.9.5 struct virtio: find version 1.0 virtio capabilities virtio: create vp_cap struct for legacy bar virtio: add version 0.9.5 struct [fixup] virtio: add read/write functions and macros virtio: make features 64bit, support version 1.0 features virtio: add version 1.0 support to vp_{get,set}_status virtio: add version 1.0 support to vp_get_isr virtio: add version 1.0 support to vp_reset virtio: add version 1.0 support to vp_notify virtio: remove unused vp_del_vq virtio: add version 1.0 support to vp_find_vq virtio-scsi: fix initialization for version 1.0 virtio-blk: fix initialization for version 1.0 virtio: use version 1.0 if available (flip the big switch) virtio: also probe version 1.0 pci ids virtio: legacy cleanup src/block.c | 8 +- src/fw/pciinit.c | 4 +- src/hw/pci.c | 11 ++- src/hw/pci.h | 2 +- src/hw/pci_ids.h | 8 +- src/hw/virtio-blk.c | 104 +++++++++++++++------ src/hw/virtio-pci.c | 228 +++++++++++++++++++++++++++++++++++++++++----- src/hw/virtio-pci.h | 252 ++++++++++++++++++++++++++++++++++++--------------- src/hw/virtio-ring.c | 4 +- src/hw/virtio-ring.h | 9 +- src/hw/virtio-scsi.c | 60 ++++++++---- 11 files changed, 535 insertions(+), 155 deletions(-) -- 1.8.3.1