mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH] devfreq: tegra20: add COMMON_CLK dependency
@ 2019-06-28 10:32 ` Arnd Bergmann
  2019-06-28 11:00   ` Dmitry Osipenko
                     ` (2 more replies)
  0 siblings, 3 replies; 7+ messages in thread
From: Arnd Bergmann @ 2019-06-28 10:32 UTC (permalink / raw)
  To: MyungJoo Ham, Kyungmin Park
  Cc: Arnd Bergmann, Chanwoo Choi, Dmitry Osipenko, linux-pm, linux-kernel

Compile-testing the new driver on platforms without CONFIG_COMMON_CLK
leads to a link error:

drivers/devfreq/tegra20-devfreq.o: In function `tegra_devfreq_target':
tegra20-devfreq.c:(.text+0x288): undefined reference to `clk_set_min_rate'

Add a dependency on COMMON_CLK to avoid this.

Fixes: 1d39ee8dad6d ("PM / devfreq: Introduce driver for NVIDIA Tegra20")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
 drivers/devfreq/Kconfig | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/devfreq/Kconfig b/drivers/devfreq/Kconfig
index f3b242987fd9..defe1d438710 100644
--- a/drivers/devfreq/Kconfig
+++ b/drivers/devfreq/Kconfig
@@ -107,6 +107,7 @@ config ARM_TEGRA_DEVFREQ
 config ARM_TEGRA20_DEVFREQ
 	tristate "NVIDIA Tegra20 DEVFREQ Driver"
 	depends on (TEGRA_MC && TEGRA20_EMC) || COMPILE_TEST
+	depends on COMMON_CLK
 	select DEVFREQ_GOV_SIMPLE_ONDEMAND
 	select PM_OPP
 	help
-- 
2.20.0


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH] devfreq: tegra20: add COMMON_CLK dependency
  2019-06-28 10:32 ` [PATCH] devfreq: tegra20: add COMMON_CLK dependency Arnd Bergmann
@ 2019-06-28 11:00   ` Dmitry Osipenko
  2019-06-28 11:05     ` Dmitry Osipenko
  2019-07-01  1:49   ` Chanwoo Choi
       [not found]   ` <CGME20190628103243epcas4p133102dfa6709970b1dd49296f82425b2@epcms1p6>
  2 siblings, 1 reply; 7+ messages in thread
From: Dmitry Osipenko @ 2019-06-28 11:00 UTC (permalink / raw)
  To: Arnd Bergmann, MyungJoo Ham, Kyungmin Park
  Cc: Chanwoo Choi, linux-pm, linux-kernel

28.06.2019 13:32, Arnd Bergmann пишет:
> Compile-testing the new driver on platforms without CONFIG_COMMON_CLK
> leads to a link error:
> 
> drivers/devfreq/tegra20-devfreq.o: In function `tegra_devfreq_target':
> tegra20-devfreq.c:(.text+0x288): undefined reference to `clk_set_min_rate'
> 
> Add a dependency on COMMON_CLK to avoid this.
> 
> Fixes: 1d39ee8dad6d ("PM / devfreq: Introduce driver for NVIDIA Tegra20")
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> ---
>  drivers/devfreq/Kconfig | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/drivers/devfreq/Kconfig b/drivers/devfreq/Kconfig
> index f3b242987fd9..defe1d438710 100644
> --- a/drivers/devfreq/Kconfig
> +++ b/drivers/devfreq/Kconfig
> @@ -107,6 +107,7 @@ config ARM_TEGRA_DEVFREQ
>  config ARM_TEGRA20_DEVFREQ
>  	tristate "NVIDIA Tegra20 DEVFREQ Driver"
>  	depends on (TEGRA_MC && TEGRA20_EMC) || COMPILE_TEST
> +	depends on COMMON_CLK
>  	select DEVFREQ_GOV_SIMPLE_ONDEMAND
>  	select PM_OPP
>  	help
> 

How is it possible to happen? There is a stub for clk_set_min_rate() when COMMON_CLK
is disabled .. Could you please show the kernel's config that causes the problem?

Moreover that was me who added the missing stub for clk_set_min_rate() in [1] to fix [2].

[1]
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/include/linux/clk.h?id=b88c9f4129dcec941e5a26508e991c08051ed1ac

[2] https://lists.01.org/pipermail/kbuild-all/2019-April/060292.html

