linux/drivers/clk/samsung
Marek Szyprowski 5c4a9129b8 clk/samsung: Use CLK_OF_DECLARE_DRIVER initialization method for CLKOUT
The Exynos PMU node is an interrupt, clock and PMU (Power Management Unit)
controller, and these functionalities are supported by different drivers
that matches the same compatible strings.

Since commit 989eafd0b6 ("clk: core: Avoid double initialization of
clocks") the OF core flags clock controllers registered with the
CLK_OF_DECLARE() macro as OF_POPULATED, so platform devices with the same
compatible string will not be registered.

This prevents the PMU platform device to be created, so the Exynos PMU
driver is never probed. This breaks (among other things) Suspend-to-RAM.

Fix this by changing CLKOUT driver initialization method to
CLK_OF_DECLARE_DRIVER(), which doesn't clear the OF_POPULATED flag, so
later a platform device is created and the Exynos PMU platform driver
can be be probed properly.

Fixes: 989eafd0b6 ("clk: core: Avoid double initialization of clocks")
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Reviewed-by: Javier Martinez Canillas <javier@osg.samsung.com>
Reviewed-by: Chanwoo Choi <cw00.choi@samsung.com>
Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
2016-10-27 17:26:54 -07:00
..
Kconfig clk: samsung: Allow modular build of the Audio Subsystem CLKCON driver 2016-07-13 14:59:53 -07:00
Makefile clk: samsung: Allow modular build of the Audio Subsystem CLKCON driver 2016-07-13 14:59:53 -07:00
clk-cpu.c clk: samsung: cpu: prepare for adding Exynos5433 CPU clocks 2016-06-02 11:18:20 +02:00
clk-cpu.h clk: samsung: cpu: prepare for adding Exynos5433 CPU clocks 2016-06-02 11:18:20 +02:00
clk-exynos-audss.c clk: samsung: clk-exynos-audss: Fix module autoload 2016-10-17 15:21:48 -07:00
clk-exynos-clkout.c clk/samsung: Use CLK_OF_DECLARE_DRIVER initialization method for CLKOUT 2016-10-27 17:26:54 -07:00
clk-exynos4.c clk: samsung: exynos4: fixup reg access on be 2016-06-10 11:58:42 +02:00
clk-exynos7.c clk: samsung: exynos7: Constify all clock initializers 2016-06-02 11:18:09 +02:00
clk-exynos3250.c clk: samsung: Suppress unbinding to prevent theoretical attacks 2016-06-02 11:18:18 +02:00
clk-exynos4415.c clk: samsung: exynos4415: Move PLL rates data to init section 2016-06-02 11:18:04 +02:00
clk-exynos5250.c clk: samsung: exynos5250: Move sleep init function to init section 2016-06-02 11:18:12 +02:00
clk-exynos5260.c clk: samsung: exynos5260: Move struct samsung_cmu_info to init section 2016-09-09 17:34:34 +02:00
clk-exynos5260.h clk/exynos5260: add clock file for exynos5260 2014-05-14 19:16:55 +02:00
clk-exynos5410.c clk: samsung: Add support for EPLL on exynos5410 2016-09-09 17:35:13 +02:00
clk-exynos5420.c clk: samsung: exynos5420: Add clocks for CMU_CDREX domain 2016-09-09 17:35:08 +02:00
clk-exynos5433.c clk: exynos5433: remove CLK_IGNORE_UNUSED flag from SPI clocks 2016-07-13 14:55:56 -07:00
clk-exynos5440.c clk: samsung: Use common registration function for pll2550x 2016-09-09 17:35:10 +02:00
clk-pll.c clk: samsung: Add support for EPLL on exynos5410 2016-09-09 17:35:13 +02:00
clk-pll.h clk: samsung: Add support for EPLL on exynos5410 2016-09-09 17:35:13 +02:00
clk-s3c64xx.c clk: samsung: Remove useless check for return value of samsung_clk_init 2016-06-02 11:17:57 +02:00
clk-s3c2410-dclk.c clk: samsung: Suppress unbinding to prevent theoretical attacks 2016-06-02 11:18:18 +02:00
clk-s3c2410.c clk: samsung: Remove useless check for return value of samsung_clk_init 2016-06-02 11:17:57 +02:00
clk-s3c2412.c clk: samsung: Remove useless check for return value of samsung_clk_init 2016-06-02 11:17:57 +02:00
clk-s3c2443.c clk: samsung: Remove useless check for return value of samsung_clk_init 2016-06-02 11:17:57 +02:00
clk-s5pv210-audss.c clk: samsung: make clk-s5pv210-audss explicitly non-modular 2016-07-13 14:57:59 -07:00
clk-s5pv210.c clk: samsung: Remove useless check for return value of samsung_clk_init 2016-06-02 11:17:57 +02:00
clk.c clk: samsung: exynos5433: prepare for adding CPU clocks 2016-06-02 11:18:19 +02:00
clk.h clk: samsung: exynos5433: prepare for adding CPU clocks 2016-06-02 11:18:19 +02:00