qemu/include
Greg Kurz 0f5d1d2a49 virtio: memory accessors for endian-ambivalent targets
This is the virtio-access.h header file taken from Rusty's "endian-ambivalent
targets using legacy virtio" patch. It introduces helpers that should be used
when accessing vring data or by drivers for data that contains headers.
The virtio config space is also target endian, but the current code already
handles that with the virtio_is_big_endian() helper. There is no obvious
benefit at using the virtio accessors in this case.

Now we have two distinct paths: a fast inline one for fixed endian targets,
and a slow out-of-line one for targets that define the new TARGET_IS_BIENDIAN
macro.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
[ relicensed virtio-access.h to GPLv2+ on Rusty's request,
  pass &address_space_memory to physical memory accessors,
  per-device endianness,
  virtio tswap16 and tswap64 helpers,
  faspath for fixed endian targets,
  Greg Kurz <gkurz@linux.vnet.ibm.com> ]
Cc: Cédric Le Goater <clg@fr.ibm.com>
Signed-off-by: Greg Kurz <gkurz@linux.vnet.ibm.com>
Reviewed-by: Alexander Graf <agraf@suse.de>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
2014-06-29 19:39:42 +03:00
..
block Block patches for 2.1.0-rc0 2014-06-29 15:24:54 +01:00
disas disas: Implement disassembly output for A64 2014-02-08 14:50:48 +00:00
exec vhost-user: fix regions provied with VHOST_USER_SET_MEM_TABLE message 2014-06-29 19:39:40 +03:00
fpu fpu: softfloat: drop INLINE macro 2014-06-23 11:00:12 -04:00
hw virtio: memory accessors for endian-ambivalent targets 2014-06-29 19:39:42 +03:00
libdecnumber libdecnumber: Introduce decNumberIntegralToInt64 2014-06-16 13:24:29 +02:00
migration vmstate: Add preallocation for migrating arrays (VMS_ALLOC flag) 2014-06-27 13:48:27 +02:00
monitor qapi event: clean up 2014-06-23 11:12:28 -04:00
net net: move queue number into NICPeers 2014-06-27 11:19:31 +02:00
qapi qapi: add event helper functions 2014-06-23 11:01:25 -04:00
qemu Merge remote-tracking branch 'remotes/qmp-unstable/queue/qmp' into staging 2014-06-24 13:06:13 +01:00
qom cpu: introduce CPUClass::virtio_is_big_endian() 2014-06-29 19:39:42 +03:00
sysemu numa: Keep track of NUMA nodes present on the command-line 2014-06-29 18:59:41 +03:00
ui console: move chardev declarations to sysemu/char.h 2014-06-23 10:56:20 +01:00
config.h janitor: move remaining public headers to include/ 2012-12-19 08:32:46 +01:00
elf.h target-ppc: Support little-endian PPC64 in user mode. 2014-06-16 13:24:40 +02:00
glib-compat.h glib-compat.h: add new thread API emulation on top of pre-2.31 API 2014-06-10 07:44:01 +02:00
qemu-common.h util: add return value to qemu_iovec_concat_iov 2014-06-18 08:47:10 +02:00
qemu-io.h qemu-io: Fix warnings from static code analysis 2014-03-13 14:42:24 +01:00
trace.h build: some simplifications for "trace/Makefile.objs" 2013-01-12 18:42:51 +01:00