qemu/include
Alexey Kardashevskiy b194df478a spapr-pci: Enable huge BARs
At the moment sPAPR only supports 512MB window for MMIO BARs. However
modern devices might want bigger 64bit BARs.

This extends MMIO window from 512MB to 62GB (aligned to
SPAPR_PCI_WINDOW_SPACING) and advertises it in 2 records in
the PHB "ranges" property. 32bit gets the space from
SPAPR_PCI_MEM_WIN_BUS_OFFSET till the end of 4GB, 64bit gets the rest
of the space. If no space is left, 64bit range is not advertised.

The MMIO space size is set to old value of 0x20000000 by default
for pseries machines older than 2.3.

The approach changes the device tree which is a guest visible change, however
it won't break migration as:
1. we do not support migration to older QEMU versions
2. migration to newer QEMU will migrate the device tree as well and since
the new layout only extends the old one and does not change address mappigns,
no breakage is expected here too.

SLOF change is required to utilize this extension.

Suggested-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru>
Reviewed-by: David Gibson <david@gibson.dropbear.id.au>
Signed-off-by: Alexander Graf <agraf@suse.de>
2015-03-09 14:59:54 +01:00
..
block block: Forbid bdrv_set_aio_context outside BQL 2015-02-27 14:43:45 +01:00
disas disas: Implement disassembly output for A64 2014-02-08 14:50:48 +00:00
exec pc-dimm: add a function to calculate VM's current RAM size 2015-03-04 13:00:04 -05:00
fpu softfloat: expand out STATUS macro 2015-02-06 16:11:38 +00:00
hw spapr-pci: Enable huge BARs 2015-03-09 14:59:54 +01:00
libdecnumber Fix new typos in comments (found by codespell) 2014-07-18 17:45:36 +04:00
migration hmp: Clean up declarations for long-gone info handlers 2015-02-18 11:58:21 +01:00
monitor Clean up around error_get_pretty(), qerror_report_err() 2015-02-26 07:01:08 +00:00
net virtio-net,tap: use standard-headers 2015-02-26 13:04:04 +01:00
qapi error: New convenience function error_report_err() 2015-02-18 10:50:43 +01:00
qemu qemu-img: Suppress unhelpful extra errors in convert, amend 2015-02-26 14:51:21 +01:00
qom QOM infrastructure fixes and device conversions 2015-03-02 13:20:43 +00:00
standard-headers virtio_ring.h: s/__inline__/inline/ 2015-02-26 13:04:09 +01:00
sysemu pci, pc, virtio fixes and cleanups 2015-03-09 09:14:28 +00:00
ui hmp: Normalize HMP command handler names 2015-02-25 13:14:37 +00:00
config.h janitor: move remaining public headers to include/ 2012-12-19 08:32:46 +01:00
elf.h tcg-sparc: Use ADDXC in addsub2_i64 2014-09-29 14:55:27 -04:00
glib-compat.h glib: add compatibility interface for g_strcmp0() 2014-10-16 23:02:31 +01:00
qemu-common.h qxl: refactor rounding up to a nearest power of 2 2015-03-03 08:33:08 +01:00
qemu-io.h qemu-io: Use BlockBackend 2015-02-16 15:07:19 +00:00
qjson.h QJSON: Add JSON writer 2015-02-05 17:16:14 +01:00
trace-tcg.h trace: [tcg] Generate TCG tracing routines 2014-08-12 14:26:12 +01:00
trace.h trace: [tcg] Include event definitions in "trace.h" 2014-08-12 14:26:12 +01:00