aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnthony Liguori <aliguori@us.ibm.com>2013-07-12 14:37:47 -0500
committerAnthony Liguori <aliguori@us.ibm.com>2013-07-12 14:37:47 -0500
commitc3cb8e77804313e1be99b5f28a34a346736707a5 (patch)
tree545293cbe09da9e9a5d78c35f1c9b1f06c188c29
parent25ca6a1f5a3ee0a1ae670590877ed14f05e28fba (diff)
downloadqemu-c3cb8e77804313e1be99b5f28a34a346736707a5.zip
qemu-c3cb8e77804313e1be99b5f28a34a346736707a5.tar.gz
qemu-c3cb8e77804313e1be99b5f28a34a346736707a5.tar.bz2
ioport: remove LITTLE_ENDIAN mark for portio
Setting it to LE forces a byte swap when host != guest endian but this makes no sense at all. Herve made the suggestion upon observing that word writes/reads were broken into byte writes/reads in such a way as to assume devices are interpret registers as LE. However, even if this were a problem, marking the region as LE is not useful because what's essentially happening here is that LE is open coded. So by marking it LE in MemoryRegionOps, we're doing a superflous swap. Now, the portio code is suspicious to begin with. The dispatch layer really has no purpose in splitting I/O requests in the first place... Cc: Hervé Poussineau <hpoussin@reactos.org> Cc: Alex Graf <agraf@suse.de> Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
-rw-r--r--ioport.c1
1 files changed, 0 insertions, 1 deletions
diff --git a/ioport.c b/ioport.c
index 79b7f1a..89b17d6 100644
--- a/ioport.c
+++ b/ioport.c
@@ -183,7 +183,6 @@ static void portio_write(void *opaque, hwaddr addr, uint64_t data,
static const MemoryRegionOps portio_ops = {
.read = portio_read,
.write = portio_write,
- .endianness = DEVICE_LITTLE_ENDIAN,
.valid.unaligned = true,
.impl.unaligned = true,
};