On Tue, May 25, 2010 at 8:39 AM, Joerg Roedel <joro@xxxxxxxxxx> wrote: > On Mon, May 24, 2010 at 08:10:16PM +0000, Blue Swirl wrote: >> On Mon, May 24, 2010 at 3:40 PM, Joerg Roedel <joro@xxxxxxxxxx> wrote: >> >> + >> >> +#define MMIO_SIZE 0x2028 >> > >> > This size should be a power-of-two value. In this case probably 0x4000. >> >> Not really, the devices can reserve regions of any size. There were >> some implementation deficiencies in earlier versions of QEMU, where >> the whole page would be reserved anyway, but this limitation has been >> removed long time ago. > > The drivers for AMD IOMMU expect that to be 0x4000. At least the Linux > driver maps the MMIO region with this size. So the emulation should > reserve this amount of MMIO space too. Well, Linux drivers may take a conservative approach so I'd check what's the value in the device specs. In practice, on x86 hardware the size doesn't matter too much, for example on Sparc an access beyond the end of the device region would trap. -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html