diff options
author | Sam bobroff <sam.bobroff@au1.ibm.com> | 2014-06-25 13:54:31 +1000 |
---|---|---|
committer | Alexander Graf <agraf@suse.de> | 2014-06-27 13:48:26 +0200 |
commit | b907d7b0fdc8b2bbb93a37ac4b5c68a44f22e8ac (patch) | |
tree | 7179960c213829716f0bdb674a3b5035e08ff6b5 | |
parent | 3052d9519000739ec25224ed1ca7498b7ff66d77 (diff) | |
download | qemu-b907d7b0fdc8b2bbb93a37ac4b5c68a44f22e8ac.tar.gz |
spapr: Add RTAS sysparm UUID
Add support for the UUID parameter to the emulated RTAS call
ibm,get-system-parameter.
Return the guest's UUID as the value for the RTAS UUID system
parameter, or null (a zero length result) if it is not set.
Signed-off-by: Sam Bobroff <sam.bobroff@au1.ibm.com>
Signed-off-by: Alexander Graf <agraf@suse.de>
-rw-r--r-- | hw/ppc/spapr_rtas.c | 4 | ||||
-rw-r--r-- | include/hw/ppc/spapr.h | 1 |
2 files changed, 5 insertions, 0 deletions
diff --git a/hw/ppc/spapr_rtas.c b/hw/ppc/spapr_rtas.c index ac9a8601ea..dba4e2b20b 100644 --- a/hw/ppc/spapr_rtas.c +++ b/hw/ppc/spapr_rtas.c @@ -240,6 +240,9 @@ static void rtas_ibm_get_system_parameter(PowerPCCPU *cpu, rtas_st_buffer(buffer, length, ¶m_val, sizeof(param_val)); break; } + case RTAS_SYSPARM_UUID: + rtas_st_buffer(buffer, length, qemu_uuid, (qemu_uuid_set ? 16 : 0)); + break; default: ret = RTAS_OUT_NOT_SUPPORTED; } @@ -258,6 +261,7 @@ static void rtas_ibm_set_system_parameter(PowerPCCPU *cpu, switch (parameter) { case RTAS_SYSPARM_DIAGNOSTICS_RUN_MODE: + case RTAS_SYSPARM_UUID: ret = RTAS_OUT_NOT_AUTHORIZED; break; } diff --git a/include/hw/ppc/spapr.h b/include/hw/ppc/spapr.h index d043771616..46b7a71734 100644 --- a/include/hw/ppc/spapr.h +++ b/include/hw/ppc/spapr.h @@ -399,6 +399,7 @@ static inline int spapr_allocate_lsi(int hint) /* RTAS ibm,get-system-parameter token values */ #define RTAS_SYSPARM_DIAGNOSTICS_RUN_MODE 42 +#define RTAS_SYSPARM_UUID 48 /* Possible values for the platform-processor-diagnostics-run-mode parameter * of the RTAS ibm,get-system-parameter call. |