So this patch looks wrong to me because apparently it fixes a non-existent problem.

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH] devfreq: tegra20: add COMMON_CLK dependency
  2019-06-28 11:00   ` Dmitry Osipenko
@ 2019-06-28 11:05     ` Dmitry Osipenko
  2019-06-28 12:27       ` Arnd Bergmann
  0 siblings, 1 reply; 7+ messages in thread
From: Dmitry Osipenko @ 2019-06-28 11:05 UTC (permalink / raw)
  To: Arnd Bergmann, MyungJoo Ham, Kyungmin Park
  Cc: Chanwoo Choi, linux-pm, linux-kernel

28.06.2019 14:00, Dmitry Osipenko пишет:
> 28.06.2019 13:32, Arnd Bergmann пишет:
>> Compile-testing the new driver on platforms without CONFIG_COMMON_CLK
>> leads to a link error:
>>
>> drivers/devfreq/tegra20-devfreq.o: In function `tegra_devfreq_target':
>> tegra20-devfreq.c:(.text+0x288): undefined reference to `clk_set_min_rate'
>>
>> Add a dependency on COMMON_CLK to avoid this.
>>
>> Fixes: 1d39ee8dad6d ("PM / devfreq: Introduce driver for NVIDIA Tegra20")
>> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
>> ---
>>  drivers/devfreq/Kconfig | 1 +
>>  1 file changed, 1 insertion(+)
>>
>> diff --git a/drivers/devfreq/Kconfig b/drivers/devfreq/Kconfig
>> index f3b242987fd9..defe1d438710 100644
>> --- a/drivers/devfreq/Kconfig
>> +++ b/drivers/devfreq/Kconfig
>> @@ -107,6 +107,7 @@ config ARM_TEGRA_DEVFREQ
>>  config ARM_TEGRA20_DEVFREQ
>>  	tristate "NVIDIA Tegra20 DEVFREQ Driver"
>>  	depends on (TEGRA_MC && TEGRA20_EMC) || COMPILE_TEST
>> +	depends on COMMON_CLK
>>  	select DEVFREQ_GOV_SIMPLE_ONDEMAND
>>  	select PM_OPP
>>  	help
>>
> 
> How is it possible to happen? There is a stub for clk_set_min_rate() when COMMON_CLK
> is disabled .. Could you please show the kernel's config that causes the problem?
> 
> Moreover that was me who added the missing stub for clk_set_min_rate() in [1] to fix [2].
> 
> [1]
> https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/include/linux/clk.h?id=b88c9f4129dcec941e5a26508e991c08051ed1ac
> 
> [2] https://lists.01.org/pipermail/kbuild-all/2019-April/060292.html
> 
> So this patch looks wrong to me because apparently it fixes a non-existent problem.
> 

Oh, wait. That was "implicit declaration" and this one is "undefined reference"!
Still looks like something else need to be fixed..

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH] devfreq: tegra20: add COMMON_CLK dependency
  2019-06-28 11:05     ` Dmitry Osipenko
@ 2019-06-28 12:27       ` Arnd Bergmann
  2019-06-28 12:54         ` Dmitry Osipenko
  0 siblings, 1 reply; 7+ messages in thread
From: Arnd Bergmann @ 2019-06-28 12:27 UTC (permalink / raw)
  To: Dmitry Osipenko
  Cc: MyungJoo Ham, Kyungmin Park, Chanwoo Choi, Linux PM list,
	Linux Kernel Mailing List

On Fri, Jun 28, 2019 at 1:05 PM Dmitry Osipenko <digetx@gmail.com> wrote:
> 28.06.2019 14:00, Dmitry Osipenko пишет:

> >
> > How is it possible to happen? There is a stub for clk_set_min_rate() when COMMON_CLK
> > is disabled .. Could you please show the kernel's config that causes the problem?
> >
> > Moreover that was me who added the missing stub for clk_set_min_rate() in [1] to fix [2].
> >
> > [1]
> > https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/include/linux/clk.h?id=b88c9f4129dcec941e5a26508e991c08051ed1ac
> >
> > [2] https://lists.01.org/pipermail/kbuild-all/2019-April/060292.html
> >
> > So this patch looks wrong to me because apparently it fixes a non-existent problem.
> >
>
> Oh, wait. That was "implicit declaration" and this one is "undefined reference"!
> Still looks like something else need to be fixed..

The stub takes care of the case where there is no CLK support at all, i.e.
CONFIG_HAVE_CLK is disabled. However, some older ARM platforms
still have a custom implementation of the API and lack clk_set_min_rate().

