Thread (13 messages) flat view 13 messages, 5 authors, 2021-07-14

Re: [PATCH V2 5/5] remoteproc: imx_rproc: change to ioremap_wc for dram

From: Dong Aisheng <hidden>
Date: 2021-07-14 10:24:55
Also in: linux-remoteproc

On Wed, Jul 14, 2021 at 8:59 AM Peng Fan [off-list ref] wrote:
Hi Mathieu,
quoted
Subject: Re: [PATCH V2 5/5] remoteproc: imx_rproc: change to ioremap_wc
for dram

On Wed, Jul 07, 2021 at 05:40:33PM +0800, Dong Aisheng wrote:
quoted
DRAM is not io memory, so changed to ioremap_wc. This is also aligned
with core io accessories. e.g. memcpy/memset and cpu direct access.

Cc: Bjorn Andersson <redacted>
Cc: Mathieu Poirier <mathieu.poirier@linaro.org>
Fixes: 5e4c1243071d ("remoteproc: imx_rproc: support remote cores
booted before Linux Kernel")
Reviewed-by: Peng Fan <peng.fan@nxp.com>
Signed-off-by: Dong Aisheng <aisheng.dong@nxp.com>
---
v1->v2:
 * new patch
It's a new patch and yet Peng's RB tag is already on it...
Aisheng's reply in the other email.
"
Above two lines were added by mistake. (copied from patch 4)
I'm going to wait for review comments first and resend with changes if any.

Regards
Aisheng
"
quoted
quoted
---
 drivers/remoteproc/imx_rproc.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/remoteproc/imx_rproc.c
b/drivers/remoteproc/imx_rproc.c index ff620688fad9..4ae416ba5080
100644
--- a/drivers/remoteproc/imx_rproc.c
+++ b/drivers/remoteproc/imx_rproc.c
@@ -597,7 +597,7 @@ static int imx_rproc_addr_init(struct imx_rproc
*priv,
quoted
                    break;

            /* Not use resource version, because we might share region */
-           priv->mem[b].cpu_addr = devm_ioremap(&pdev->dev, res.start,
resource_size(&res));
quoted
+           priv->mem[b].cpu_addr = devm_ioremap_wc(&pdev->dev,
res.start,
quoted
+resource_size(&res));
How was it working before?
we took all memory used by M-core as io memory, including TCM/SRAM/DRAM.

Will it really work for all platforms and was this
quoted
extensively tested?
Aisheng may confirm, I not test this patchset.
quoted
Peng - I will need an explicit reply from you that you are in agreement with
this change.
I not test, but it should work per my understanding.
i.MX TCM area has limitation that not use ioremap_wc, DRAM has no such
limitation. Just think this not deserve a fix tag.
I tested with MX8MQ, i could find more to test although it should work
theoretically.
Why adding fixes tag is because using normal memory accessories (e.g. memset)
for io memory (device type) may have issues.
Does it make sense?

Regards
Aisheng

quoted
I will also need you to review patch 01 and 02 of this set.
Sure, I'll review.

Thanks,
Peng.
quoted
Thanks,
Mathieu
quoted
            if (!priv->mem[b].cpu_addr) {
                    dev_err(dev, "failed to remap %pr\n", &res);
                    return -ENOMEM;
--
2.25.1
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help