[PATCH v3] remoteproc: imx_dsp_rproc: Add support of recovery and coredump process

Shengjiu Wang shengjiu.wang at gmail.com
Mon Jul 28 18:33:17 PDT 2025


On Mon, Jul 28, 2025 at 11:09 PM Iuliana Prodan <iuliana.prodan at nxp.com> wrote:
>
> On 7/28/2025 5:14 PM, Mathieu Poirier wrote:
> > On Mon, Jul 28, 2025 at 01:39:38PM +0300, Daniel Baluta wrote:
> >> On Tue, Jul 22, 2025 at 11:16 AM Shengjiu Wang <shengjiu.wang at nxp.com> wrote:
> >>>
> >>> When enabled FW recovery, but is broken because software reset is missed
> >>> in this recovery flow. So move software reset from
> >>> imx_dsp_runtime_resume() to .load() and clear memory before loading
> >>> firmware to make recovery work.
> >>>
> >>> Add call rproc_coredump_set_elf_info() to initialize the elf info for
> >>> coredump, otherwise coredump will report error "ELF class is not set".
> >>>
> >>> Fixes: ec0e5549f358 ("remoteproc: imx_dsp_rproc: Add remoteproc driver for DSP on i.MX")
> >>> Signed-off-by: Shengjiu Wang <shengjiu.wang at nxp.com>
> >>
> >> Changes looks good to me:
>
> I agree, but this is not enough.
>
> >>
> >> Reviewed-by: Daniel Baluta <daniel.baluta at nxp.com>
> >>
> >> I've tested it with Zephyr synchronization samples inducing a crash
> >> via debugfs interface. App
> >> can recover correctly.
>
>
> The synchronization sample does not utilize the Messaging Unit (MU) for
> communication between the two cores, its behavior is similar to the
> basic hello_world example (no fw_ready reply is expected by host).
>
> I’ve tested this patch with both the synchronization and hello_world
> samples, as well as with the default firmware specified in the device
> tree (imx/dsp/hifi4.bin), and everything works as expected.
>
> However, when testing with the openamp_rsc_table sample from Zephyr [1],
> I encountered the following issue:
> ```
> [ 1500.964232] remoteproc remoteproc0: crash detected in imx-dsp-rproc:
> type watchdog
> [ 1500.964595] remoteproc remoteproc0: handling crash #1 in imx-dsp-rproc
> [ 1500.964608] remoteproc remoteproc0: recovering imx-dsp-rproc
> [ 1500.965959] remoteproc remoteproc0: stopped remote processor
> imx-dsp-rproc
> [ 1501.251897] remoteproc remoteproc0: can't start rproc imx-dsp-rproc: -110
> ```
> Upon debugging, I discovered that the issue stems from the imx-mailbox
> driver not clearing the General Purpose Interrupt (GPI) bits. This leads
> to the remote processor failing to restart properly.
>
> To ensure compatibility across all firmware variants, including those
> using OpenAMP, the attached patch is required. Both the recovery and
> mailbox patches have been successfully tested on the following
> platforms: i.MX8MP, i.MX8ULP, i.MX8QM and i.MX8QXP.
>
> Shengjiu, do you want to send a new version with both patches?

No.  it is a different issue.
You can send it to the mailbox maintainer for review.

Best regards
Shengjiu Wang

>
> Thanks,
> Iulia
>
> >
> > Very good - I will merge this around 6.17-rc2 when I get back from vacation.
> >
> > Mathieu
> >
>
> [1]
> https://github.com/zephyrproject-rtos/zephyr/tree/main/samples/subsys/ipc/openamp_rsc_table



More information about the linux-arm-kernel mailing list