QEMU With E2K User Support
Go to file
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
audio
backends rng-random: NULL check not needed before g_free() 2014-06-24 20:01:24 +04:00
block block: Add replaces argument to drive-mirror 2014-06-27 20:00:00 +02:00
bsd-user
default-configs pc: implement pc-dimm device abstraction 2014-06-19 16:41:47 +03:00
disas
docs vhost-user: typo fixups 2014-06-29 19:39:41 +03:00
dtc@bc895d6d09
fpu fpu: softfloat: drop INLINE macro 2014-06-23 11:00:12 -04:00
fsdev
gdb-xml
hw virtio: add endian-ambivalent support to VirtIODevice 2014-06-29 19:39:42 +03:00
include virtio: memory accessors for endian-ambivalent targets 2014-06-29 19:39:42 +03:00
libcacard vscclient: Add required headers to fix build on FreeBSD 2014-06-24 20:01:24 +04:00
libdecnumber
linux-headers
linux-user linux-user: Support HWCAP2 in PowerPC 2014-06-27 13:48:22 +02:00
net net: move queue number into NICPeers 2014-06-27 11:19:31 +02:00
pc-bios pc-bios/s390-ccw: update binary 2014-06-27 12:11:53 +02:00
pixman@97336fad32
po
qapi Block patches for 2.1.0-rc0 2014-06-29 15:24:54 +01:00
qga
qobject json-lexer: fix escaped backslash in single-quoted string 2014-06-23 11:01:24 -04:00
qom cpu: introduce CPUClass::virtio_is_big_endian() 2014-06-29 19:39:42 +03:00
roms Update OpenBIOS images 2014-06-20 23:59:19 +01:00
scripts qapi script: clean up in scripts 2014-06-27 09:27:56 -04:00
slirp Increase maximum number of session of the internal TFTP server. 2014-06-24 20:01:24 +04:00
stubs Merge remote-tracking branch 'remotes/qmp-unstable/queue/qmp' into staging 2014-06-24 13:06:13 +01:00
sysconfigs/target
target-alpha
target-arm Fix new typos (found by codespell) 2014-06-24 20:01:24 +04:00
target-cris
target-i386 target-i386: Broadwell CPU model 2014-06-25 23:54:57 +02:00
target-lm32 vl: allow other threads to do qemu_system_vmstop_request 2014-06-23 16:36:13 +08:00
target-m68k
target-microblaze
target-mips target-mips: copy CP0_Config1 into DisasContext 2014-06-20 22:14:13 +02:00
target-moxie
target-openrisc openrisc: fix comment 2014-06-29 18:59:06 +03:00
target-ppc target-ppc: Add support for POWER8 pvr 0x4D0000 2014-06-27 13:48:24 +02:00
target-s390x target-s390x: Remove unused ld_code6() function 2014-06-24 20:01:24 +04:00
target-sh4
target-sparc
target-unicore32 target-unicore: Remove unused functions 2014-06-24 20:01:24 +04:00
target-xtensa
tcg tcg/ppc: Fix support for 64-bit PPC MacOSX hosts 2014-06-29 11:38:50 +01:00
tests Block patches for 2.1.0-rc0 2014-06-29 15:24:54 +01:00
trace glib-compat.h: add new thread API emulation on top of pre-2.31 API 2014-06-10 07:44:01 +02:00
ui qemu-char: introduce qemu_chr_alloc 2014-06-23 11:12:28 -04:00
util qemu_opts_append: Play nicely with QemuOptsList's head 2014-06-26 15:53:52 +02:00
.exrc
.gitignore qapi: ignore generated event files 2014-06-27 09:27:55 -04:00
.gitmodules
.mailmap
.travis.yml
aio-posix.c
aio-win32.c
arch_init.c
async.c
balloon.c qapi event: convert BALLOON_CHANGE 2014-06-23 11:12:28 -04:00
block-migration.c
block.c block.c: Don't return success for bdrv_append_temp_snapshot() failure 2014-06-27 20:00:00 +02:00
blockdev-nbd.c
blockdev.c block: Add replaces argument to drive-mirror 2014-06-27 20:00:00 +02:00
blockjob.c blockjob: Fix recent BLOCK_JOB_ERROR regression 2014-06-27 20:00:00 +02:00
bt-host.c
bt-vhci.c
Changelog
CODING_STYLE
configure configure: Enable out-of-tree iotests 2014-06-27 20:00:00 +02:00
COPYING
COPYING.LIB
coroutine-gthread.c
coroutine-sigaltstack.c
coroutine-ucontext.c
coroutine-win32.c coroutine-win32.c: Add noinline attribute to work around gcc bug 2014-06-26 14:08:14 +01:00
cpu-exec.c
cpus.c qapi event: convert STOP 2014-06-23 11:01:25 -04:00
cputlb.c
device_tree.c
device-hotplug.c
disas.c
dma-helpers.c
dump.c
exec.c exec: introduce target_words_bigendian() helper 2014-06-29 19:39:42 +03:00
gdbstub.c
HACKING
hmp-commands.hx Add the vhost-user netdev backend to the command line 2014-06-19 18:44:18 +03:00
hmp.c block: Add replaces argument to drive-mirror 2014-06-27 20:00:00 +02:00
hmp.h hmp: add info memdev 2014-06-19 18:44:21 +03:00
iohandler.c
ioport.c
iothread.c
kvm-all.c Merge remote-tracking branch 'remotes/kvm/uq/master' into staging 2014-06-20 19:25:18 +01:00
kvm-stub.c Add kvm_eventfds_enabled function 2014-06-19 16:41:54 +03:00
LICENSE
main-loop.c
MAINTAINERS Merge remote-tracking branch 'remotes/kvm/uq/master' into staging 2014-06-20 19:25:18 +01:00
Makefile qapi: move event defines 2014-06-27 09:27:55 -04:00
Makefile.objs qapi script: add event support 2014-06-23 11:01:25 -04:00
Makefile.target build-sys: introduce install-prog macro to install&strip binaries and use it 2014-06-24 20:01:24 +04:00
memory_mapping.c
memory.c hostmem: add property to map memory with MAP_SHARED 2014-06-19 18:44:20 +03:00
migration-exec.c
migration-fd.c
migration-rdma.c rdma: bug fixes 2014-06-23 19:09:50 +02:00
migration-tcp.c
migration-unix.c
migration.c
module-common.c
monitor.c mc146818rtc: add rtc-reset-reinjection QMP command 2014-06-29 18:59:35 +03:00
nbd.c
numa.c numa: Reject configuration if not all node IDs are present 2014-06-29 18:59:42 +03:00
os-posix.c
os-win32.c
page_cache.c
qapi-schema.json mc146818rtc: add rtc-reset-reinjection QMP command 2014-06-29 18:59:35 +03:00
qdev-monitor.c
qdict-test-data.txt
qemu-bridge-helper.c qemu-bridge-helper: Fix fd leak in main() 2014-06-27 10:39:10 +02:00
qemu-char.c char: report frontend open/closed state in 'query-chardev' 2014-06-27 09:34:00 -04:00
qemu-coroutine-io.c
qemu-coroutine-lock.c
qemu-coroutine-sleep.c
qemu-coroutine.c
qemu-doc.texi
qemu-file.c
qemu-img-cmds.hx
qemu-img.c
qemu-img.texi
qemu-io-cmds.c
qemu-io.c
qemu-log.c
qemu-nbd.c
qemu-nbd.texi
qemu-options-wrapper.h
qemu-options.h
qemu-options.hx net: L2TPv3 transport 2014-06-27 10:39:10 +02:00
qemu-seccomp.c
qemu-tech.texi
qemu-timer.c
qemu.nsi
qemu.sasl
qmp-commands.hx mc146818rtc: add rtc-reset-reinjection QMP command 2014-06-29 18:59:35 +03:00
qmp.c qmp: add query-acpi-ospm-status command 2014-06-19 18:44:22 +03:00
qtest.c
README
rules.mak build-sys: introduce install-prog macro to install&strip binaries and use it 2014-06-24 20:01:24 +04:00
savevm.c savevm: check vmsd for migratability status 2014-06-25 23:54:57 +02:00
softmmu_template.h
spice-qemu-char.c qemu-char: introduce qemu_chr_alloc 2014-06-23 11:12:28 -04:00
tcg-runtime.c
tci.c
thread-pool.c
thunk.c
tpm.c
trace-events spapr_pci: Use XICS interrupt allocator and do not cache interrupts in PHB 2014-06-27 13:48:27 +02:00
translate-all.c Fix new typos (found by codespell) 2014-06-24 20:01:24 +04:00
translate-all.h
user-exec.c
VERSION
version.rc
vl.c numa: Keep track of NUMA nodes present on the command-line 2014-06-29 18:59:41 +03:00
vmstate.c vmstate: Add preallocation for migrating arrays (VMS_ALLOC flag) 2014-06-27 13:48:27 +02:00
xbzrle.c
xen-common-stub.c
xen-common.c
xen-hvm-stub.c xen-hvm: Fix xen_hvm_init() to adjust pc memory layout 2014-06-23 17:50:04 +03:00
xen-hvm.c xen-hvm: Handle machine opt max-ram-below-4g 2014-06-23 18:02:55 +03:00
xen-mapcache.c

Read the documentation in qemu-doc.html or on http://wiki.qemu-project.org

- QEMU team