2022-12-15 17:14:09

by Arnd Bergmann

[permalink] [raw]
Subject: [PATCH] clk: imx: fix compile testing imxrt1050

From: Arnd Bergmann <[email protected]>

Randconfig testing revealed multiple issues with this driver:

ERROR: modpost: missing MODULE_LICENSE() in drivers/clk/imx/clk-imxrt1050.o
ERROR: modpost: "imx_clk_hw_pllv3" [drivers/clk/imx/clk-imxrt1050.ko] undefined!
ERROR: modpost: "imx_clk_hw_pfd" [drivers/clk/imx/clk-imxrt1050.ko] undefined!

Export the necessary symbols from the core clk driver and add the
license and author tags. To find this type of problem more easily
in the future, also enable building on other platforms, as we do for
the other i.MX clk drivers.

Signed-off-by: Arnd Bergmann <[email protected]>
---
drivers/clk/imx/Kconfig | 2 +-
drivers/clk/imx/clk-imxrt1050.c | 4 ++++
drivers/clk/imx/clk-pfd.c | 2 ++
drivers/clk/imx/clk-pllv3.c | 2 ++
4 files changed, 9 insertions(+), 1 deletion(-)

diff --git a/drivers/clk/imx/Kconfig b/drivers/clk/imx/Kconfig
index 25785ec9c276..f6b82e0b9703 100644
--- a/drivers/clk/imx/Kconfig
+++ b/drivers/clk/imx/Kconfig
@@ -115,7 +115,7 @@ config CLK_IMX93

config CLK_IMXRT1050
tristate "IMXRT1050 CCM Clock Driver"
- depends on SOC_IMXRT
+ depends on SOC_IMXRT || COMPILE_TEST
select MXC_CLK
help
Build the driver for i.MXRT1050 CCM Clock Driver
diff --git a/drivers/clk/imx/clk-imxrt1050.c b/drivers/clk/imx/clk-imxrt1050.c
index e972abd299a8..fd5c51fc92c0 100644
--- a/drivers/clk/imx/clk-imxrt1050.c
+++ b/drivers/clk/imx/clk-imxrt1050.c
@@ -167,3 +167,7 @@ static struct platform_driver imxrt1050_clk_driver = {
},
};
module_platform_driver(imxrt1050_clk_driver);
+
+MODULE_LICENSE("Dual BSD/GPL");
+MODULE_AUTHOR("Jesse Taube <[email protected]>");
+MODULE_AUTHOR("Giulio Benetti <[email protected]>");
diff --git a/drivers/clk/imx/clk-pfd.c b/drivers/clk/imx/clk-pfd.c
index 5d2a9a3be95e..5cf0149dfa15 100644
--- a/drivers/clk/imx/clk-pfd.c
+++ b/drivers/clk/imx/clk-pfd.c
@@ -5,6 +5,7 @@
*/

#include <linux/clk-provider.h>
+#include <linux/export.h>
#include <linux/io.h>
#include <linux/slab.h>
#include <linux/err.h>
@@ -153,3 +154,4 @@ struct clk_hw *imx_clk_hw_pfd(const char *name, const char *parent_name,

return hw;
}
+EXPORT_SYMBOL_GPL(imx_clk_hw_pfd);
diff --git a/drivers/clk/imx/clk-pllv3.c b/drivers/clk/imx/clk-pllv3.c
index eea32f87c60a..11fb238ee8f0 100644
--- a/drivers/clk/imx/clk-pllv3.c
+++ b/drivers/clk/imx/clk-pllv3.c
@@ -6,6 +6,7 @@

#include <linux/clk-provider.h>
#include <linux/delay.h>
+#include <linux/export.h>
#include <linux/io.h>
#include <linux/iopoll.h>
#include <linux/slab.h>
@@ -486,3 +487,4 @@ struct clk_hw *imx_clk_hw_pllv3(enum imx_pllv3_type type, const char *name,

return hw;
}
+EXPORT_SYMBOL_GPL(imx_clk_hw_pllv3);
--
2.35.1


2022-12-15 20:29:46

by Jesse T

[permalink] [raw]
Subject: Re: [PATCH] clk: imx: fix compile testing imxrt1050



