* [PATCH] remoteproc: imx_dsp_rproc: add module parameter to ignore ready flag from remote processor
@ 2023-01-16 22:53 Iuliana Prodan (OSS)
2023-01-17 7:36 ` S.J. Wang
2023-01-17 9:28 ` Daniel Baluta
0 siblings, 2 replies; 5+ messages in thread
From: Iuliana Prodan (OSS) @ 2023-01-16 22:53 UTC (permalink / raw)
To: Bjorn Andersson, Mathieu Poirier, Shawn Guo, Sascha Hauer,
S.J. Wang, Fabio Estevam, Daniel Baluta, SOF-Team, Mpuaudiosw,
Iuliana Prodan
Cc: linux-imx, linux-remoteproc, linux-arm-kernel, linux-kernel,
Pengutronix Kernel Team
From: Iuliana Prodan <iuliana.prodan@nxp.com>
There are cases when we want to test a simple "hello world"
application on the DSP and we don't have IPC between the cores.
Therefore, skip the wait for remote processor to start.
Added "ignoreready" flag while inserting the module to ignore
remote processor reply after start.
By default, this is off - do not ignore reply from rproc.
Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
---
drivers/remoteproc/imx_dsp_rproc.c | 17 +++++++++++++++++
1 file changed, 17 insertions(+)
diff --git a/drivers/remoteproc/imx_dsp_rproc.c b/drivers/remoteproc/imx_dsp_rproc.c
index 95da1cbefacf..ec298f8b019f 100644
--- a/drivers/remoteproc/imx_dsp_rproc.c
+++ b/drivers/remoteproc/imx_dsp_rproc.c
@@ -26,9 +26,20 @@
#include "remoteproc_elf_helpers.h"
#include "remoteproc_internal.h"
+#define IMX_DSP_IGNORE_REMOTE_READY 0
+
+/*
+ * Module parameters
+ */
+static unsigned int imx_dsp_rproc_ignoreready = IMX_DSP_IGNORE_REMOTE_READY;
+module_param_named(ignoreready, imx_dsp_rproc_ignoreready, int, 0644);
+MODULE_PARM_DESC(ignoreready,
+ "Ignore remote proc reply after start, default is 0 (off).");
+
#define DSP_RPROC_CLK_MAX 5
#define REMOTE_IS_READY BIT(0)
+#define REMOTE_SKIP_WAIT BIT(31)
#define REMOTE_READY_WAIT_MAX_RETRIES 500
/* att flags */
@@ -285,6 +296,9 @@ static int imx_dsp_rproc_ready(struct rproc *rproc)
if (!priv->rxdb_ch)
return 0;
+ if (priv->flags & REMOTE_SKIP_WAIT)
+ return 0;
+
for (i = 0; i < REMOTE_READY_WAIT_MAX_RETRIES; i++) {
if (priv->flags & REMOTE_IS_READY)
return 0;
@@ -903,6 +917,9 @@ static int imx_dsp_rproc_probe(struct platform_device *pdev)
priv->rproc = rproc;
priv->dsp_dcfg = dsp_dcfg;
+ if (imx_dsp_rproc_ignoreready)
+ priv->flags |= REMOTE_SKIP_WAIT;
+
dev_set_drvdata(dev, rproc);
INIT_WORK(&priv->rproc_work, imx_dsp_rproc_vq_work);
--
2.17.1
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply related [flat|nested] 5+ messages in thread
* RE: [PATCH] remoteproc: imx_dsp_rproc: add module parameter to ignore ready flag from remote processor
2023-01-16 22:53 [PATCH] remoteproc: imx_dsp_rproc: add module parameter to ignore ready flag from remote processor Iuliana Prodan (OSS)
@ 2023-01-17 7:36 ` S.J. Wang
2023-01-17 9:09 ` Iuliana Prodan
2023-01-17 9:28 ` Daniel Baluta
1 sibling, 1 reply; 5+ messages in thread
From: S.J. Wang @ 2023-01-17 7:36 UTC (permalink / raw)
To: Iuliana Prodan (OSS), Bjorn Andersson, Mathieu Poirier, Shawn Guo,
Sascha Hauer, Fabio Estevam, Daniel Baluta, SOF-Team,
MPU AUDIOSW-AUDIOSW, Iuliana Prodan
Cc: dl-linux-imx, linux-remoteproc@vger.kernel.org,
linux-arm-kernel@lists.infradead.org,
linux-kernel@vger.kernel.org, Pengutronix Kernel Team
>
> There are cases when we want to test a simple "hello world"
> application on the DSP and we don't have IPC between the cores.
> Therefore, skip the wait for remote processor to start.
>
> Added "ignoreready" flag while inserting the module to ignore remote
> processor reply after start.
> By default, this is off - do not ignore reply from rproc.
>
> Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
> ---
> drivers/remoteproc/imx_dsp_rproc.c | 17 +++++++++++++++++
> 1 file changed, 17 insertions(+)
>
> diff --git a/drivers/remoteproc/imx_dsp_rproc.c
> b/drivers/remoteproc/imx_dsp_rproc.c
> index 95da1cbefacf..ec298f8b019f 100644
> --- a/drivers/remoteproc/imx_dsp_rproc.c
> +++ b/drivers/remoteproc/imx_dsp_rproc.c
> @@ -26,9 +26,20 @@
> #include "remoteproc_elf_helpers.h"
> #include "remoteproc_internal.h"
>
> +#define IMX_DSP_IGNORE_REMOTE_READY 0
> +
> +/*
> + * Module parameters
> + */
> +static unsigned int imx_dsp_rproc_ignoreready =
> +IMX_DSP_IGNORE_REMOTE_READY; module_param_named(ignoreready,
> +imx_dsp_rproc_ignoreready, int, 0644); MODULE_PARM_DESC(ignoreready,
> + "Ignore remote proc reply after start, default is 0 (off).");
> +
> #define DSP_RPROC_CLK_MAX 5
>
> #define REMOTE_IS_READY BIT(0)
> +#define REMOTE_SKIP_WAIT BIT(31)
Can we use a close bit with REMOTE_IS_READY, like BIT(1)?
Best regards
Wang Shengjiu
> #define REMOTE_READY_WAIT_MAX_RETRIES 500
>
> /* att flags */
> @@ -285,6 +296,9 @@ static int imx_dsp_rproc_ready(struct rproc *rproc)
> if (!priv->rxdb_ch)
> return 0;
>
> + if (priv->flags & REMOTE_SKIP_WAIT)
> + return 0;
> +
> for (i = 0; i < REMOTE_READY_WAIT_MAX_RETRIES; i++) {
> if (priv->flags & REMOTE_IS_READY)
> return 0;
> @@ -903,6 +917,9 @@ static int imx_dsp_rproc_probe(struct
> platform_device *pdev)
> priv->rproc = rproc;
> priv->dsp_dcfg = dsp_dcfg;
>
> + if (imx_dsp_rproc_ignoreready)
> + priv->flags |= REMOTE_SKIP_WAIT;
> +
> dev_set_drvdata(dev, rproc);
>
> INIT_WORK(&priv->rproc_work, imx_dsp_rproc_vq_work);
> --
> 2.17.1
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH] remoteproc: imx_dsp_rproc: add module parameter to ignore ready flag from remote processor
2023-01-17 7:36 ` S.J. Wang
@ 2023-01-17 9:09 ` Iuliana Prodan
0 siblings, 0 replies; 5+ messages in thread
From: Iuliana Prodan @ 2023-01-17 9:09 UTC (permalink / raw)
To: S.J. Wang, Iuliana Prodan (OSS), Bjorn Andersson, Mathieu Poirier,
Shawn Guo, Sascha Hauer, Fabio Estevam, Daniel Baluta, SOF-Team,
MPU AUDIOSW-AUDIOSW
Cc: dl-linux-imx, linux-remoteproc@vger.kernel.org,
linux-arm-kernel@lists.infradead.org,
linux-kernel@vger.kernel.org, Pengutronix Kernel Team
On 1/17/2023 9:36 AM, S.J. Wang wrote:
>> There are cases when we want to test a simple "hello world"
>> application on the DSP and we don't have IPC between the cores.
>> Therefore, skip the wait for remote processor to start.
>>
>> Added "ignoreready" flag while inserting the module to ignore remote
>> processor reply after start.
>> By default, this is off - do not ignore reply from rproc.
>>
>> Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
>> ---
>> drivers/remoteproc/imx_dsp_rproc.c | 17 +++++++++++++++++
>> 1 file changed, 17 insertions(+)
>>
>> diff --git a/drivers/remoteproc/imx_dsp_rproc.c
>> b/drivers/remoteproc/imx_dsp_rproc.c
>> index 95da1cbefacf..ec298f8b019f 100644
>> --- a/drivers/remoteproc/imx_dsp_rproc.c
>> +++ b/drivers/remoteproc/imx_dsp_rproc.c
>> @@ -26,9 +26,20 @@
>> #include "remoteproc_elf_helpers.h"
>> #include "remoteproc_internal.h"
>>
>> +#define IMX_DSP_IGNORE_REMOTE_READY 0
>> +
>> +/*
>> + * Module parameters
>> + */
>> +static unsigned int imx_dsp_rproc_ignoreready =
>> +IMX_DSP_IGNORE_REMOTE_READY; module_param_named(ignoreready,
>> +imx_dsp_rproc_ignoreready, int, 0644); MODULE_PARM_DESC(ignoreready,
>> + "Ignore remote proc reply after start, default is 0 (off).");
>> +
>> #define DSP_RPROC_CLK_MAX 5
>>
>> #define REMOTE_IS_READY BIT(0)
>> +#define REMOTE_SKIP_WAIT BIT(31)
> Can we use a close bit with REMOTE_IS_READY, like BIT(1)?
Sure, I'll send a v2.
Thanks,
Iulia
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH] remoteproc: imx_dsp_rproc: add module parameter to ignore ready flag from remote processor
2023-01-16 22:53 [PATCH] remoteproc: imx_dsp_rproc: add module parameter to ignore ready flag from remote processor Iuliana Prodan (OSS)
2023-01-17 7:36 ` S.J. Wang
@ 2023-01-17 9:28 ` Daniel Baluta
2023-01-17 11:05 ` Iuliana Prodan
1 sibling, 1 reply; 5+ messages in thread
From: Daniel Baluta @ 2023-01-17 9:28 UTC (permalink / raw)
To: Iuliana Prodan (OSS)
Cc: Bjorn Andersson, Mathieu Poirier, Shawn Guo, Sascha Hauer,
S.J. Wang, Fabio Estevam, Daniel Baluta, SOF-Team, Mpuaudiosw,
Iuliana Prodan, linux-imx, linux-remoteproc, linux-arm-kernel,
linux-kernel, Pengutronix Kernel Team
On Tue, Jan 17, 2023 at 1:21 AM Iuliana Prodan (OSS)
<iuliana.prodan@oss.nxp.com> wrote:
>
> From: Iuliana Prodan <iuliana.prodan@nxp.com>
>
> There are cases when we want to test a simple "hello world"
> application on the DSP and we don't have IPC between the cores.
> Therefore, skip the wait for remote processor to start.
>
> Added "ignoreready" flag while inserting the module to ignore
> remote processor reply after start.
> By default, this is off - do not ignore reply from rproc.
I think that ignore_dsp_ready would be a clearer name flag.
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH] remoteproc: imx_dsp_rproc: add module parameter to ignore ready flag from remote processor
2023-01-17 9:28 ` Daniel Baluta
@ 2023-01-17 11:05 ` Iuliana Prodan
0 siblings, 0 replies; 5+ messages in thread
From: Iuliana Prodan @ 2023-01-17 11:05 UTC (permalink / raw)
To: Daniel Baluta, Iuliana Prodan (OSS)
Cc: Bjorn Andersson, Mathieu Poirier, Shawn Guo, Sascha Hauer,
S.J. Wang, Fabio Estevam, Daniel Baluta, linux-imx,
linux-remoteproc, linux-arm-kernel, linux-kernel,
Pengutronix Kernel Team
On 1/17/2023 11:28 AM, Daniel Baluta wrote:
> On Tue, Jan 17, 2023 at 1:21 AM Iuliana Prodan (OSS)
> <iuliana.prodan@oss.nxp.com> wrote:
>> From: Iuliana Prodan <iuliana.prodan@nxp.com>
>>
>> There are cases when we want to test a simple "hello world"
>> application on the DSP and we don't have IPC between the cores.
>> Therefore, skip the wait for remote processor to start.
>>
>> Added "ignoreready" flag while inserting the module to ignore
>> remote processor reply after start.
>> By default, this is off - do not ignore reply from rproc.
> I think that ignore_dsp_ready would be a clearer name flag.
Done, I've sent a v3.
Thanks,
Iulia
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2023-01-17 11:07 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-01-16 22:53 [PATCH] remoteproc: imx_dsp_rproc: add module parameter to ignore ready flag from remote processor Iuliana Prodan (OSS)
2023-01-17 7:36 ` S.J. Wang
2023-01-17 9:09 ` Iuliana Prodan
2023-01-17 9:28 ` Daniel Baluta
2023-01-17 11:05 ` Iuliana Prodan
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox