diff mbox

[1/3] drivers: clk: add samsung common clock config option

Message ID 1393392247-6247-2-git-send-email-pankaj.dubey@samsung.com (mailing list archive)
State New, archived
Headers show

Commit Message

Pankaj Dubey Feb. 26, 2014, 5:24 a.m. UTC
add samsung common clock config option and let ARCH_EXYNOS or ARCH_S3CXXXX
select this if they want to use samsung common clock infrastructure.

CC: Mike Turquette <mturquette@linaro.org>
Signed-off-by: Pankaj Dubey <pankaj.dubey@samsung.com>
---
 drivers/clk/Kconfig  |   10 ++++++++++
 drivers/clk/Makefile |    2 +-
 2 files changed, 11 insertions(+), 1 deletion(-)

Comments

Tomasz Figa March 10, 2014, 12:28 a.m. UTC | #1
Hi Pankaj,

On 26.02.2014 06:24, Pankaj Dubey wrote:
> add samsung common clock config option and let ARCH_EXYNOS or ARCH_S3CXXXX
> select this if they want to use samsung common clock infrastructure.
>
> CC: Mike Turquette <mturquette@linaro.org>
> Signed-off-by: Pankaj Dubey <pankaj.dubey@samsung.com>
> ---
>   drivers/clk/Kconfig  |   10 ++++++++++
>   drivers/clk/Makefile |    2 +-
>   2 files changed, 11 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/clk/Kconfig b/drivers/clk/Kconfig
> index 7641965..d93a325 100644
> --- a/drivers/clk/Kconfig
> +++ b/drivers/clk/Kconfig
> @@ -23,6 +23,16 @@ config COMMON_CLK
>   menu "Common Clock Framework"
>   	depends on COMMON_CLK
>
> +config COMMON_CLK_SAMSUNG
> +	bool "Clock driver for Samsung SoCs"
> +	depends on ARCH_S3C64XX || ARCH_S3C24XX || ARCH_EXYNOS || ARM64
> +	---help---
> +          Supports clocking on Exynos SoCs:
> +	  - Exynos5250, Exynos5420 board.
> +	  - Exynos4 boards.
> +	  - S3C2412, S3C2416, S3C2466 boards.
> +	  - S3C64XX boards.

I don't think listing the platforms here explicitly is a good idea, as 
this option shouldn't generally be user-visible (related platforms would 
not work without this option enabled) and adding support for every new 
SoC would require changing the help string.

I wonder if we really need this to be user-visible. What about moving it 
out of this menu, making the symbol select COMMON_CLK and let the 
platforms just select COMMON_CLK_SAMSUNG alone?

Best regards,
Tomasz
Pankaj Dubey March 10, 2014, 8:24 a.m. UTC | #2
Hi Tomasz,

On 03/10/2014 09:28 AM, Tomasz Figa wrote:
> Hi Pankaj,
>
> On 26.02.2014 06:24, Pankaj Dubey wrote:
>> add samsung common clock config option and let ARCH_EXYNOS or 
>> ARCH_S3CXXXX
>> select this if they want to use samsung common clock infrastructure.
>>
>> CC: Mike Turquette <mturquette@linaro.org>
>> Signed-off-by: Pankaj Dubey <pankaj.dubey@samsung.com>
>> ---
>>   drivers/clk/Kconfig  |   10 ++++++++++
>>   drivers/clk/Makefile |    2 +-
>>   2 files changed, 11 insertions(+), 1 deletion(-)
>>
>> diff --git a/drivers/clk/Kconfig b/drivers/clk/Kconfig
>> index 7641965..d93a325 100644
>> --- a/drivers/clk/Kconfig
>> +++ b/drivers/clk/Kconfig
>> @@ -23,6 +23,16 @@ config COMMON_CLK
>>   menu "Common Clock Framework"
>>       depends on COMMON_CLK
>>
>> +config COMMON_CLK_SAMSUNG
>> +    bool "Clock driver for Samsung SoCs"
>> +    depends on ARCH_S3C64XX || ARCH_S3C24XX || ARCH_EXYNOS || ARM64
>> +    ---help---
>> +          Supports clocking on Exynos SoCs:
>> +      - Exynos5250, Exynos5420 board.
>> +      - Exynos4 boards.
>> +      - S3C2412, S3C2416, S3C2466 boards.
>> +      - S3C64XX boards.
>
> I don't think listing the platforms here explicitly is a good idea, as 
> this option shouldn't generally be user-visible (related platforms 
> would not work without this option enabled) and adding support for 
> every new SoC would require changing the help string.
>
> I wonder if we really need this to be user-visible. What about moving 
> it out of this menu, making the symbol select COMMON_CLK and let the 
> platforms just select COMMON_CLK_SAMSUNG alone?
>
> Best regards,
> Tomasz
>

Thanks for review. I agree your point. In that case how about adding 
"drivers/clk/samsung/Kconfig" as below:

+config COMMON_CLK_SAMSUNG
+    bool
+    select COMMON_CLK
+
+config S3C2412_COMMON_CLK //These macros are introduced by Heiko's 
clock patches for S3C24XX SoC
+    bool
+    select COMMON_CLK_SAMSUNG
+
+config S3C2443_COMMON_CLK
+    bool
+    select COMMON_CLK_SAMSUNG

In this way we can get rid of clock related config options from 
"arch/arm/mach-s3c24xx/Kconfig" and in future
if any other old SoC such as S5P clocks getting converted to use common 
clock, they can add related config here rather
than arch/mach-xxx/Kconfig if required. Thus we can keep all common 
clock config option for Samsung SoC at one place.
All Exynos SOC can select only COMMON_CLK_SAMSUNG to use Samsung common 
clock infrastructure.
diff mbox

Patch

diff --git a/drivers/clk/Kconfig b/drivers/clk/Kconfig
index 7641965..d93a325 100644
--- a/drivers/clk/Kconfig
+++ b/drivers/clk/Kconfig
@@ -23,6 +23,16 @@  config COMMON_CLK
 menu "Common Clock Framework"
 	depends on COMMON_CLK
 
+config COMMON_CLK_SAMSUNG
+	bool "Clock driver for Samsung SoCs"
+	depends on ARCH_S3C64XX || ARCH_S3C24XX || ARCH_EXYNOS || ARM64
+	---help---
+          Supports clocking on Exynos SoCs:
+	  - Exynos5250, Exynos5420 board.
+	  - Exynos4 boards.
+	  - S3C2412, S3C2416, S3C2466 boards.
+	  - S3C64XX boards.
+
 config COMMON_CLK_WM831X
 	tristate "Clock driver for WM831x/2x PMICs"
 	depends on MFD_WM831X
diff --git a/drivers/clk/Makefile b/drivers/clk/Makefile
index a367a98..f1da6ee 100644
--- a/drivers/clk/Makefile
+++ b/drivers/clk/Makefile
@@ -38,7 +38,7 @@  obj-$(CONFIG_PLAT_ORION)		+= mvebu/
 obj-$(CONFIG_ARCH_MXS)			+= mxs/
 obj-$(CONFIG_COMMON_CLK_QCOM)		+= qcom/
 obj-$(CONFIG_ARCH_ROCKCHIP)		+= rockchip/
-obj-$(CONFIG_PLAT_SAMSUNG)		+= samsung/
+obj-$(CONFIG_COMMON_CLK_SAMSUNG)	+= samsung/
 obj-$(CONFIG_ARCH_SHMOBILE_MULTI)	+= shmobile/
 obj-$(CONFIG_ARCH_SIRF)			+= sirf/
 obj-$(CONFIG_ARCH_SOCFPGA)		+= socfpga/