On 12/15/22 11:58, Arnd Bergmann wrote:
> From: Arnd Bergmann <[email protected]>
>
> Randconfig testing revealed multiple issues with this driver:
>
> ERROR: modpost: missing MODULE_LICENSE() in drivers/clk/imx/clk-imxrt1050.o
> ERROR: modpost: "imx_clk_hw_pllv3" [drivers/clk/imx/clk-imxrt1050.ko] undefined!
> ERROR: modpost: "imx_clk_hw_pfd" [drivers/clk/imx/clk-imxrt1050.ko] undefined!
>
> Export the necessary symbols from the core clk driver and add the
> license and author tags. To find this type of problem more easily
> in the future, also enable building on other platforms, as we do for
> the other i.MX clk drivers.
>
> Signed-off-by: Arnd Bergmann <[email protected]>
> ---
> drivers/clk/imx/Kconfig | 2 +-
> drivers/clk/imx/clk-imxrt1050.c | 4 ++++
> drivers/clk/imx/clk-pfd.c | 2 ++
> drivers/clk/imx/clk-pllv3.c | 2 ++
> 4 files changed, 9 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/clk/imx/Kconfig b/drivers/clk/imx/Kconfig
> index 25785ec9c276..f6b82e0b9703 100644
> --- a/drivers/clk/imx/Kconfig
> +++ b/drivers/clk/imx/Kconfig
> @@ -115,7 +115,7 @@ config CLK_IMX93
>
> config CLK_IMXRT1050
> tristate "IMXRT1050 CCM Clock Driver"
> - depends on SOC_IMXRT
> + depends on SOC_IMXRT || COMPILE_TEST
Not sure what COMPILE_TEST is but,
Acked-by: Jesse Taube <[email protected]>

Sorry about the issues introduced.

Thanks,
Jesse Taube
> select MXC_CLK
> help
> Build the driver for i.MXRT1050 CCM Clock Driver
> diff --git a/drivers/clk/imx/clk-imxrt1050.c b/drivers/clk/imx/clk-imxrt1050.c
> index e972abd299a8..fd5c51fc92c0 100644
> --- a/drivers/clk/imx/clk-imxrt1050.c
> +++ b/drivers/clk/imx/clk-imxrt1050.c
> @@ -167,3 +167,7 @@ static struct platform_driver imxrt1050_clk_driver = {
> },
> };
> module_platform_driver(imxrt1050_clk_driver);
> +
> +MODULE_LICENSE("Dual BSD/GPL");
> +MODULE_AUTHOR("Jesse Taube <[email protected]>");
> +MODULE_AUTHOR("Giulio Benetti <[email protected]>");
> diff --git a/drivers/clk/imx/clk-pfd.c b/drivers/clk/imx/clk-pfd.c
> index 5d2a9a3be95e..5cf0149dfa15 100644
> --- a/drivers/clk/imx/clk-pfd.c
> +++ b/drivers/clk/imx/clk-pfd.c
> @@ -5,6 +5,7 @@
> */
>
> #include <linux/clk-provider.h>
> +#include <linux/export.h>
> #include <linux/io.h>
> #include <linux/slab.h>
> #include <linux/err.h>
> @@ -153,3 +154,4 @@ struct clk_hw *imx_clk_hw_pfd(const char *name, const char *parent_name,
>
> return hw;
> }
> +EXPORT_SYMBOL_GPL(imx_clk_hw_pfd);
> diff --git a/drivers/clk/imx/clk-pllv3.c b/drivers/clk/imx/clk-pllv3.c
> index eea32f87c60a..11fb238ee8f0 100644
> --- a/drivers/clk/imx/clk-pllv3.c
> +++ b/drivers/clk/imx/clk-pllv3.c
> @@ -6,6 +6,7 @@
>
> #include <linux/clk-provider.h>
> #include <linux/delay.h>
> +#include <linux/export.h>
> #include <linux/io.h>
> #include <linux/iopoll.h>
> #include <linux/slab.h>
> @@ -486,3 +487,4 @@ struct clk_hw *imx_clk_hw_pllv3(enum imx_pllv3_type type, const char *name,
>
> return hw;
> }
> +EXPORT_SYMBOL_GPL(imx_clk_hw_pllv3);

2022-12-16 08:33:23

by Arnd Bergmann

[permalink] [raw]
Subject: Re: [PATCH] clk: imx: fix compile testing imxrt1050

On Thu, Dec 15, 2022, at 21:15, Jesse Taube wrote:
> On 12/15/22 11:58, Arnd Bergmann wrote:

>> config CLK_IMXRT1050
>> tristate "IMXRT1050 CCM Clock Driver"
>> - depends on SOC_IMXRT
>> + depends on SOC_IMXRT || COMPILE_TEST
> Not sure what COMPILE_TEST is but,

The idea is that you can enable the driver to be built in
allmodconfig or randconfig regardless of the architecture,
to see any compiler-time warnings creeping up without
having to build an imxrt specific kernel.

> Acked-by: Jesse Taube <[email protected]>

Thanks

Arnd

2023-01-09 11:17:23

by Abel Vesa

[permalink] [raw]
Subject: Re: [PATCH] clk: imx: fix compile testing imxrt1050

