mbox series

[v3,0/5] K3 R5F & DSP IPC-only mode support

Message ID 20220213201246.25952-1-s-anna@ti.com (mailing list archive)
Headers show
Series K3 R5F & DSP IPC-only mode support | expand

Message

Suman Anna Feb. 13, 2022, 8:12 p.m. UTC
Hi All,

The following is a revised version (v3) of the series that adds the
IPC-only mode support for the TI K3 R5F and DSP (C66x and C71x) remoteprocs
covering AM65x, J721E, J7200, AM64x and the recently added J721S2 SoCs.
Patches are on top of 5.17-rc2 (since rproc-next is baselined on rc2).

Please see the v1 cover-letter [1] for the design details of the
'IPC-only' mode functionality.

The following are the main changes w.r.t v2 [2], please see the individual
patches for the exact deltas:
 - The first patch in v2 "remoteproc: Add support for detach-only during
   shutdown" is dropped
 - Added a new "remoteproc: Change rproc_shutdown() to return a status"
   patch as the first patch in v3.
 - Adjusted the K3 R5F and DSP remoteproc drivers to invoke
   rproc_detach() in the case of IPC-only mode during teardown

The following is a summary of patches in v3:
 - Patch 1 enhances the remoteproc core to return a status for
   rproc_shutdown() that is in turn returned in the sysfs and cdev
   interfaces. This replaces the flag-based logic in v2 and is used to
   return an error for K3 SoCs that don't supply a .stop() ops in
   IPC-only mode.
 - Patches 2 and 4 refactor the mailbox request code out of start
   in the K3 R5F and DSP remoteproc drivers for reuse in the new attach
   callbacks.
 - Patch 3 adds the IPC-only mode support for R5F.
 - Patch 5 adds the IPC-only mode support for both K3 C66x and C71x
   DSPs.

I have re-verified the different combinations on J721E, J7200 and AM65x
SoCs. AM64x currently lacks early-boot support, but the logic is ready
for Single-CPU and Split modes that are specific to AM64x SoCs. J721S2
doesn't have either early-boot support yet, and the dts nodes are also
not added yet, but I have tested locally using additional patches.

regards
Suman

[1] https://patchwork.kernel.org/project/linux-remoteproc/cover/20210522000309.26134-1-s-anna@ti.com/
[2] https://patchwork.kernel.org/project/linux-remoteproc/cover/20210723220248.6554-1-s-anna@ti.com/

Suman Anna (5):
  remoteproc: Change rproc_shutdown() to return a status
  remoteproc: k3-r5: Refactor mbox request code in start
  remoteproc: k3-r5: Add support for IPC-only mode for all R5Fs
  remoteproc: k3-dsp: Refactor mbox request code in start
  remoteproc: k3-dsp: Add support for IPC-only mode for all K3 DSPs

 Documentation/staging/remoteproc.rst      |   3 +-
 drivers/remoteproc/remoteproc_cdev.c      |   2 +-
 drivers/remoteproc/remoteproc_core.c      |   9 +-
 drivers/remoteproc/remoteproc_sysfs.c     |   2 +-
 drivers/remoteproc/ti_k3_dsp_remoteproc.c | 208 ++++++++++++----
 drivers/remoteproc/ti_k3_r5_remoteproc.c  | 287 +++++++++++++++++++---
 include/linux/remoteproc.h                |   2 +-
 7 files changed, 431 insertions(+), 82 deletions(-)