qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [RFC] Virt machine memory map
@ 2015-07-20  8:55 Pavel Fedin
  2015-07-20  9:41 ` Peter Maydell
  0 siblings, 1 reply; 8+ messages in thread
From: Pavel Fedin @ 2015-07-20  8:55 UTC (permalink / raw)
  To: qemu-devel; +Cc: 'Peter Maydell'

 Hello!

 In our project we work on a very fast paravirtualized network I/O drivers, based  on ivshmem. We
successfully got ivshmem working on ARM, however with one hack.
Currently we have:
--- cut ---
    [VIRT_PCIE_MMIO] =          { 0x10000000, 0x2eff0000 },
    [VIRT_PCIE_PIO] =           { 0x3eff0000, 0x00010000 },
    [VIRT_PCIE_ECAM] =          { 0x3f000000, 0x01000000 },
    [VIRT_MEM] =                { 0x40000000, 30ULL * 1024 * 1024 * 1024 },
--- cut ---
 And MMIO region is not enough for us because we want to have 1GB mapping for PCI device. In order
to make it working, we modify the map as follows:
--- cut ---
    [VIRT_PCIE_MMIO] =            { 0x10000000, 0x7eff0000 },
    [VIRT_PCIE_PIO] =           { 0x8eff0000, 0x00010000 },
    [VIRT_PCIE_ECAM] =          { 0x8f000000, 0x01000000 },
    [VIRT_MEM] =             { 0x90000000, 30ULL * 1024 * 1024 * 1024 },
--- cut ---
 The question is - how could we upstream this? I believe modifying 32-bit virt memory map this way
is not good. Will it be OK to have different memory map for 64-bit virt ?
 Another possible approach is not to use PCI, but MMIO instead, and just specify our region in the
device tree. This way we work around the limitation of having only a single PCI MMIO region, and we
could happily place our 1GB device after system RAM.
 Any opinions ?

Kind regards,
Pavel Fedin
Expert Engineer
Samsung Electronics Research center Russia

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2015-07-22  8:42 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-07-20  8:55 [Qemu-devel] [RFC] Virt machine memory map Pavel Fedin
2015-07-20  9:41 ` Peter Maydell
2015-07-20 11:23   ` Alexander Graf
2015-07-20 13:30     ` Igor Mammedov
2015-07-20 13:44       ` Alexander Graf
2015-07-22  6:52     ` Pavel Fedin
2015-07-22  7:33       ` Alexander Graf
2015-07-22  8:42         ` Pavel Fedin

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).