diff mbox series

remoteproc/mtk_scp: surround DT device IDs with CONFIG_OF

Message ID 20201102074007.299222-1-acourbot@chromium.org (mailing list archive)
State New, archived
Headers show
Series remoteproc/mtk_scp: surround DT device IDs with CONFIG_OF | expand

Commit Message

Alexandre Courbot Nov. 2, 2020, 7:40 a.m. UTC
Now that this driver can be compiled with COMPILE_TEST, we have no
guarantee that CONFIG_OF will also be defined. When that happens, a
warning about mtk_scp_of_match being defined but unused will be reported
so make sure this variable is only defined if of_match_ptr() actually
uses it.

Fixes: cbd2dca74926c0e4610c40923cc786b732c9e8ef remoteproc: scp: add COMPILE_TEST dependency
Reported-by: kernel test robot <lkp@intel.com>
Signed-off-by: Alexandre Courbot <acourbot@chromium.org>
---
 drivers/remoteproc/mtk_scp.c | 2 ++
 1 file changed, 2 insertions(+)

Comments

Mathieu Poirier Nov. 4, 2020, 7:05 p.m. UTC | #1
Hi Alexander,

On Mon, Nov 02, 2020 at 04:40:07PM +0900, Alexandre Courbot wrote:
> Now that this driver can be compiled with COMPILE_TEST, we have no
> guarantee that CONFIG_OF will also be defined. When that happens, a
> warning about mtk_scp_of_match being defined but unused will be reported
> so make sure this variable is only defined if of_match_ptr() actually
> uses it.
> 
> Fixes: cbd2dca74926c0e4610c40923cc786b732c9e8ef remoteproc: scp: add COMPILE_TEST dependency
> Reported-by: kernel test robot <lkp@intel.com>
> Signed-off-by: Alexandre Courbot <acourbot@chromium.org>
> ---
>  drivers/remoteproc/mtk_scp.c | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/drivers/remoteproc/mtk_scp.c b/drivers/remoteproc/mtk_scp.c
> index 577cbd5d421e..f74f22d4d1ff 100644
> --- a/drivers/remoteproc/mtk_scp.c
> +++ b/drivers/remoteproc/mtk_scp.c
> @@ -772,12 +772,14 @@ static const struct mtk_scp_of_data mt8192_of_data = {
>  	.host_to_scp_int_bit = MT8192_HOST_IPC_INT_BIT,
>  };
>  
> +#if defined(CONFIG_OF)
>  static const struct of_device_id mtk_scp_of_match[] = {
>  	{ .compatible = "mediatek,mt8183-scp", .data = &mt8183_of_data },
>  	{ .compatible = "mediatek,mt8192-scp", .data = &mt8192_of_data },
>  	{},
>  };
>  MODULE_DEVICE_TABLE(of, mtk_scp_of_match);
> +#endif

I think it is better to add a "depends on OF" in the Kconfig.

Thanks,
Mathieu

>  
>  static struct platform_driver mtk_scp_driver = {
>  	.probe = scp_probe,
> -- 
> 2.29.1.341.ge80a0c044ae-goog
>
Bjorn Andersson Nov. 5, 2020, 4:55 a.m. UTC | #2
On Wed 04 Nov 13:05 CST 2020, Mathieu Poirier wrote:

> Hi Alexander,
> 
> On Mon, Nov 02, 2020 at 04:40:07PM +0900, Alexandre Courbot wrote:
> > Now that this driver can be compiled with COMPILE_TEST, we have no
> > guarantee that CONFIG_OF will also be defined. When that happens, a
> > warning about mtk_scp_of_match being defined but unused will be reported
> > so make sure this variable is only defined if of_match_ptr() actually
> > uses it.
> > 
> > Fixes: cbd2dca74926c0e4610c40923cc786b732c9e8ef remoteproc: scp: add COMPILE_TEST dependency
> > Reported-by: kernel test robot <lkp@intel.com>
> > Signed-off-by: Alexandre Courbot <acourbot@chromium.org>
> > ---
> >  drivers/remoteproc/mtk_scp.c | 2 ++
> >  1 file changed, 2 insertions(+)
> > 
> > diff --git a/drivers/remoteproc/mtk_scp.c b/drivers/remoteproc/mtk_scp.c
> > index 577cbd5d421e..f74f22d4d1ff 100644
> > --- a/drivers/remoteproc/mtk_scp.c
> > +++ b/drivers/remoteproc/mtk_scp.c
> > @@ -772,12 +772,14 @@ static const struct mtk_scp_of_data mt8192_of_data = {
> >  	.host_to_scp_int_bit = MT8192_HOST_IPC_INT_BIT,
> >  };
> >  
> > +#if defined(CONFIG_OF)
> >  static const struct of_device_id mtk_scp_of_match[] = {
> >  	{ .compatible = "mediatek,mt8183-scp", .data = &mt8183_of_data },
> >  	{ .compatible = "mediatek,mt8192-scp", .data = &mt8192_of_data },
> >  	{},
> >  };
> >  MODULE_DEVICE_TABLE(of, mtk_scp_of_match);
> > +#endif
> 
> I think it is better to add a "depends on OF" in the Kconfig.
> 

That would reduce the efficiency of COMPILE_TEST, so I would prefer that
we drop of_match_ptr(), which will result in the pointer always being
populated and this being referenced - although unused when built without
OF.

Regards,
Bjorn
diff mbox series

Patch

diff --git a/drivers/remoteproc/mtk_scp.c b/drivers/remoteproc/mtk_scp.c
index 577cbd5d421e..f74f22d4d1ff 100644
--- a/drivers/remoteproc/mtk_scp.c
+++ b/drivers/remoteproc/mtk_scp.c
@@ -772,12 +772,14 @@  static const struct mtk_scp_of_data mt8192_of_data = {
 	.host_to_scp_int_bit = MT8192_HOST_IPC_INT_BIT,
 };
 
+#if defined(CONFIG_OF)
 static const struct of_device_id mtk_scp_of_match[] = {
 	{ .compatible = "mediatek,mt8183-scp", .data = &mt8183_of_data },
 	{ .compatible = "mediatek,mt8192-scp", .data = &mt8192_of_data },
 	{},
 };
 MODULE_DEVICE_TABLE(of, mtk_scp_of_match);
+#endif
 
 static struct platform_driver mtk_scp_driver = {
 	.probe = scp_probe,