summaryrefslogtreecommitdiffstats
path: root/include/hw/ppc
diff options
context:
space:
mode:
authorDavid Gibson2017-12-11 07:34:30 +0100
committerDavid Gibson2018-01-16 23:35:24 +0100
commit2d1fb9bc8e6e78931d8e1bfeb0ed7a4d223b0480 (patch)
tree7bef5e81ef5c6581bbfc9009c1ed3d47aeecc6cb /include/hw/ppc
parentspapr: Handle VMX/VSX presence as an spapr capability flag (diff)
downloadqemu-2d1fb9bc8e6e78931d8e1bfeb0ed7a4d223b0480.tar.gz
qemu-2d1fb9bc8e6e78931d8e1bfeb0ed7a4d223b0480.tar.xz
qemu-2d1fb9bc8e6e78931d8e1bfeb0ed7a4d223b0480.zip
spapr: Handle Decimal Floating Point (DFP) as an optional capability
Decimal Floating Point has been available on POWER7 and later (server) cpus. However, it can be disabled on the hypervisor, meaning that it's not available to guests. We currently handle this by conditionally advertising DFP support in the device tree depending on whether the guest CPU model supports it - which can also depend on what's allowed in the host for -cpu host. That can lead to confusion on migration, since host properties are silently affecting guest visible properties. This patch handles it by treating it as an optional capability for the pseries machine type. Signed-off-by: David Gibson <david@gibson.dropbear.id.au> Reviewed-by: Greg Kurz <groug@kaod.org>
Diffstat (limited to 'include/hw/ppc')
-rw-r--r--include/hw/ppc/spapr.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/include/hw/ppc/spapr.h b/include/hw/ppc/spapr.h
index 148a03d189..26ac17e641 100644
--- a/include/hw/ppc/spapr.h
+++ b/include/hw/ppc/spapr.h
@@ -62,6 +62,9 @@ typedef enum {
/* Vector Scalar Extensions */
#define SPAPR_CAP_VSX 0x0000000000000002ULL
+/* Decimal Floating Point */
+#define SPAPR_CAP_DFP 0x0000000000000004ULL
+
typedef struct sPAPRCapabilities sPAPRCapabilities;
struct sPAPRCapabilities {
uint64_t mask;