qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [PATCH] ioport: remove LITTLE_ENDIAN mark for portio


From: Anthony Liguori
Subject: [Qemu-devel] [PATCH] ioport: remove LITTLE_ENDIAN mark for portio
Date: Fri, 12 Jul 2013 15:30:46 -0500

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 <address@hidden>
Cc: Alex Graf <address@hidden>
Cc: Benjamin Herrenschmidt <address@hidden>
Signed-off-by: Anthony Liguori <address@hidden>
---
 ioport.c | 1 -
 1 file changed, 1 deletion(-)

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,
 };
-- 
1.8.0




reply via email to

[Prev in Thread] Current Thread [Next in Thread]