[V7,0/7] remoteproc: imx_rproc: support i.MX8QM/QXP

Message ID 20221014031037.1070424-1-peng.fan@oss.nxp.com
Headers
Series remoteproc: imx_rproc: support i.MX8QM/QXP |

Message

Peng Fan (OSS) Oct. 14, 2022, 3:10 a.m. UTC
  From: Peng Fan <peng.fan@nxp.com>

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.
             
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@DU0PR04MB9417.eurprd04.prod.outlook.com/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@oss.nxp.com/
 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@oss.nxp.com/

V2:
 https://patchwork.kernel.org/project/linux-remoteproc/cover/20220309102118.8131-1-peng.fan@oss.nxp.com/
 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@oss.nxp.com/
 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@oss.nxp.com/

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                | 285 +++++++++++++++++-
 2 files changed, 295 insertions(+), 6 deletions(-)