aboutsummaryrefslogtreecommitdiff
path: root/hw/spapr.h
diff options
context:
space:
mode:
authorDavid Gibson <david@gibson.dropbear.id.au>2012-11-12 16:46:57 +0000
committerAlexander Graf <agraf@suse.de>2012-12-14 13:12:54 +0100
commit639e8102ae71ce2e46ebeffc6080767e573c0c56 (patch)
tree5a09de7099446d237dec48b0c9d19ae8c76ca4d0 /hw/spapr.h
parent22a2611c9cef4a8c8ad96fe17b3511a6cc5fb3a1 (diff)
downloadqemu-639e8102ae71ce2e46ebeffc6080767e573c0c56.zip
qemu-639e8102ae71ce2e46ebeffc6080767e573c0c56.tar.gz
qemu-639e8102ae71ce2e46ebeffc6080767e573c0c56.tar.bz2
pseries: Implement PAPR NVRAM
The PAPR specification requires a certain amount of NVRAM, accessed via RTAS, which we don't currently implement in qemu. This patch addresses this deficiency, implementing the NVRAM as a VIO device, with some glue to instantiate it automatically based on a machine option. The machine option specifies a drive id, which is used to back the NVRAM, making it persistent. If nothing is specified, the driver instead simply allocates space for the NVRAM, which will not be persistent Signed-off-by: David Gibson <david@gibson.dropbear.id.au> Signed-off-by: Alexander Graf <agraf@suse.de>
Diffstat (limited to 'hw/spapr.h')
-rw-r--r--hw/spapr.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/hw/spapr.h b/hw/spapr.h
index 971a50a..600722f 100644
--- a/hw/spapr.h
+++ b/hw/spapr.h
@@ -6,11 +6,13 @@
struct VIOsPAPRBus;
struct sPAPRPHBState;
+struct sPAPRNVRAM;
struct icp_state;
typedef struct sPAPREnvironment {
struct VIOsPAPRBus *vio_bus;
QLIST_HEAD(, sPAPRPHBState) phbs;
+ struct sPAPRNVRAM *nvram;
struct icp_state *icp;
hwaddr ram_limit;