diff mbox series

clk: lan966x: Depend on CONFIG_IOMEM

Message ID 20220224035902.1594253-1-davidgow@google.com (mailing list archive)
State Superseded, archived
Headers show
Series clk: lan966x: Depend on CONFIG_IOMEM | expand

Commit Message

David Gow Feb. 24, 2022, 3:59 a.m. UTC
The lan966x clk driver depends on IOMEM functions, in particular
devm_platform_ioremap_resource(), but doesn't state a formal dependency
on it in Kconfig.

Add such a dependency, which prevents this driver from being enabled
on UML configurations without IOMEM.

This fixes the following build failure:

/usr/bin/ld: drivers/clk/clk-lan966x.o: in function `lan966x_clk_probe':
clk-lan966x.c:(.text+0x294): undefined reference to `devm_platform_ioremap_resource'
/usr/bin/ld: clk-lan966x.c:(.text+0x3aa): undefined reference to `devm_ioremap_resource'
collect2: error: ld returned 1 exit status

Signed-off-by: David Gow <davidgow@google.com>
---
 drivers/clk/Kconfig | 1 +
 1 file changed, 1 insertion(+)

Comments

Anton Ivanov Feb. 24, 2022, 8:03 a.m. UTC | #1
On 24/02/2022 03:59, David Gow wrote:
> The lan966x clk driver depends on IOMEM functions, in particular
> devm_platform_ioremap_resource(), but doesn't state a formal dependency
> on it in Kconfig.
> 
> Add such a dependency, which prevents this driver from being enabled
> on UML configurations without IOMEM.
> 
> This fixes the following build failure:
> 
> /usr/bin/ld: drivers/clk/clk-lan966x.o: in function `lan966x_clk_probe':
> clk-lan966x.c:(.text+0x294): undefined reference to `devm_platform_ioremap_resource'
> /usr/bin/ld: clk-lan966x.c:(.text+0x3aa): undefined reference to `devm_ioremap_resource'
> collect2: error: ld returned 1 exit status
> 
> Signed-off-by: David Gow <davidgow@google.com>
> ---
>   drivers/clk/Kconfig | 1 +
>   1 file changed, 1 insertion(+)
> 
> diff --git a/drivers/clk/Kconfig b/drivers/clk/Kconfig
> index 3cdf33470a75..7b5db8a9eb4f 100644
> --- a/drivers/clk/Kconfig
> +++ b/drivers/clk/Kconfig
> @@ -231,6 +231,7 @@ config COMMON_CLK_GEMINI
>   
>   config COMMON_CLK_LAN966X
>   	bool "Generic Clock Controller driver for LAN966X SoC"
> +	depends on IOMEM
>   	help
>   	  This driver provides support for Generic Clock Controller(GCK) on
>   	  LAN966X SoC. GCK generates and supplies clock to various peripherals
> 

Acked-By: anton ivanov <anton.ivanov@cambridgegreys.com>
Stephen Boyd Feb. 25, 2022, 12:53 a.m. UTC | #2
Quoting David Gow (2022-02-23 19:59:02)
> The lan966x clk driver depends on IOMEM functions, in particular
> devm_platform_ioremap_resource(), but doesn't state a formal dependency
> on it in Kconfig.
> 
> Add such a dependency, which prevents this driver from being enabled
> on UML configurations without IOMEM.
> 
> This fixes the following build failure:
> 
> /usr/bin/ld: drivers/clk/clk-lan966x.o: in function `lan966x_clk_probe':
> clk-lan966x.c:(.text+0x294): undefined reference to `devm_platform_ioremap_resource'
> /usr/bin/ld: clk-lan966x.c:(.text+0x3aa): undefined reference to `devm_ioremap_resource'
> collect2: error: ld returned 1 exit status
> 
> Signed-off-by: David Gow <davidgow@google.com>
> ---
>  drivers/clk/Kconfig | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/drivers/clk/Kconfig b/drivers/clk/Kconfig
> index 3cdf33470a75..7b5db8a9eb4f 100644
> --- a/drivers/clk/Kconfig
> +++ b/drivers/clk/Kconfig
> @@ -231,6 +231,7 @@ config COMMON_CLK_GEMINI
>  
>  config COMMON_CLK_LAN966X
>         bool "Generic Clock Controller driver for LAN966X SoC"
> +       depends on IOMEM

What is CONFIG_IOMEM? This is superseded by
https://lore.kernel.org/r/20220219141536.460812-1-horatiu.vultur@microchip.com

>         help
>           This driver provides support for Generic Clock Controller(GCK) on
>           LAN966X SoC. GCK generates and supplies clock to various peripherals
David Gow Feb. 25, 2022, 4:14 a.m. UTC | #3
On Fri, Feb 25, 2022 at 8:53 AM Stephen Boyd <sboyd@kernel.org> wrote:
>
> Quoting David Gow (2022-02-23 19:59:02)
> > The lan966x clk driver depends on IOMEM functions, in particular
> > devm_platform_ioremap_resource(), but doesn't state a formal dependency
> > on it in Kconfig.
> >
> > Add such a dependency, which prevents this driver from being enabled
> > on UML configurations without IOMEM.
> >
> > This fixes the following build failure:
> >
> > /usr/bin/ld: drivers/clk/clk-lan966x.o: in function `lan966x_clk_probe':
> > clk-lan966x.c:(.text+0x294): undefined reference to `devm_platform_ioremap_resource'
> > /usr/bin/ld: clk-lan966x.c:(.text+0x3aa): undefined reference to `devm_ioremap_resource'
> > collect2: error: ld returned 1 exit status
> >
> > Signed-off-by: David Gow <davidgow@google.com>
> > ---
> >  drivers/clk/Kconfig | 1 +
> >  1 file changed, 1 insertion(+)
> >
> > diff --git a/drivers/clk/Kconfig b/drivers/clk/Kconfig
> > index 3cdf33470a75..7b5db8a9eb4f 100644
> > --- a/drivers/clk/Kconfig
> > +++ b/drivers/clk/Kconfig
> > @@ -231,6 +231,7 @@ config COMMON_CLK_GEMINI
> >
> >  config COMMON_CLK_LAN966X
> >         bool "Generic Clock Controller driver for LAN966X SoC"
> > +       depends on IOMEM
>
> What is CONFIG_IOMEM? This is superseded by
> https://lore.kernel.org/r/20220219141536.460812-1-horatiu.vultur@microchip.com
>

Whoops, thanks! If I had a nickel every time I forgot the "HAS" in
"CONFIG_HAS_IOMEM"...

This patch indeed is no-longer needed in clk-fixes, so let's abandon it here.

Cheers,
-- David


> >         help
> >           This driver provides support for Generic Clock Controller(GCK) on
> >           LAN966X SoC. GCK generates and supplies clock to various peripherals
diff mbox series

Patch

diff --git a/drivers/clk/Kconfig b/drivers/clk/Kconfig
index 3cdf33470a75..7b5db8a9eb4f 100644
--- a/drivers/clk/Kconfig
+++ b/drivers/clk/Kconfig
@@ -231,6 +231,7 @@  config COMMON_CLK_GEMINI
 
 config COMMON_CLK_LAN966X
 	bool "Generic Clock Controller driver for LAN966X SoC"
+	depends on IOMEM
 	help
 	  This driver provides support for Generic Clock Controller(GCK) on
 	  LAN966X SoC. GCK generates and supplies clock to various peripherals