]> git.karo-electronics.de Git - linux-beck.git/commitdiff
clocksource / arm_arch_timer: Convert to ACPI probing
authorMarc Zyngier <Marc.Zyngier@arm.com>
Mon, 28 Sep 2015 14:49:17 +0000 (15:49 +0100)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Thu, 1 Oct 2015 00:18:39 +0000 (02:18 +0200)
It is now absolutely trivial to convert the arch timer driver to
use ACPI probing, just like its DT counterpart.

Let's enjoy another crapectomy.

Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
Acked-by: Catalin Marinas <catalin.marinas@arm.com>
Acked-by: Thomas Gleixner <tglx@linutronix.de>
Tested-by: Hanjun Guo <hanjun.guo@linaro.org>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
arch/arm64/kernel/time.c
drivers/clocksource/Kconfig
drivers/clocksource/arm_arch_timer.c
include/linux/clocksource.h

index 149151fb42bb1579127100f24a0f91a2124c92e1..819a105d3085fdcfac170ade454cec58bf55301f 100644 (file)
@@ -71,12 +71,6 @@ void __init time_init(void)
 
        tick_setup_hrtimer_broadcast();
 
-       /*
-        * Since ACPI or FDT will only one be available in the system,
-        * we can use acpi_generic_timer_init() here safely
-        */
-       acpi_generic_timer_init();
-
        arch_timer_rate = arch_timer_get_rate();
        if (!arch_timer_rate)
                panic("Unable to initialise architected timer.\n");
index fefedf15be035469eed3875ac6911e4b3f450689..1a9c5dc1e5f9c54de7fc77834de21719ea4258fb 100644 (file)
@@ -131,6 +131,7 @@ config CLKSRC_STM32
 config ARM_ARCH_TIMER
        bool
        select CLKSRC_OF if OF
+       select CLKSRC_ACPI if ACPI
 
 config ARM_ARCH_TIMER_EVTSTREAM
        bool "Support for ARM architected timer event stream generation"
index d6e3e49399dd40558823c8db833f2bf8e258b662..c64d543d64bf69576d9d75ffc54839439c70ea9b 100644 (file)
@@ -864,13 +864,5 @@ static int __init arch_timer_acpi_init(struct acpi_table_header *table)
        arch_timer_init();
        return 0;
 }
-
-/* Initialize all the generic timers presented in GTDT */
-void __init acpi_generic_timer_init(void)
-{
-       if (acpi_disabled)
-               return;
-
-       acpi_table_parse(ACPI_SIG_GTDT, arch_timer_acpi_init);
-}
+CLOCKSOURCE_ACPI_DECLARE(arch_timer, ACPI_SIG_GTDT, arch_timer_acpi_init);
 #endif
index 6eab6abf89b399e0b2568ba487a35b63e69fbf02..116645f746c173ab57eeab1f058404bcfb773d23 100644 (file)
@@ -252,12 +252,6 @@ extern void clocksource_of_init(void);
 static inline void clocksource_of_init(void) {}
 #endif
 
-#ifdef CONFIG_ACPI
-void acpi_generic_timer_init(void);
-#else
-static inline void acpi_generic_timer_init(void) { }
-#endif
-
 #define CLOCKSOURCE_ACPI_DECLARE(name, table_id, fn)           \
        ACPI_DECLARE_PROBE_ENTRY(clksrc, name, table_id, 0, NULL, 0, fn)