From: Peng Fan <peng.fan@xxxxxxx> V8: patch 2/7: Per Krzysztof, keep alphabetical order for compatible string Patch 6/7: Add comments to explain the tx_ch/rx_ch check in imx_rproc_xtr_mbox_init, to address comment: https://lore.kernel.org/all/20221017173335.GA121862@p14s/ V7: patch 3/7: use dev_err, and R-b from Mathieu patch 4/7: Add comment when "num_pd <= 1", add R-b from Mathieu patch 5/7: Typo has->have, add R-b from Mathieu patch 6/7: add detach hook to free the mbox. As wrote in the patch commit log, imx_rproc_xtr_mbox_init is called both in probe and attach hook to resolve mbox defer probe, so there is check in imx_rproc_xtr_mbox_init. Moved imx_rproc_free_mbox out from parition notify to detach hook patch 7/7: since detach hook moved to patch 6/7, so only enable recovery feature. https://lore.kernel.org/all/20221014031037.1070424-1-peng.fan@xxxxxxxxxxx/ V6: Two changes are made: 1. In V5, patch 3 has a wrong logic in imx_rproc_put_scu, see [1], however patch 4 fixed the wrong logic, as below: - if (!imx_sc_rm_is_resource_owned(priv->ipc_handle, priv->rsrc_id)) - return; + if (imx_sc_rm_is_resource_owned(priv->ipc_handle, priv->rsrc_id)) + return imx_rproc_detach_pd(rproc); In V6, patch 3 fixed the wrong logic, drop the fix in patch 4. And patch 4 changed as below, because put scu not has return value. imx_rproc_detach_pd(rproc); return; 2. Include patch 7/7 to enable attach recovery, because the attach recovery feature has been supported in remoteproc core. [1] https://lore.kernel.org/linux-remoteproc/DU0PR04MB941763C3EBF8AE9A9CD69445884C9@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/T/#m87e2864260d0a1c431b577068ba79e1d64c595f1 V5: The patchset could not apply on latest remoteproc for-next branch, so rebased. Only patch 6 has a minor conflict, other patches are not changed. V4: https://lore.kernel.org/all/20220701104725.557314-1-peng.fan@xxxxxxxxxxx/ Add R-b from DT maintainer Fix probe failure and driver remove path in patch 3, 4 Add comments about i.MX8QM entries filter in patch 5 V3: Drop the dependency in V2. Tested on i.MX8QM/8MM Use 'fsl,resource-id' and 'fsl,entry-address' Per dt maintainer Drop 'reg' property Per remoteproc maintainer Drop mcore self recovery, until we land in common framework support. https://patchwork.kernel.org/project/linux-remoteproc/cover/20220517064937.4033441-1-peng.fan@xxxxxxxxxxx/ V2: https://patchwork.kernel.org/project/linux-remoteproc/cover/20220309102118.8131-1-peng.fan@xxxxxxxxxxx/ Depends on https://patchwork.kernel.org/project/linux-remoteproc/list/?series=621311 Tested on i.MX8QXP/QM/8MP Addressed Mathieu's comments Drop V1 patch 5/9, patch 3/9 is replaced with upper dependency patchset Move V1 patch 4/9 out to https://patchwork.kernel.org/project/linux-remoteproc/patch/20220308065754.3355-1-peng.fan@xxxxxxxxxxx/ Update commit log Drop magic number to get entry address from device tree in patch 4/6 The V1 patchset: https://patchwork.kernel.org/project/linux-remoteproc/patch/20220111033333.403448-4-peng.fan@xxxxxxxxxxx/ Peng Fan (7): dt-bindings: remoteproc: imx_rproc: support i.MX8QXP dt-bindings: remoteproc: imx_rproc: support i.MX8QM remoteproc: imx_rproc: support attaching to i.MX8QXP M4 remoteproc: imx_rproc: support kicking Mcore from Linux for i.MX8QXP remoteproc: imx_rproc: support i.MX8QM remoteproc: imx_rproc: request mbox channel later remoteproc: imx_rproc: Enable attach recovery for i.MX8QM/QXP .../bindings/remoteproc/fsl,imx-rproc.yaml | 16 + drivers/remoteproc/imx_rproc.c | 294 +++++++++++++++++- 2 files changed, 304 insertions(+), 6 deletions(-) -- 2.37.1