$ git grep -l 'EXPORT_SYMBOL.*\<clk_set_rate\>'  | xargs grep -L
clk_set_min_rate
arch/arm/mach-ep93xx/clock.c
arch/arm/mach-mmp/clock.c
arch/arm/mach-omap1/clock.c
arch/arm/mach-sa1100/clock.c
arch/arm/mach-w90x900/clock.c
arch/c6x/platforms/pll.c
arch/m68k/coldfire/clk.c
arch/mips/ar7/clock.c
arch/mips/bcm63xx/clk.c
arch/mips/lantiq/clk.c
arch/mips/loongson64/lemote-2f/clock.c
arch/mips/ralink/clk.c
arch/unicore32/kernel/clock.c
drivers/sh/clk/core.c

We could in theory convert all of those to COMMON_CLK, or simply add
a dummy clk_set_min_rate() for each one, but since there is only one user,
my fix was simpler.

       Arnd

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH] devfreq: tegra20: add COMMON_CLK dependency
  2019-06-28 12:27       ` Arnd Bergmann
@ 2019-06-28 12:54         ` Dmitry Osipenko
  0 siblings, 0 replies; 7+ messages in thread
From: Dmitry Osipenko @ 2019-06-28 12:54 UTC (permalink / raw)
  To: Arnd Bergmann
  Cc: MyungJoo Ham, Kyungmin Park, Chanwoo Choi, Linux PM list,
	Linux Kernel Mailing List

28.06.2019 15:27, Arnd Bergmann пишет:
> On Fri, Jun 28, 2019 at 1:05 PM Dmitry Osipenko <digetx@gmail.com> wrote:
>> 28.06.2019 14:00, Dmitry Osipenko пишет:
> 
>>>
>>> How is it possible to happen? There is a stub for clk_set_min_rate() when COMMON_CLK
>>> is disabled .. Could you please show the kernel's config that causes the problem?
>>>
>>> Moreover that was me who added the missing stub for clk_set_min_rate() in [1] to fix [2].
>>>
>>> [1]
>>> https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/include/linux/clk.h?id=b88c9f4129dcec941e5a26508e991c08051ed1ac
>>>
>>> [2] https://lists.01.org/pipermail/kbuild-all/2019-April/060292.html
>>>
>>> So this patch looks wrong to me because apparently it fixes a non-existent problem.
>>>
>>
>> Oh, wait. That was "implicit declaration" and this one is "undefined reference"!
>> Still looks like something else need to be fixed..
> 
> The stub takes care of the case where there is no CLK support at all, i.e.
> CONFIG_HAVE_CLK is disabled. However, some older ARM platforms
> still have a custom implementation of the API and lack clk_set_min_rate().
> 
> $ git grep -l 'EXPORT_SYMBOL.*\<clk_set_rate\>'  | xargs grep -L
> clk_set_min_rate
> arch/arm/mach-ep93xx/clock.c
> arch/arm/mach-mmp/clock.c
> arch/arm/mach-omap1/clock.c
> arch/arm/mach-sa1100/clock.c
> arch/arm/mach-w90x900/clock.c
> arch/c6x/platforms/pll.c
> arch/m68k/coldfire/clk.c
> arch/mips/ar7/clock.c
> arch/mips/bcm63xx/clk.c
> arch/mips/lantiq/clk.c
> arch/mips/loongson64/lemote-2f/clock.c
> arch/mips/ralink/clk.c
> arch/unicore32/kernel/clock.c
> drivers/sh/clk/core.c
> 
> We could in theory convert all of those to COMMON_CLK, or simply add
> a dummy clk_set_min_rate() for each one, but since there is only one user,
> my fix was simpler.

Okay, thank you for the clarification. Looks like "Tegra30 DEVFREQ" should cause the
same trouble for you as well then.

Reviewed-by: Dmitry Osipenko <digetx@gmail.com>

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH] devfreq: tegra20: add COMMON_CLK dependency
  2019-06-28 10:32 ` [PATCH] devfreq: tegra20: add COMMON_CLK dependency Arnd Bergmann
  2019-06-28 11:00   ` Dmitry Osipenko
@ 2019-07-01  1:49   ` Chanwoo Choi
       [not found]   ` <CGME20190628103243epcas4p133102dfa6709970b1dd49296f82425b2@epcms1p6>
  2 siblings, 0 replies; 7+ messages in thread
From: Chanwoo Choi @ 2019-07-01  1:49 UTC (permalink / raw)
  To: Arnd Bergmann, MyungJoo Ham, Kyungmin Park
  Cc: Dmitry Osipenko, linux-pm, linux-kernel

Hi Arnd,

Thanks for fixup.
Reviewed-by: Chanwoo Choi <cw00.choi@samsung.com>



