From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:43527) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Wytto-0006Ir-Ob for qemu-devel@nongnu.org; Sun, 22 Jun 2014 22:22:34 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Wyttb-0002do-Sm for qemu-devel@nongnu.org; Sun, 22 Jun 2014 22:22:24 -0400 Received: from e23smtp07.au.ibm.com ([202.81.31.140]:42343) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Wyttb-0002dG-5Y for qemu-devel@nongnu.org; Sun, 22 Jun 2014 22:22:11 -0400 Received: from /spool/local by e23smtp07.au.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Mon, 23 Jun 2014 12:22:07 +1000 Received: from d23relay03.au.ibm.com (d23relay03.au.ibm.com [9.190.235.21]) by d23dlp03.au.ibm.com (Postfix) with ESMTP id 54B9C3578055 for ; Mon, 23 Jun 2014 12:22:04 +1000 (EST) Received: from d23av02.au.ibm.com (d23av02.au.ibm.com [9.190.235.138]) by d23relay03.au.ibm.com (8.13.8/8.13.8/NCO v10.0) with ESMTP id s5N2LmDv61341726 for ; Mon, 23 Jun 2014 12:21:48 +1000 Received: from d23av02.au.ibm.com (localhost [127.0.0.1]) by d23av02.au.ibm.com (8.14.4/8.14.4/NCO v10.0 AVout) with ESMTP id s5N2M3WK018103 for ; Mon, 23 Jun 2014 12:22:03 +1000 From: Gavin Shan Date: Mon, 23 Jun 2014 12:22:03 +1000 Message-Id: <1403490123-15969-4-git-send-email-gwshan@linux.vnet.ibm.com> In-Reply-To: <1403490123-15969-1-git-send-email-gwshan@linux.vnet.ibm.com> References: <1403490123-15969-1-git-send-email-gwshan@linux.vnet.ibm.com> Subject: [Qemu-devel] [PATCH v1 3/3] sPAPR: Export RTAS property List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: aik@ozlabs.ru, qiudayu@linux.vnet.ibm.com, agraf@suse.de, Gavin Shan The patch exports RTAS property "ibm,errinjct-tokens", which is defined in PAPR spec and used to indicate various error types we can inject. Signed-off-by: Gavin Shan --- hw/ppc/spapr.c | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/hw/ppc/spapr.c b/hw/ppc/spapr.c index a61af85..1d52229 100644 --- a/hw/ppc/spapr.c +++ b/hw/ppc/spapr.c @@ -443,6 +443,23 @@ static void spapr_create_drc_dt_entries(void *fdt) } while (0) +static void add_errinjct_token(GString *s, uint32_t token, const gchar *desc) +{ + g_string_append_len(s, desc, strlen(desc) + 1); + g_string_append_len(s, (gchar *)&token, sizeof(token)); +} + +static void add_errinjct_token_prop(void *fdt) +{ + GString *s = g_string_sized_new(256); + + add_errinjct_token(s, RTAS_ERRINJCT_TYPE_IOA_BUS_ERROR, "ioa-bus-error"); + add_errinjct_token(s, RTAS_ERRINJCT_TYPE_IOA_BUS_ERROR64, "ioa-bus-error-64"); + + _FDT((fdt_property(fdt, "ibm,errinjct-tokens", s->str, s->len))); + g_string_free(s, true); +} + static void *spapr_create_fdt_skel(hwaddr initrd_base, hwaddr initrd_size, hwaddr kernel_size, @@ -664,6 +681,8 @@ static void *spapr_create_fdt_skel(hwaddr initrd_base, _FDT((fdt_property(fdt, "qemu,hypertas-functions", qemu_hypertas_prop, sizeof(qemu_hypertas_prop)))); + add_errinjct_token_prop(fdt); + _FDT((fdt_property(fdt, "ibm,associativity-reference-points", refpoints, sizeof(refpoints)))); -- 1.8.3.2