qemu-devel
[Top][All Lists]
Advanced

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

[Qemu-devel] How to get 64-bit MMIO?


From: Dmitry Antipov
Subject: [Qemu-devel] How to get 64-bit MMIO?
Date: Thu, 18 Feb 2010 17:41:38 +0300
User-agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.7) Gecko/20100120 Fedora/3.0.1-1.fc12 Thunderbird/3.0.1

Hello all,

is there any support for 64-bit MMIO?

I'm trying to emulate 16750-like UART by adopting current 16550A emulation.
The problem is that my (MIPS) hardware is 64-bit, and native software
issues 64-bit load/stores (LD/SD) to talk with all hardware registers,
which are all 64-bit too (for UART case, only 8 lower bits are used, BTW).
As I can see, qemu splits 64-bit access into two 32-bit back-to-back ones,
but this gives catastrophic results if host and guest has different
byte order - i.e. write 0x0000000000000001 to 0x100 gives write 0x00000000
to 0x100 and 0x10000000 to 0x104 because 64-bit quantities are swapped within
32-bit halves.

Dmitry




reply via email to

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