virtio linux headers are actually pretty portable: all we need is implement linux/types.h in a portable way, and we can import them and use on any platform.
These patches do exactly that, as a pre-requisite to adding support for new virtio layout. Note: if someone adds non-portable code in files we import from linux-headers, we'll have to revert to copying code manually. This didn't happen yet so hopefully it won't. Changes from v1: - add stubs for non linux platforms - fix mingw cross build Michael S. Tsirkin (11): make: pull in linux-headers on all platforms scripts/update-linux-headers.sh: add virtio virtio-9p: switch to linux-headers virtio-net, eth: use linux-headers virtio-blk: switch to linux-headers virtio-balloon: switch to linux-headers virtio-rng: switch to linux-headers virtio-console: switch to linux-headers virtio: add virtio_ids from linux-headers virtio-pci: switch to linux-headers virtio: use ring structure from linux-headers Makefile.target | 5 +- configure | 7 +- hw/9pfs/virtio-9p.h | 13 +-- hw/block/dataplane/virtio-blk.c | 12 +-- hw/block/virtio-blk.c | 10 +- hw/virtio/virtio-balloon.c | 2 +- hw/virtio/virtio-pci.c | 49 +-------- hw/virtio/virtio.c | 23 +--- include/hw/virtio/virtio-balloon.h | 37 +------ include/hw/virtio/virtio-blk.h | 86 +-------------- include/hw/virtio/virtio-net.h | 141 +----------------------- include/hw/virtio/virtio-rng.h | 5 +- include/hw/virtio/virtio-serial.h | 38 +------ include/hw/virtio/virtio.h | 45 +------- include/net/eth.h | 5 +- include/net/tap.h | 24 +---- linux-headers/linux/if_ether.h | 140 ++++++++++++++++++++++++ linux-headers/linux/virtio_9p.h | 44 ++++++++ linux-headers/linux/virtio_balloon.h | 59 ++++++++++ linux-headers/linux/virtio_blk.h | 128 ++++++++++++++++++++++ linux-headers/linux/virtio_console.h | 74 +++++++++++++ linux-headers/linux/virtio_ids.h | 43 ++++++++ linux-headers/linux/virtio_net.h | 202 +++++++++++++++++++++++++++++++++++ linux-headers/linux/virtio_pci.h | 97 +++++++++++++++++ linux-headers/linux/virtio_rng.h | 8 ++ scripts/update-linux-headers.sh | 17 ++- 26 files changed, 862 insertions(+), 452 deletions(-) create mode 100644 linux-headers/linux/if_ether.h create mode 100644 linux-headers/linux/virtio_9p.h create mode 100644 linux-headers/linux/virtio_balloon.h create mode 100644 linux-headers/linux/virtio_blk.h create mode 100644 linux-headers/linux/virtio_console.h create mode 100644 linux-headers/linux/virtio_ids.h create mode 100644 linux-headers/linux/virtio_net.h create mode 100644 linux-headers/linux/virtio_pci.h create mode 100644 linux-headers/linux/virtio_rng.h -- MST