diff options
-rw-r--r-- | drivers/remoteproc/ti_k3_common.c | 12 | ||||
-rw-r--r-- | drivers/remoteproc/ti_k3_common.h | 1 | ||||
-rw-r--r-- | drivers/remoteproc/ti_k3_dsp_remoteproc.c | 13 | ||||
-rw-r--r-- | drivers/remoteproc/ti_k3_m4_remoteproc.c | 14 | ||||
-rw-r--r-- | drivers/remoteproc/ti_k3_r5_remoteproc.c | 13 |
5 files changed, 16 insertions, 37 deletions
diff --git a/drivers/remoteproc/ti_k3_common.c b/drivers/remoteproc/ti_k3_common.c index 50df7164b0ca..ffd6639e6d63 100644 --- a/drivers/remoteproc/ti_k3_common.c +++ b/drivers/remoteproc/ti_k3_common.c @@ -296,5 +296,17 @@ int k3_rproc_stop(struct rproc *rproc) } EXPORT_SYMBOL_GPL(k3_rproc_stop); +/* + * Attach to a running remote processor (IPC-only mode) + * + * The rproc attach callback is a NOP. The remote processor is already booted, + * and all required resources have been acquired during probe routine, so there + * is no need to issue any TI-SCI commands to boot the remote cores in IPC-only + * mode. This callback is invoked only in IPC-only mode and exists because + * rproc_validate() checks for its existence. + */ +int k3_rproc_attach(struct rproc *rproc) { return 0; } +EXPORT_SYMBOL_GPL(k3_rproc_attach); + MODULE_LICENSE("GPL"); MODULE_DESCRIPTION("TI K3 common Remoteproc code"); diff --git a/drivers/remoteproc/ti_k3_common.h b/drivers/remoteproc/ti_k3_common.h index 98e57a298e73..c369715b2d76 100644 --- a/drivers/remoteproc/ti_k3_common.h +++ b/drivers/remoteproc/ti_k3_common.h @@ -102,4 +102,5 @@ int k3_rproc_prepare(struct rproc *rproc); int k3_rproc_unprepare(struct rproc *rproc); int k3_rproc_start(struct rproc *rproc); int k3_rproc_stop(struct rproc *rproc); +int k3_rproc_attach(struct rproc *rproc); #endif /* REMOTEPROC_TI_K3_COMMON_H */ diff --git a/drivers/remoteproc/ti_k3_dsp_remoteproc.c b/drivers/remoteproc/ti_k3_dsp_remoteproc.c index f506a9360879..12858c7f1958 100644 --- a/drivers/remoteproc/ti_k3_dsp_remoteproc.c +++ b/drivers/remoteproc/ti_k3_dsp_remoteproc.c @@ -59,17 +59,6 @@ static int k3_dsp_rproc_start(struct rproc *rproc) } /* - * Attach to a running DSP remote processor (IPC-only mode) - * - * This rproc attach callback is a NOP. The remote processor is already booted, - * and all required resources have been acquired during probe routine, so there - * is no need to issue any TI-SCI commands to boot the DSP core. This callback - * is invoked only in IPC-only mode and exists because rproc_validate() checks - * for its existence. - */ -static int k3_dsp_rproc_attach(struct rproc *rproc) { return 0; } - -/* * Detach from a running DSP remote processor (IPC-only mode) * * This rproc detach callback is a NOP. The DSP core is not stopped and will be @@ -172,7 +161,7 @@ static void *k3_dsp_rproc_da_to_va(struct rproc *rproc, u64 da, size_t len, bool static const struct rproc_ops k3_dsp_rproc_ops = { .start = k3_dsp_rproc_start, .stop = k3_rproc_stop, - .attach = k3_dsp_rproc_attach, + .attach = k3_rproc_attach, .detach = k3_dsp_rproc_detach, .kick = k3_rproc_kick, .da_to_va = k3_dsp_rproc_da_to_va, diff --git a/drivers/remoteproc/ti_k3_m4_remoteproc.c b/drivers/remoteproc/ti_k3_m4_remoteproc.c index de8809cc95fe..7f3c8d3d1398 100644 --- a/drivers/remoteproc/ti_k3_m4_remoteproc.c +++ b/drivers/remoteproc/ti_k3_m4_remoteproc.c @@ -245,18 +245,6 @@ static void k3_m4_release_tsp(void *data) } /* - * Attach to a running M4 remote processor (IPC-only mode) - * - * The remote processor is already booted, so there is no need to issue any - * TI-SCI commands to boot the M4 core. This callback is used only in IPC-only - * mode. - */ -static int k3_m4_rproc_attach(struct rproc *rproc) -{ - return 0; -} - -/* * Detach from a running M4 remote processor (IPC-only mode) * * This rproc detach callback performs the opposite operation to attach @@ -273,7 +261,7 @@ static const struct rproc_ops k3_m4_rproc_ops = { .unprepare = k3_rproc_unprepare, .start = k3_rproc_start, .stop = k3_rproc_stop, - .attach = k3_m4_rproc_attach, + .attach = k3_rproc_attach, .detach = k3_m4_rproc_detach, .kick = k3_rproc_kick, .da_to_va = k3_m4_rproc_da_to_va, diff --git a/drivers/remoteproc/ti_k3_r5_remoteproc.c b/drivers/remoteproc/ti_k3_r5_remoteproc.c index 4082cc61a41a..7c0434093ca5 100644 --- a/drivers/remoteproc/ti_k3_r5_remoteproc.c +++ b/drivers/remoteproc/ti_k3_r5_remoteproc.c @@ -560,17 +560,6 @@ out: } /* - * Attach to a running R5F remote processor (IPC-only mode) - * - * The R5F attach callback is a NOP. The remote processor is already booted, and - * all required resources have been acquired during probe routine, so there is - * no need to issue any TI-SCI commands to boot the R5F cores in IPC-only mode. - * This callback is invoked only in IPC-only mode and exists because - * rproc_validate() checks for its existence. - */ -static int k3_r5_rproc_attach(struct rproc *rproc) { return 0; } - -/* * Detach from a running R5F remote processor (IPC-only mode) * * The R5F detach callback is a NOP. The R5F cores are not stopped and will be @@ -1059,7 +1048,7 @@ static int k3_r5_rproc_configure_mode(struct k3_rproc *kproc) kproc->rproc->ops->unprepare = NULL; kproc->rproc->ops->start = NULL; kproc->rproc->ops->stop = NULL; - kproc->rproc->ops->attach = k3_r5_rproc_attach; + kproc->rproc->ops->attach = k3_rproc_attach; kproc->rproc->ops->detach = k3_r5_rproc_detach; kproc->rproc->ops->get_loaded_rsc_table = k3_r5_get_loaded_rsc_table; |