From: Hiago De Franco <hiagofranco@gmail.com>
To: Mathieu Poirier <mathieu.poirier@linaro.org>
Cc: Bjorn Andersson <andersson@kernel.org>,
Shawn Guo <shawnguo@kernel.org>,
Sascha Hauer <s.hauer@pengutronix.de>,
Iuliana Prodan <iuliana.prodan@nxp.com>,
Peng Fan <peng.fan@nxp.com>,
Daniel Baluta <daniel.baluta@nxp.com>,
linux-remoteproc@vger.kernel.org, imx@lists.linux.dev,
linux-arm-kernel@lists.infradead.org,
linux-kernel@vger.kernel.org,
Hiago De Franco <hiago.franco@toradex.com>,
Ritesh Kumar <ritesh.kumar@toradex.com>
Subject: Re: [PATCH] remoteproc: imx_rproc: merge ITCM and DTCM regions
Date: Fri, 4 Jul 2025 16:08:16 -0300 [thread overview]
Message-ID: <20250704190816.kth7bdf34ufc2ht6@hiagonb> (raw)
In-Reply-To: <aGgAbwToGhsc5VV9@p14s>
Hi Mathieu,
On Fri, Jul 04, 2025 at 10:25:19AM -0600, Mathieu Poirier wrote:
> Good morning,
>
> On Thu, Jul 03, 2025 at 10:08:31AM -0300, Hiago De Franco wrote:
> > From: Hiago De Franco <hiago.franco@toradex.com>
> >
> > Merge the contiguous ITCM and DTCM regions into a single region to
> > prevent failures when loading ELF files with large sections:
> >
> > remoteproc remoteproc0: powering up imx-rproc
> > remoteproc remoteproc0: Booting fw image rproc-imx-rproc-fw, size 151824
> > imx-rproc imx8mp-cm7: Translation failed: da = 0x1f48 len = 0x1fcb0
> > remoteproc remoteproc0: bad phdr da 0x1f48 mem 0x1fcb0
> > remoteproc remoteproc0: Failed to load program segments: -22
> > remoteproc remoteproc0: Boot failed: -22
> >
> > This approach is the same as commit 8749919defb8 ("remoteproc:
> > imx_rproc: Merge TCML/U").
> >
> > Suggested-by: Ritesh Kumar <ritesh.kumar@toradex.com>
> > Signed-off-by: Hiago De Franco <hiago.franco@toradex.com>
> > ---
> > Hi,
> >
> > The ELF I tested had the following data section:
> >
> > Memory region Used Size Region Size %age Used
> > m_interrupts: 680 B 1 KB 66.41%
> > m_text: 6984 B 127 KB 5.37%
> > m_data: 130224 B 128 KB 99.35%
> > m_data2: 0 GB 16 MB 0.00%
> > [100%] Built target hello_world_cm7.elf
> >
> > Which triggered the error. After this patch, remoteproc was able to boot
> > and work fine. Thanks!
> > ---
> > drivers/remoteproc/imx_rproc.c | 6 ++----
> > 1 file changed, 2 insertions(+), 4 deletions(-)
> >
> > diff --git a/drivers/remoteproc/imx_rproc.c b/drivers/remoteproc/imx_rproc.c
> > index 74299af1d7f1..bbf089ef48ee 100644
> > --- a/drivers/remoteproc/imx_rproc.c
> > +++ b/drivers/remoteproc/imx_rproc.c
> > @@ -166,8 +166,8 @@ static const struct imx_rproc_att imx_rproc_att_imx8qxp[] = {
> >
> > static const struct imx_rproc_att imx_rproc_att_imx8mn[] = {
> > /* dev addr , sys addr , size , flags */
> > - /* ITCM */
> > - { 0x00000000, 0x007E0000, 0x00020000, ATT_OWN | ATT_IOMEM },
> > + /* D/ITCM */
> > + { 0x00000000, 0x007E0000, 0x00040000, ATT_OWN | ATT_IOMEM },
> > /* OCRAM_S */
> > { 0x00180000, 0x00180000, 0x00009000, 0 },
> > /* OCRAM */
> > @@ -180,8 +180,6 @@ static const struct imx_rproc_att imx_rproc_att_imx8mn[] = {
> > { 0x08000000, 0x08000000, 0x08000000, 0 },
> > /* DDR (Code) - alias */
> > { 0x10000000, 0x40000000, 0x0FFE0000, 0 },
> > - /* DTCM */
> > - { 0x20000000, 0x00800000, 0x00020000, ATT_OWN | ATT_IOMEM },
>
> In commit 8749919defb8 "dev addr" and "sys addr" were both contiguous, but in
> this patch "dev addr" is not. How will this work with new kernel that use old
> FW images? Am I missing something?
No, you are correct, I think the use case I tested was not good enough.
If I understand correctly, this will break older firmware expecting
.data at 0x20000000 because dev_addr is no longer mapped for DTCM entry.
Do you think it is possible (or reccomend) another approach to fix this
issue? In this case to keep using the TCM, instead of going to OCRAM or
DDR.
Thanks,
Hiago.
>
> Thanks,
> Mathieu
>
> > /* OCRAM_S - alias */
> > { 0x20180000, 0x00180000, 0x00008000, ATT_OWN },
> > /* OCRAM */
> > --
> > 2.39.5
> >
next prev parent reply other threads:[~2025-07-04 19:10 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-07-03 13:08 [PATCH] remoteproc: imx_rproc: merge ITCM and DTCM regions Hiago De Franco
2025-07-04 16:25 ` Mathieu Poirier
2025-07-04 19:08 ` Hiago De Franco [this message]
2025-07-05 13:25 ` Peng Fan
2025-07-05 22:39 ` Peng Fan
2025-07-07 16:13 ` Mathieu Poirier
2025-07-08 17:29 ` Hiago De Franco
2025-07-09 8:26 ` Peng Fan
2025-07-10 15:46 ` Hiago De Franco
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=20250704190816.kth7bdf34ufc2ht6@hiagonb \
--to=hiagofranco@gmail.com \
--cc=andersson@kernel.org \
--cc=daniel.baluta@nxp.com \
--cc=hiago.franco@toradex.com \
--cc=imx@lists.linux.dev \
--cc=iuliana.prodan@nxp.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-remoteproc@vger.kernel.org \
--cc=mathieu.poirier@linaro.org \
--cc=peng.fan@nxp.com \
--cc=ritesh.kumar@toradex.com \
--cc=s.hauer@pengutronix.de \
--cc=shawnguo@kernel.org \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox