Message ID | 1617082235-15923-4-git-send-email-peng.fan@oss.nxp.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | remoteproc: imx: support remote cores booted early | expand |
On Tue, Mar 30, 2021 at 01:30:34PM +0800, peng.fan@oss.nxp.com wrote: > From: Peng Fan <peng.fan@nxp.com> > > Use the rproc_ops::prepare() hook for doing memory resources > reallocation when reattach an remote procesor. > > Suggested-by: Mathieu Poirier <mathieu.poirier@linaro.org> > Signed-off-by: Peng Fan <peng.fan@nxp.com> > --- > drivers/remoteproc/imx_rproc.c | 8 +++----- > 1 file changed, 3 insertions(+), 5 deletions(-) > Reviewed-by: Mathieu Poirier <mathieu.poirier@linaro.org> > diff --git a/drivers/remoteproc/imx_rproc.c b/drivers/remoteproc/imx_rproc.c > index b05aae0ad7a2..7cd09971d1a4 100644 > --- a/drivers/remoteproc/imx_rproc.c > +++ b/drivers/remoteproc/imx_rproc.c > @@ -317,7 +317,7 @@ static int imx_rproc_mem_release(struct rproc *rproc, > return 0; > } > > -static int imx_rproc_parse_memory_regions(struct rproc *rproc) > +static int imx_rproc_prepare(struct rproc *rproc) > { > struct imx_rproc *priv = rproc->priv; > struct device_node *np = priv->dev->of_node; > @@ -363,10 +363,7 @@ static int imx_rproc_parse_memory_regions(struct rproc *rproc) > > static int imx_rproc_parse_fw(struct rproc *rproc, const struct firmware *fw) > { > - int ret = imx_rproc_parse_memory_regions(rproc); > - > - if (ret) > - return ret; > + int ret; > > ret = rproc_elf_load_rsc_table(rproc, fw); > if (ret) > @@ -399,6 +396,7 @@ static void imx_rproc_kick(struct rproc *rproc, int vqid) > } > > static const struct rproc_ops imx_rproc_ops = { > + .prepare = imx_rproc_prepare, > .start = imx_rproc_start, > .stop = imx_rproc_stop, > .kick = imx_rproc_kick, > -- > 2.30.0 >
On Tue, Mar 30, 2021 at 01:30:34PM +0800, peng.fan@oss.nxp.com wrote: > From: Peng Fan <peng.fan@nxp.com> > > Use the rproc_ops::prepare() hook for doing memory resources > reallocation when reattach an remote procesor. s/when reattach an remote/when reattaching a remote/ > > Suggested-by: Mathieu Poirier <mathieu.poirier@linaro.org> > Signed-off-by: Peng Fan <peng.fan@nxp.com> > --- > drivers/remoteproc/imx_rproc.c | 8 +++----- > 1 file changed, 3 insertions(+), 5 deletions(-) > > diff --git a/drivers/remoteproc/imx_rproc.c b/drivers/remoteproc/imx_rproc.c > index b05aae0ad7a2..7cd09971d1a4 100644 > --- a/drivers/remoteproc/imx_rproc.c > +++ b/drivers/remoteproc/imx_rproc.c > @@ -317,7 +317,7 @@ static int imx_rproc_mem_release(struct rproc *rproc, > return 0; > } > > -static int imx_rproc_parse_memory_regions(struct rproc *rproc) > +static int imx_rproc_prepare(struct rproc *rproc) > { > struct imx_rproc *priv = rproc->priv; > struct device_node *np = priv->dev->of_node; > @@ -363,10 +363,7 @@ static int imx_rproc_parse_memory_regions(struct rproc *rproc) > > static int imx_rproc_parse_fw(struct rproc *rproc, const struct firmware *fw) > { > - int ret = imx_rproc_parse_memory_regions(rproc); > - > - if (ret) > - return ret; > + int ret; > > ret = rproc_elf_load_rsc_table(rproc, fw); > if (ret) > @@ -399,6 +396,7 @@ static void imx_rproc_kick(struct rproc *rproc, int vqid) > } > > static const struct rproc_ops imx_rproc_ops = { > + .prepare = imx_rproc_prepare, > .start = imx_rproc_start, > .stop = imx_rproc_stop, > .kick = imx_rproc_kick, > -- > 2.30.0 >
diff --git a/drivers/remoteproc/imx_rproc.c b/drivers/remoteproc/imx_rproc.c index b05aae0ad7a2..7cd09971d1a4 100644 --- a/drivers/remoteproc/imx_rproc.c +++ b/drivers/remoteproc/imx_rproc.c @@ -317,7 +317,7 @@ static int imx_rproc_mem_release(struct rproc *rproc, return 0; } -static int imx_rproc_parse_memory_regions(struct rproc *rproc) +static int imx_rproc_prepare(struct rproc *rproc) { struct imx_rproc *priv = rproc->priv; struct device_node *np = priv->dev->of_node; @@ -363,10 +363,7 @@ static int imx_rproc_parse_memory_regions(struct rproc *rproc) static int imx_rproc_parse_fw(struct rproc *rproc, const struct firmware *fw) { - int ret = imx_rproc_parse_memory_regions(rproc); - - if (ret) - return ret; + int ret; ret = rproc_elf_load_rsc_table(rproc, fw); if (ret) @@ -399,6 +396,7 @@ static void imx_rproc_kick(struct rproc *rproc, int vqid) } static const struct rproc_ops imx_rproc_ops = { + .prepare = imx_rproc_prepare, .start = imx_rproc_start, .stop = imx_rproc_stop, .kick = imx_rproc_kick,