From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:44347) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XPQCD-0003fv-Cp for qemu-devel@nongnu.org; Thu, 04 Sep 2014 02:07:10 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1XPQC0-0004JI-1j for qemu-devel@nongnu.org; Thu, 04 Sep 2014 02:07:01 -0400 Received: from e28smtp03.in.ibm.com ([122.248.162.3]:57377) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XPQBy-0004H4-SA for qemu-devel@nongnu.org; Thu, 04 Sep 2014 02:06:47 -0400 Received: from /spool/local by e28smtp03.in.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Thu, 4 Sep 2014 11:36:43 +0530 Received: from d28relay05.in.ibm.com (d28relay05.in.ibm.com [9.184.220.62]) by d28dlp03.in.ibm.com (Postfix) with ESMTP id 0351E125807A for ; Thu, 4 Sep 2014 11:37:02 +0530 (IST) Received: from d28av01.in.ibm.com (d28av01.in.ibm.com [9.184.220.63]) by d28relay05.in.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id s84673Ec52559994 for ; Thu, 4 Sep 2014 11:37:03 +0530 Received: from d28av01.in.ibm.com (localhost [127.0.0.1]) by d28av01.in.ibm.com (8.14.4/8.14.4/NCO v10.0 AVout) with ESMTP id s8466ZMc017926 for ; Thu, 4 Sep 2014 11:36:35 +0530 From: Bharata B Rao Date: Thu, 4 Sep 2014 11:36:23 +0530 Message-Id: <1409810785-12391-14-git-send-email-bharata@linux.vnet.ibm.com> In-Reply-To: <1409810785-12391-1-git-send-email-bharata@linux.vnet.ibm.com> References: <1409810785-12391-1-git-send-email-bharata@linux.vnet.ibm.com> Subject: [Qemu-devel] [RFC PATCH v0 13/15] ppc: Make ibm, configure-connector endian-safe List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: mdroth@linux.vnet.ibm.com, Bharata B Rao Store RTAS data in ibm,configure-connector RTAS call in big endian format as per sPAPR specifications. Signed-off-by: Bharata B Rao --- hw/ppc/spapr_pci.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/hw/ppc/spapr_pci.c b/hw/ppc/spapr_pci.c index 76463b3..4a384aa 100644 --- a/hw/ppc/spapr_pci.c +++ b/hw/ppc/spapr_pci.c @@ -641,7 +641,7 @@ static void rtas_ibm_configure_connector(PowerPCCPU *cpu, } wa_buf_int = wa_buf; - drc_index = *(uint32_t *)wa_buf; + drc_index = be32_to_cpu(*(uint32_t *)wa_buf); drc_entry = spapr_find_drc_entry(drc_index); if (!drc_entry) { rc = -1; @@ -671,7 +671,7 @@ retry: case FDT_BEGIN_NODE: ccs->depth++; node_name = fdt_get_name(ccs->fdt, ccs->offset, &node_name_len); - wa_buf_int[CC_IDX_NODE_NAME_OFFSET] = CC_VAL_DATA_OFFSET; + wa_buf_int[CC_IDX_NODE_NAME_OFFSET] = cpu_to_be32(CC_VAL_DATA_OFFSET); strcpy(wa_buf + wa_buf_int[CC_IDX_NODE_NAME_OFFSET], node_name); rc = CC_RET_NEXT_CHILD; break; @@ -688,10 +688,10 @@ retry: case FDT_PROP: prop = fdt_get_property_by_offset(ccs->fdt, ccs->offset, &prop_len); prop_name = fdt_string(ccs->fdt, fdt32_to_cpu(prop->nameoff)); - wa_buf_int[CC_IDX_PROP_NAME_OFFSET] = CC_VAL_DATA_OFFSET; - wa_buf_int[CC_IDX_PROP_LEN] = prop_len; + wa_buf_int[CC_IDX_PROP_NAME_OFFSET] = cpu_to_be32(CC_VAL_DATA_OFFSET); + wa_buf_int[CC_IDX_PROP_LEN] = cpu_to_be32(prop_len); wa_buf_int[CC_IDX_PROP_DATA_OFFSET] = - CC_VAL_DATA_OFFSET + strlen(prop_name) + 1; + cpu_to_be32(CC_VAL_DATA_OFFSET + strlen(prop_name) + 1); strcpy(wa_buf + wa_buf_int[CC_IDX_PROP_NAME_OFFSET], prop_name); memcpy(wa_buf + wa_buf_int[CC_IDX_PROP_DATA_OFFSET], prop->data, prop_len); -- 1.7.11.7