Message ID | 20201110193749.261367-1-krzk@kernel.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | clk: samsung: allow building the clkout driver as module | expand |
Hi Krzysztof, On 11/11/20 4:37 AM, Krzysztof Kozlowski wrote: > The Exynos clock output driver can be built as module (it does not have > to be part of core init process) for better customization. Adding a > KConfig entry allows also compile testing for build coverage. > > Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org> > --- > drivers/clk/samsung/Kconfig | 10 ++++++++++ > drivers/clk/samsung/Makefile | 2 +- > drivers/clk/samsung/clk-exynos-clkout.c | 1 + > 3 files changed, 12 insertions(+), 1 deletion(-) > > diff --git a/drivers/clk/samsung/Kconfig b/drivers/clk/samsung/Kconfig > index 57d4b3f20417..b6b2cb209543 100644 > --- a/drivers/clk/samsung/Kconfig > +++ b/drivers/clk/samsung/Kconfig > @@ -19,6 +19,16 @@ config EXYNOS_AUDSS_CLK_CON > on some Exynos SoC variants. Choose M or Y here if you want to > use audio devices such as I2S, PCM, etc. > > +config EXYNOS_CLK_OUT > + tristate "Samsung Exynos clock output driver" > + depends on COMMON_CLK_SAMSUNG > + default y if ARCH_EXYNOS > + help > + Support for the clock output (XCLKOUT) driver present on some of > + Exynos SoC variants. Usually the XCLKOUT is used to monitor the > + status of the certains clocks from SoC, but it could also be tied to > + other devices as an input clock. > + > # For S3C24XX platforms, select following symbols: > config S3C2410_COMMON_CLK > bool "Samsung S3C2410 clock controller support" if COMPILE_TEST > diff --git a/drivers/clk/samsung/Makefile b/drivers/clk/samsung/Makefile > index 1a4e6b787978..4adbf972e9f6 100644 > --- a/drivers/clk/samsung/Makefile > +++ b/drivers/clk/samsung/Makefile > @@ -15,7 +15,7 @@ obj-$(CONFIG_SOC_EXYNOS5420) += clk-exynos5420.o > obj-$(CONFIG_SOC_EXYNOS5420) += clk-exynos5-subcmu.o > obj-$(CONFIG_EXYNOS_ARM64_COMMON_CLK) += clk-exynos5433.o > obj-$(CONFIG_EXYNOS_AUDSS_CLK_CON) += clk-exynos-audss.o > -obj-$(CONFIG_ARCH_EXYNOS) += clk-exynos-clkout.o > +obj-$(CONFIG_EXYNOS_CLK_OUT) += clk-exynos-clkout.o > obj-$(CONFIG_EXYNOS_ARM64_COMMON_CLK) += clk-exynos7.o > obj-$(CONFIG_S3C2410_COMMON_CLK)+= clk-s3c2410.o > obj-$(CONFIG_S3C2410_COMMON_DCLK)+= clk-s3c2410-dclk.o > diff --git a/drivers/clk/samsung/clk-exynos-clkout.c b/drivers/clk/samsung/clk-exynos-clkout.c > index f5f8a956b316..9ec2f40cc400 100644 > --- a/drivers/clk/samsung/clk-exynos-clkout.c > +++ b/drivers/clk/samsung/clk-exynos-clkout.c > @@ -72,6 +72,7 @@ static const struct of_device_id exynos_clkout_ids[] = { > .data = &exynos_clkout_exynos5, > }, { } > }; > +MODULE_DEVICE_TABLE(of, exynos_clkout_ids); > > /* > * Device will be instantiated as child of PMU device without its own > Acked-by: Chanwoo Choi <cw00.choi@samsung.com>
On 11/10/20 20:37, Krzysztof Kozlowski wrote: > The Exynos clock output driver can be built as module (it does not have > to be part of core init process) for better customization. Adding a > KConfig entry allows also compile testing for build coverage. > > Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org> This needs to go through your tree due to dependencies on your previous patches, so Acked-by: Sylwester Nawrocki <s.nawrocki@samsung.com> > --- > drivers/clk/samsung/Kconfig | 10 ++++++++++ > drivers/clk/samsung/Makefile | 2 +- > drivers/clk/samsung/clk-exynos-clkout.c | 1 + > 3 files changed, 12 insertions(+), 1 deletion(-) > > diff --git a/drivers/clk/samsung/Kconfig b/drivers/clk/samsung/Kconfig > index 57d4b3f20417..b6b2cb209543 100644 > --- a/drivers/clk/samsung/Kconfig > +++ b/drivers/clk/samsung/Kconfig > @@ -19,6 +19,16 @@ config EXYNOS_AUDSS_CLK_CON > on some Exynos SoC variants. Choose M or Y here if you want to > use audio devices such as I2S, PCM, etc. > > +config EXYNOS_CLK_OUT Perhaps change it EXYNOS_CLKOUT for a better match with the SoC documentation? > + tristate "Samsung Exynos clock output driver" > + depends on COMMON_CLK_SAMSUNG > + default y if ARCH_EXYNOS > + help > + Support for the clock output (XCLKOUT) driver present on some of > + Exynos SoC variants. Usually the XCLKOUT is used to monitor the > + status of the certains clocks from SoC, but it could also be tied to > + other devices as an input clock. > diff --git a/drivers/clk/samsung/Makefile b/drivers/clk/samsung/Makefile > index 1a4e6b787978..4adbf972e9f6 100644 > --- a/drivers/clk/samsung/Makefile > +++ b/drivers/clk/samsung/Makefile > @@ -15,7 +15,7 @@ obj-$(CONFIG_SOC_EXYNOS5420) += clk-exynos5420.o > obj-$(CONFIG_SOC_EXYNOS5420) += clk-exynos5-subcmu.o > obj-$(CONFIG_EXYNOS_ARM64_COMMON_CLK) += clk-exynos5433.o > obj-$(CONFIG_EXYNOS_AUDSS_CLK_CON) += clk-exynos-audss.o > -obj-$(CONFIG_ARCH_EXYNOS) += clk-exynos-clkout.o > +obj-$(CONFIG_EXYNOS_CLK_OUT) += clk-exynos-clkout.o -- Regards, Sylwester
On Thu, Nov 12, 2020 at 03:36:35PM +0100, Sylwester Nawrocki wrote: > On 11/10/20 20:37, Krzysztof Kozlowski wrote: > > The Exynos clock output driver can be built as module (it does not have > > to be part of core init process) for better customization. Adding a > > KConfig entry allows also compile testing for build coverage. > > > > Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org> > > This needs to go through your tree due to dependencies on your previous > patches, so > > Acked-by: Sylwester Nawrocki <s.nawrocki@samsung.com> Yes, thanks. > > > --- > > drivers/clk/samsung/Kconfig | 10 ++++++++++ > > drivers/clk/samsung/Makefile | 2 +- > > drivers/clk/samsung/clk-exynos-clkout.c | 1 + > > 3 files changed, 12 insertions(+), 1 deletion(-) > > > > diff --git a/drivers/clk/samsung/Kconfig b/drivers/clk/samsung/Kconfig > > index 57d4b3f20417..b6b2cb209543 100644 > > --- a/drivers/clk/samsung/Kconfig > > +++ b/drivers/clk/samsung/Kconfig > > @@ -19,6 +19,16 @@ config EXYNOS_AUDSS_CLK_CON > > on some Exynos SoC variants. Choose M or Y here if you want to > > use audio devices such as I2S, PCM, etc. > > > > +config EXYNOS_CLK_OUT > > Perhaps change it EXYNOS_CLKOUT for a better match with the SoC documentation? Sure, I applied it with name fixup. Best regards, Krzysztof
diff --git a/drivers/clk/samsung/Kconfig b/drivers/clk/samsung/Kconfig index 57d4b3f20417..b6b2cb209543 100644 --- a/drivers/clk/samsung/Kconfig +++ b/drivers/clk/samsung/Kconfig @@ -19,6 +19,16 @@ config EXYNOS_AUDSS_CLK_CON on some Exynos SoC variants. Choose M or Y here if you want to use audio devices such as I2S, PCM, etc. +config EXYNOS_CLK_OUT + tristate "Samsung Exynos clock output driver" + depends on COMMON_CLK_SAMSUNG + default y if ARCH_EXYNOS + help + Support for the clock output (XCLKOUT) driver present on some of + Exynos SoC variants. Usually the XCLKOUT is used to monitor the + status of the certains clocks from SoC, but it could also be tied to + other devices as an input clock. + # For S3C24XX platforms, select following symbols: config S3C2410_COMMON_CLK bool "Samsung S3C2410 clock controller support" if COMPILE_TEST diff --git a/drivers/clk/samsung/Makefile b/drivers/clk/samsung/Makefile index 1a4e6b787978..4adbf972e9f6 100644 --- a/drivers/clk/samsung/Makefile +++ b/drivers/clk/samsung/Makefile @@ -15,7 +15,7 @@ obj-$(CONFIG_SOC_EXYNOS5420) += clk-exynos5420.o obj-$(CONFIG_SOC_EXYNOS5420) += clk-exynos5-subcmu.o obj-$(CONFIG_EXYNOS_ARM64_COMMON_CLK) += clk-exynos5433.o obj-$(CONFIG_EXYNOS_AUDSS_CLK_CON) += clk-exynos-audss.o -obj-$(CONFIG_ARCH_EXYNOS) += clk-exynos-clkout.o +obj-$(CONFIG_EXYNOS_CLK_OUT) += clk-exynos-clkout.o obj-$(CONFIG_EXYNOS_ARM64_COMMON_CLK) += clk-exynos7.o obj-$(CONFIG_S3C2410_COMMON_CLK)+= clk-s3c2410.o obj-$(CONFIG_S3C2410_COMMON_DCLK)+= clk-s3c2410-dclk.o diff --git a/drivers/clk/samsung/clk-exynos-clkout.c b/drivers/clk/samsung/clk-exynos-clkout.c index f5f8a956b316..9ec2f40cc400 100644 --- a/drivers/clk/samsung/clk-exynos-clkout.c +++ b/drivers/clk/samsung/clk-exynos-clkout.c @@ -72,6 +72,7 @@ static const struct of_device_id exynos_clkout_ids[] = { .data = &exynos_clkout_exynos5, }, { } }; +MODULE_DEVICE_TABLE(of, exynos_clkout_ids); /* * Device will be instantiated as child of PMU device without its own
The Exynos clock output driver can be built as module (it does not have to be part of core init process) for better customization. Adding a KConfig entry allows also compile testing for build coverage. Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org> --- drivers/clk/samsung/Kconfig | 10 ++++++++++ drivers/clk/samsung/Makefile | 2 +- drivers/clk/samsung/clk-exynos-clkout.c | 1 + 3 files changed, 12 insertions(+), 1 deletion(-)