Hi Myungjoo,
This patch have to be merged for linux 5.3 before sending pull-request
because it fixed the build error of merged patch[1] on devfreq.git.

[1] https://git.kernel.org/pub/scm/linux/kernel/git/mzx/devfreq.git/commit/?h=for-next&id=028b3793284fa1bb4db73a90608d7cb24664480c

Best Regards,
Chanwoo Choi

On 19. 6. 28. 오후 7:32, Arnd Bergmann wrote:
> Compile-testing the new driver on platforms without CONFIG_COMMON_CLK
> leads to a link error:
> 
> drivers/devfreq/tegra20-devfreq.o: In function `tegra_devfreq_target':
> tegra20-devfreq.c:(.text+0x288): undefined reference to `clk_set_min_rate'
> 
> Add a dependency on COMMON_CLK to avoid this.
> 
> Fixes: 1d39ee8dad6d ("PM / devfreq: Introduce driver for NVIDIA Tegra20")
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> ---
>  drivers/devfreq/Kconfig | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/drivers/devfreq/Kconfig b/drivers/devfreq/Kconfig
> index f3b242987fd9..defe1d438710 100644
> --- a/drivers/devfreq/Kconfig
> +++ b/drivers/devfreq/Kconfig
> @@ -107,6 +107,7 @@ config ARM_TEGRA_DEVFREQ
>  config ARM_TEGRA20_DEVFREQ
>  	tristate "NVIDIA Tegra20 DEVFREQ Driver"
>  	depends on (TEGRA_MC && TEGRA20_EMC) || COMPILE_TEST
> +	depends on COMMON_CLK
>  	select DEVFREQ_GOV_SIMPLE_ONDEMAND
>  	select PM_OPP
>  	help
> 

^ permalink raw reply	[flat|nested] 7+ messages in thread

* RE: Re: [PATCH] devfreq: tegra20: add COMMON_CLK dependency
       [not found]   ` <CGME20190628103243epcas4p133102dfa6709970b1dd49296f82425b2@epcms1p6>
@ 2019-07-09  6:08     ` MyungJoo Ham
  0 siblings, 0 replies; 7+ messages in thread
From: MyungJoo Ham @ 2019-07-09  6:08 UTC (permalink / raw)
  To: Chanwoo Choi, Arnd Bergmann, Kyungmin Park
  Cc: Dmitry Osipenko, linux-pm, linux-kernel

On 19. 6. 28. 오후 7:32, Arnd Bergmann wrote:
> Compile-testing the new driver on platforms without CONFIG_COMMON_CLK
> leads to a link error:
> 
> drivers/devfreq/tegra20-devfreq.o: In function `tegra_devfreq_target':
> tegra20-devfreq.c:(.text+0x288): undefined reference to `clk_set_min_rate'
> 
> Add a dependency on COMMON_CLK to avoid this.
> 
> Fixes: 1d39ee8dad6d ("PM / devfreq: Introduce driver for NVIDIA Tegra20")
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> ---
>  drivers/devfreq/Kconfig | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/drivers/devfreq/Kconfig b/drivers/devfreq/Kconfig
> index f3b242987fd9..defe1d438710 100644
> --- a/drivers/devfreq/Kconfig
> +++ b/drivers/devfreq/Kconfig
> @@ -107,6 +107,7 @@ config ARM_TEGRA_DEVFREQ
>  config ARM_TEGRA20_DEVFREQ
>  	tristate "NVIDIA Tegra20 DEVFREQ Driver"
>  	depends on (TEGRA_MC && TEGRA20_EMC) || COMPILE_TEST
> +	depends on COMMON_CLK
>  	select DEVFREQ_GOV_SIMPLE_ONDEMAND
>  	select PM_OPP
>  	help
> 

Acked-by: MyungJoo Ham <myungjoo.ham@samsung.com>

Thanks!


Cheers,
MyungJoo.


^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2019-07-09  6:08 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <CGME20190628103243epcas4p133102dfa6709970b1dd49296f82425b2@epcas4p1.samsung.com>
2019-06-28 10:32 ` [PATCH] devfreq: tegra20: add COMMON_CLK dependency Arnd Bergmann
2019-06-28 11:00   ` Dmitry Osipenko
2019-06-28 11:05     ` Dmitry Osipenko
2019-06-28 12:27       ` Arnd Bergmann
2019-06-28 12:54         ` Dmitry Osipenko
2019-07-01  1:49   ` Chanwoo Choi
     [not found]   ` <CGME20190628103243epcas4p133102dfa6709970b1dd49296f82425b2@epcms1p6>
2019-07-09  6:08     ` MyungJoo Ham

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®