ARC: clockevent: Prepare for DT based probe
authorNoam Camus <noamc@ezchip.com>
Thu, 14 Jan 2016 06:50:08 +0000 (12:20 +0530)
committerVineet Gupta <vgupta@synopsys.com>
Mon, 9 May 2016 04:02:29 +0000 (09:32 +0530)
 - call clocksource_probe()
 - This in turns needs of_clk_init() to be called earlier

Cc: Daniel Lezcano <daniel.lezcano@linaro.org>
Signed-off-by: Noam Camus <noamc@ezchip.com>
[vgupta: broken off from a bigger patch]
Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
arch/arc/Kconfig
arch/arc/kernel/setup.c
arch/arc/kernel/time.c

index a8767430df7d6012463c8a34366d251496d15364..ae3943435abf0853d69b27c8674643cf4ed4f3c7 100644 (file)
@@ -10,8 +10,9 @@ config ARC
        def_bool y
        select ARCH_SUPPORTS_ATOMIC_RMW if ARC_HAS_LLSC
        select BUILDTIME_EXTABLE_SORT
-       select COMMON_CLK
+       select CLKSRC_OF
        select CLONE_BACKWARDS
+       select COMMON_CLK
        select GENERIC_ATOMIC64
        select GENERIC_CLOCKEVENTS
        select GENERIC_FIND_FIRST_BIT
index 151acf0c9383fd2ea187b6d9beb3e3261a4e7306..507ec523112af767eae95d98548a9e3b85a60f71 100644 (file)
@@ -13,7 +13,6 @@
 #include <linux/console.h>
 #include <linux/module.h>
 #include <linux/cpu.h>
-#include <linux/clk-provider.h>
 #include <linux/of_fdt.h>
 #include <linux/of_platform.h>
 #include <linux/cache.h>
@@ -444,7 +443,6 @@ void __init setup_arch(char **cmdline_p)
 
 static int __init customize_machine(void)
 {
-       of_clk_init(NULL);
        /*
         * Traverses flattened DeviceTree - registering platform devices
         * (if any) complete with their resources
index e97be743d47b3af275528b3d6e02ce500735368f..848353a27ac82b3c48e4b65e4870c5818e1e504d 100644 (file)
@@ -34,6 +34,8 @@
 #include <linux/kernel.h>
 #include <linux/time.h>
 #include <linux/init.h>
+#include <linux/clk.h>
+#include <linux/clk-provider.h>
 #include <linux/clocksource.h>
 #include <linux/clockchips.h>
 #include <linux/cpu.h>
@@ -301,6 +303,9 @@ static void __init arc_clockevent_setup(void)
  */
 void __init time_init(void)
 {
+       of_clk_init(NULL);
+       clocksource_probe();
+
        /*
         * sets up the timekeeping free-flowing counter which also returns
         * whether the counter is usable as clocksource