From: Aravinda Prasad <aravinda@linux.vnet.ibm.com>
To: qemu-ppc@nongnu.org, agraf@suse.de, qemu-devel@nongnu.org
Cc: benh@au1.ibm.com, aik@ozlabs.ru, paulus@samba.org,
sam.bobroff@au1.ibm.com, david@gibson.dropbear.id.au
Subject: [Qemu-devel] [PATCH v2 1/4] spapr: Register and handle HCALL to receive updated RTAS region
Date: Wed, 16 Dec 2015 11:38:13 +0530 [thread overview]
Message-ID: <20151216060812.10636.48835.stgit@aravindap> (raw)
In-Reply-To: <20151216060551.10636.77403.stgit@aravindap>
Receive updates from SLOF about the updated rtas-base.
A separate patch for SLOF [1] adds functionality to invoke
a private HCALL whenever OS issues instantiate-rtas with
a new rtas-base.
This is required as QEMU needs to know the updated rtas-base
as it allocates error reporting structure in RTAS space upon
a machine check exception.
[1] https://lists.ozlabs.org/pipermail/linuxppc-dev/2014-August/120386.html
Signed-off-by: Aravinda Prasad <aravinda@linux.vnet.ibm.com>
---
hw/ppc/spapr_hcall.c | 8 ++++++++
include/hw/ppc/spapr.h | 3 ++-
2 files changed, 10 insertions(+), 1 deletion(-)
diff --git a/hw/ppc/spapr_hcall.c b/hw/ppc/spapr_hcall.c
index 652ddf6..9703ed2 100644
--- a/hw/ppc/spapr_hcall.c
+++ b/hw/ppc/spapr_hcall.c
@@ -580,6 +580,13 @@ static target_ulong h_rtas(PowerPCCPU *cpu, sPAPRMachineState *spapr,
nret, rtas_r3 + 12 + 4*nargs);
}
+static target_ulong h_rtas_update(PowerPCCPU *cpu, sPAPRMachineState *spapr,
+ target_ulong opcode, target_ulong *args)
+{
+ spapr->rtas_addr = args[0];
+ return 0;
+}
+
static target_ulong h_logical_load(PowerPCCPU *cpu, sPAPRMachineState *spapr,
target_ulong opcode, target_ulong *args)
{
@@ -1008,6 +1015,7 @@ static void hypercall_register_types(void)
/* qemu/KVM-PPC specific hcalls */
spapr_register_hypercall(KVMPPC_H_RTAS, h_rtas);
+ spapr_register_hypercall(KVMPPC_H_RTAS_UPDATE, h_rtas_update);
spapr_register_hypercall(H_SET_MODE, h_set_mode);
diff --git a/include/hw/ppc/spapr.h b/include/hw/ppc/spapr.h
index 91a61ab..b5cadd7 100644
--- a/include/hw/ppc/spapr.h
+++ b/include/hw/ppc/spapr.h
@@ -347,7 +347,8 @@ struct sPAPRMachineState {
#define KVMPPC_H_LOGICAL_MEMOP (KVMPPC_HCALL_BASE + 0x1)
/* Client Architecture support */
#define KVMPPC_H_CAS (KVMPPC_HCALL_BASE + 0x2)
-#define KVMPPC_HCALL_MAX KVMPPC_H_CAS
+#define KVMPPC_H_RTAS_UPDATE (KVMPPC_HCALL_BASE + 0x3)
+#define KVMPPC_HCALL_MAX KVMPPC_H_RTAS_UPDATE
typedef struct sPAPRDeviceTreeUpdateHeader {
uint32_t version_id;
next prev parent reply other threads:[~2015-12-16 6:08 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-12-16 6:08 [Qemu-devel] [PATCH v2 0/4] target-ppc/spapr: Add FWNMI support in QEMU for PowerKVM guests Aravinda Prasad
2015-12-16 6:08 ` Aravinda Prasad [this message]
2015-12-17 3:25 ` [Qemu-devel] [PATCH v2 1/4] spapr: Register and handle HCALL to receive updated RTAS region David Gibson
2015-12-16 6:08 ` [Qemu-devel] [PATCH v2 2/4] spapr: Handle "ibm, nmi-register" and "ibm, nmi-interlock" RTAS calls Aravinda Prasad
2015-12-17 3:51 ` David Gibson
2015-12-17 4:45 ` [Qemu-devel] [Qemu-ppc] " Aravinda Prasad
2015-12-16 6:08 ` [Qemu-devel] [PATCH v2 3/4] target-ppc: Handle NMI guest exit Aravinda Prasad
2015-12-17 4:00 ` David Gibson
2015-12-17 5:01 ` [Qemu-devel] [Qemu-ppc] " Aravinda Prasad
2015-12-16 6:08 ` [Qemu-devel] [PATCH v2 4/4] spapr: Introduce FWNMI KVM capability Aravinda Prasad
2015-12-17 4:02 ` David Gibson
2015-12-17 4:38 ` Aravinda Prasad
2016-10-13 2:02 ` Alexey Kardashevskiy
2015-12-17 7:03 ` Thomas Huth
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20151216060812.10636.48835.stgit@aravindap \
--to=aravinda@linux.vnet.ibm.com \
--cc=agraf@suse.de \
--cc=aik@ozlabs.ru \
--cc=benh@au1.ibm.com \
--cc=david@gibson.dropbear.id.au \
--cc=paulus@samba.org \
--cc=qemu-devel@nongnu.org \
--cc=qemu-ppc@nongnu.org \
--cc=sam.bobroff@au1.ibm.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.