From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754835AbdKGGml (ORCPT ); Tue, 7 Nov 2017 01:42:41 -0500 Received: from mail-pg0-f68.google.com ([74.125.83.68]:49569 "EHLO mail-pg0-f68.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753323AbdKGGmk (ORCPT ); Tue, 7 Nov 2017 01:42:40 -0500 X-Google-Smtp-Source: ABhQp+S4lxXN85hKaYWYVLnVWyPf50MXlEv8V0ry9Gdp/XNBoTWxOrN/cSBjS6EGOZ/XhW0HITUo1Q== Date: Mon, 6 Nov 2017 22:42:36 -0800 From: Bjorn Andersson To: Arnd Bergmann Cc: Ohad Ben-Cohen , Avaneesh Kumar Dwivedi , Andy Gross , Philipp Zabel , linux-remoteproc@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH] remoteproc: qcom: use %pap format string for phys_addr_t Message-ID: <20171107064236.GB22677@builder> References: <20171106133736.584646-1-arnd@arndb.de> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20171106133736.584646-1-arnd@arndb.de> User-Agent: Mutt/1.9.1 (2017-09-22) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon 06 Nov 05:37 PST 2017, Arnd Bergmann wrote: > We cannot cast a phys_addr_t variable to a pointer on 32-bit architectures > with CONFIG_PHYS_ADDR_T_64BIT set: > > In file included from include/linux/kernel.h:14:0, > from include/linux/clk.h:16, > from drivers/remoteproc/qcom_q6v5_pil.c:18: > drivers/remoteproc/qcom_q6v5_pil.c: In function 'q6v5_xfer_mem_ownership': > drivers/remoteproc/qcom_q6v5_pil.c:337:10: error: cast to pointer from integer of different size [-Werror=int-to-pointer-cast] > (void *)addr, (void *)(addr + size), > ^ > > The correct way to print the contents is to use the %pap format > string, passing the phys address by reference. > > Fixes: 6c5a9dc2481b ("remoteproc: qcom: Make secure world call for mem ownership switch") > Signed-off-by: Arnd Bergmann Thanks Arnd! As the majority of the call sites had their own error printing I filled in the last ones and dropped this pr_err instead. Regards, Bjorn > --- > drivers/remoteproc/qcom_q6v5_pil.c | 6 +++--- > 1 file changed, 3 insertions(+), 3 deletions(-) > > diff --git a/drivers/remoteproc/qcom_q6v5_pil.c b/drivers/remoteproc/qcom_q6v5_pil.c > index 5460f61ee21c..4576f88499cb 100644 > --- a/drivers/remoteproc/qcom_q6v5_pil.c > +++ b/drivers/remoteproc/qcom_q6v5_pil.c > @@ -333,9 +333,9 @@ static int q6v5_xfer_mem_ownership(struct q6v5 *qproc, int *current_perm, > ret = qcom_scm_assign_mem(addr, ALIGN(size, SZ_4K), > current_perm, &next, 1); > if (ret < 0) { > - pr_err("Failed to assign memory access in range %p to %p to %s ret = %d\n", > - (void *)addr, (void *)(addr + size), > - remote_owner ? "mss" : "hlos", ret); > + phys_addr_t end = addr + size; > + pr_err("Failed to assign memory access in range %pap to %pap to %s ret = %d\n", > + &addr, &end, remote_owner ? "mss" : "hlos", ret); > return ret; > } > > -- > 2.9.0 >