summary refs log tree commit diff stats
path: root/hw/usb/dev-network.c
diff options
context:
space:
mode:
authorDavid Gibson <david@gibson.dropbear.id.au>2012-11-05 14:29:01 +1100
committerGerd Hoffmann <kraxel@redhat.com>2012-11-09 08:27:55 +0100
commit616b5d53ae81a94a4aabe8a87a5d950e9d349bc5 (patch)
treed3bee04faa9de8f0ef43e42e3213e0e76bb9d5c9 /hw/usb/dev-network.c
parentffd8a97fb33d3b036d61c508bd73ee7fa4051c6b (diff)
downloadfocaccia-qemu-616b5d53ae81a94a4aabe8a87a5d950e9d349bc5.tar.gz
focaccia-qemu-616b5d53ae81a94a4aabe8a87a5d950e9d349bc5.zip
xhci: Fix some DMA host endian bugs
The xhci device does correct endian switches on the results of some DMAs
but not all.  In particular, there are many DMAs of what are essentially
arrays of 32-bit integers which never get byteswapped.  This causes them
to be interpreted incorrectly on big-endian hosts, since (as per the xhci
spec) these arrays are always little-endian in guest memory.

This patch adds some helper functions to fix these bugs.  This may not be
all the endian bugs in the xhci code, but it's certainly some of them and
the Linux guest xhci driver certainly gets further with these fixes.

Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Diffstat (limited to 'hw/usb/dev-network.c')
0 files changed, 0 insertions, 0 deletions