The i.MX7ULP Cortex-A7 is under control of Cortex-M4. The i.MX7ULP Linux poweroff and restart rely on rpmsg driver to send a message to Cortex-M4 firmware. Then Cortex-A7 could poweroff or restart by Cortex-M4 to configure the i.MX7ULP power controller properly. However the reboot and restart kernel common code use atomic notifier, so with blocking tx mailbox will trigger kernel dump, because of blocking mailbox will use wait_for_completion_timeout. In such case, linux no need to wait for completion. patch 1 is to support non-blocking tx mailbox channel patch 2 is to switch to non-blocking tx for system poweroff or restart. Based on patchset: https://lore.kernel.org/all/20240719-imx_rproc-v2-0-10d0268c7eb1@xxxxxxx/ Signed-off-by: Peng Fan <peng.fan@xxxxxxx> --- Changes in v2: - Separated patch 5,6 from v1 - Update commit patch 1 with adding "No functional changes" - Link to v1: https://lore.kernel.org/r/20240712-imx_rproc-v1-0-7bcf6732d328@xxxxxxx --- Peng Fan (2): remoteproc: imx_rproc: allow tx_block to be set remoteproc: imx_rproc: handle system off for i.MX7ULP drivers/remoteproc/imx_rproc.c | 48 ++++++++++++++++++++++++++++++++++++------ 1 file changed, 42 insertions(+), 6 deletions(-) --- base-commit: 0de2e1d9af457b2eb010636d59dfef569659783a change-id: 20240712-imx_rproc-25f3ab753c58 Best regards, -- Peng Fan <peng.fan@xxxxxxx>