On 22-12-15 17:58:18, Arnd Bergmann wrote:
> From: Arnd Bergmann <[email protected]>
>
> Randconfig testing revealed multiple issues with this driver:
>
> ERROR: modpost: missing MODULE_LICENSE() in drivers/clk/imx/clk-imxrt1050.o
> ERROR: modpost: "imx_clk_hw_pllv3" [drivers/clk/imx/clk-imxrt1050.ko] undefined!
> ERROR: modpost: "imx_clk_hw_pfd" [drivers/clk/imx/clk-imxrt1050.ko] undefined!
>
> Export the necessary symbols from the core clk driver and add the
> license and author tags. To find this type of problem more easily
> in the future, also enable building on other platforms, as we do for
> the other i.MX clk drivers.
>
> Signed-off-by: Arnd Bergmann <[email protected]>

Fixes tag maybe?

Reviewed-by: Abel Vesa <[email protected]>

> ---
> drivers/clk/imx/Kconfig | 2 +-
> drivers/clk/imx/clk-imxrt1050.c | 4 ++++
> drivers/clk/imx/clk-pfd.c | 2 ++
> drivers/clk/imx/clk-pllv3.c | 2 ++
> 4 files changed, 9 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/clk/imx/Kconfig b/drivers/clk/imx/Kconfig
> index 25785ec9c276..f6b82e0b9703 100644
> --- a/drivers/clk/imx/Kconfig
> +++ b/drivers/clk/imx/Kconfig
> @@ -115,7 +115,7 @@ config CLK_IMX93
>
> config CLK_IMXRT1050
> tristate "IMXRT1050 CCM Clock Driver"
> - depends on SOC_IMXRT
> + depends on SOC_IMXRT || COMPILE_TEST
> select MXC_CLK
> help
> Build the driver for i.MXRT1050 CCM Clock Driver
> diff --git a/drivers/clk/imx/clk-imxrt1050.c b/drivers/clk/imx/clk-imxrt1050.c
> index e972abd299a8..fd5c51fc92c0 100644
> --- a/drivers/clk/imx/clk-imxrt1050.c
> +++ b/drivers/clk/imx/clk-imxrt1050.c
> @@ -167,3 +167,7 @@ static struct platform_driver imxrt1050_clk_driver = {
> },
> };
> module_platform_driver(imxrt1050_clk_driver);
> +
> +MODULE_LICENSE("Dual BSD/GPL");
> +MODULE_AUTHOR("Jesse Taube <[email protected]>");
> +MODULE_AUTHOR("Giulio Benetti <[email protected]>");
> diff --git a/drivers/clk/imx/clk-pfd.c b/drivers/clk/imx/clk-pfd.c
> index 5d2a9a3be95e..5cf0149dfa15 100644
> --- a/drivers/clk/imx/clk-pfd.c
> +++ b/drivers/clk/imx/clk-pfd.c
> @@ -5,6 +5,7 @@
> */
>
> #include <linux/clk-provider.h>
> +#include <linux/export.h>
> #include <linux/io.h>
> #include <linux/slab.h>
> #include <linux/err.h>
> @@ -153,3 +154,4 @@ struct clk_hw *imx_clk_hw_pfd(const char *name, const char *parent_name,
>
> return hw;
> }
> +EXPORT_SYMBOL_GPL(imx_clk_hw_pfd);
> diff --git a/drivers/clk/imx/clk-pllv3.c b/drivers/clk/imx/clk-pllv3.c
> index eea32f87c60a..11fb238ee8f0 100644
> --- a/drivers/clk/imx/clk-pllv3.c
> +++ b/drivers/clk/imx/clk-pllv3.c
> @@ -6,6 +6,7 @@
>
> #include <linux/clk-provider.h>
> #include <linux/delay.h>
> +#include <linux/export.h>
> #include <linux/io.h>
> #include <linux/iopoll.h>
> #include <linux/slab.h>
> @@ -486,3 +487,4 @@ struct clk_hw *imx_clk_hw_pllv3(enum imx_pllv3_type type, const char *name,
>
> return hw;
> }
> +EXPORT_SYMBOL_GPL(imx_clk_hw_pllv3);
> --
> 2.35.1
>

2023-02-10 23:26:20

by Stephen Boyd

[permalink] [raw]
Subject: Re: [PATCH] clk: imx: fix compile testing imxrt1050

Quoting Arnd Bergmann (2022-12-15 08:58:18)
> From: Arnd Bergmann <[email protected]>
>
> Randconfig testing revealed multiple issues with this driver:
>
> ERROR: modpost: missing MODULE_LICENSE() in drivers/clk/imx/clk-imxrt1050.o
> ERROR: modpost: "imx_clk_hw_pllv3" [drivers/clk/imx/clk-imxrt1050.ko] undefined!
> ERROR: modpost: "imx_clk_hw_pfd" [drivers/clk/imx/clk-imxrt1050.ko] undefined!
>
> Export the necessary symbols from the core clk driver and add the
> license and author tags. To find this type of problem more easily
> in the future, also enable building on other platforms, as we do for
> the other i.MX clk drivers.
>
> Signed-off-by: Arnd Bergmann <[email protected]>
> ---

Applied to clk-next