Re: [PATCH v3 07/15] remoteproc: Add new detach() remoteproc operation

From: Arnaud POULIQUEN
Date: Wed Dec 02 2020 - 13:14:37 EST


Hi Mathieu

On 11/26/20 10:06 PM, Mathieu Poirier wrote:
> Add an new detach() operation in order to support scenarios where
> the remoteproc core is going away but the remote processor is
> kept operating. This could be the case when the system is
> rebooted or when the platform driver is removed.
>
> Signed-off-by: Mathieu Poirier <mathieu.poirier@xxxxxxxxxx>
> Reviewed-by: Peng Fan <peng.fan@xxxxxxx>

Reviewed-by: Arnaud Pouliquen <arnaud.pouliquen@xxxxxx>

Thanks,
Arnaud
> ---
> include/linux/remoteproc.h | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/include/linux/remoteproc.h b/include/linux/remoteproc.h
> index 9be112b5c09d..da15b77583d3 100644
> --- a/include/linux/remoteproc.h
> +++ b/include/linux/remoteproc.h
> @@ -361,6 +361,7 @@ enum rsc_handling_status {
> * @start: power on the device and boot it
> * @stop: power off the device
> * @attach: attach to a device that his already powered up
> + * @detach: detach from a device, leaving it powered up
> * @kick: kick a virtqueue (virtqueue id given as a parameter)
> * @da_to_va: optional platform hook to perform address translations
> * @parse_fw: parse firmware to extract information (e.g. resource table)
> @@ -382,6 +383,7 @@ struct rproc_ops {
> int (*start)(struct rproc *rproc);
> int (*stop)(struct rproc *rproc);
> int (*attach)(struct rproc *rproc);
> + int (*detach)(struct rproc *rproc);
> void (*kick)(struct rproc *rproc, int vqid);
> void * (*da_to_va)(struct rproc *rproc, u64 da, size_t len);
> int (*parse_fw)(struct rproc *rproc, const struct firmware *fw);
>