]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
clocksource/drivers/gemini: Rename Gemini timer to Faraday
authorLinus Walleij <linus.walleij@linaro.org>
Fri, 24 Mar 2017 21:32:34 +0000 (22:32 +0100)
committerDaniel Lezcano <daniel.lezcano@linaro.org>
Fri, 7 Apr 2017 14:23:08 +0000 (16:23 +0200)
After some research it turns out that the "Gemini" timer is
actually a generic IP block from Faraday Technology named
FTTMR010, so as to not make things too confusing we need to
rename the driver and its symbols to make sense.

The implementation remains the same in this patch but we fix
the copy-paste error in the timer name "nomadik_mtu" as we're
at it.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
drivers/clocksource/Kconfig
drivers/clocksource/Makefile
drivers/clocksource/timer-fttmr010.c [moved from drivers/clocksource/timer-gemini.c with 83% similarity]

index 483f3b1af4fdc940db00077cd73a05164004ea2f..7ca2c2461c9ce8127cf1a512bf07641f90a3d9fa 100644 (file)
@@ -67,15 +67,16 @@ config DW_APB_TIMER_OF
        select DW_APB_TIMER
        select CLKSRC_OF
 
-config GEMINI_TIMER
-       bool "Cortina Gemini timer driver" if COMPILE_TEST
+config FTTMR010_TIMER
+       bool "Faraday Technology timer driver" if COMPILE_TEST
        depends on GENERIC_CLOCKEVENTS
        depends on HAS_IOMEM
        select CLKSRC_MMIO
        select CLKSRC_OF
        select MFD_SYSCON
        help
-         Enables support for the Gemini timer
+         Enables support for the Faraday Technology timer block
+         FTTMR010.
 
 config ROCKCHIP_TIMER
        bool "Rockchip timer driver" if COMPILE_TEST
index d227d1314f14e58681de4e2e6a6ce44189b417da..2b5b56a6f00f7b402f1bba25557cb090456c3c7a 100644 (file)
@@ -17,7 +17,7 @@ obj-$(CONFIG_CLKSRC_MMIO)     += mmio.o
 obj-$(CONFIG_DIGICOLOR_TIMER)  += timer-digicolor.o
 obj-$(CONFIG_DW_APB_TIMER)     += dw_apb_timer.o
 obj-$(CONFIG_DW_APB_TIMER_OF)  += dw_apb_timer_of.o
-obj-$(CONFIG_GEMINI_TIMER)     += timer-gemini.o
+obj-$(CONFIG_FTTMR010_TIMER)   += timer-fttmr010.o
 obj-$(CONFIG_ROCKCHIP_TIMER)      += rockchip_timer.o
 obj-$(CONFIG_CLKSRC_NOMADIK_MTU)       += nomadik-mtu.o
 obj-$(CONFIG_CLKSRC_DBX500_PRCMU)      += clksrc-dbx500-prcmu.o
similarity index 83%
rename from drivers/clocksource/timer-gemini.c
rename to drivers/clocksource/timer-fttmr010.c
index dda27b7bf1a174bdbb6cdb5939c8ecda536a11af..e37ec3d69a7e7fc686d4ca1381d091407e066b5c 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Gemini timer driver
+ * Faraday Technology FTTMR010 timer driver
  * Copyright (C) 2017 Linus Walleij <linus.walleij@linaro.org>
  *
  * Based on a rewrite of arch/arm/mach-gemini/timer.c:
 static unsigned int tick_rate;
 static void __iomem *base;
 
-static u64 notrace gemini_read_sched_clock(void)
+static u64 notrace fttmr010_read_sched_clock(void)
 {
        return readl(base + TIMER3_COUNT);
 }
 
-static int gemini_timer_set_next_event(unsigned long cycles,
+static int fttmr010_timer_set_next_event(unsigned long cycles,
                                       struct clock_event_device *evt)
 {
        u32 cr;
@@ -96,7 +96,7 @@ static int gemini_timer_set_next_event(unsigned long cycles,
        return 0;
 }
 
-static int gemini_timer_shutdown(struct clock_event_device *evt)
+static int fttmr010_timer_shutdown(struct clock_event_device *evt)
 {
        u32 cr;
 
@@ -127,7 +127,7 @@ static int gemini_timer_shutdown(struct clock_event_device *evt)
        return 0;
 }
 
-static int gemini_timer_set_periodic(struct clock_event_device *evt)
+static int fttmr010_timer_set_periodic(struct clock_event_device *evt)
 {
        u32 period = DIV_ROUND_CLOSEST(tick_rate, HZ);
        u32 cr;
@@ -158,35 +158,35 @@ static int gemini_timer_set_periodic(struct clock_event_device *evt)
 }
 
 /* Use TIMER1 as clock event */
-static struct clock_event_device gemini_clockevent = {
+static struct clock_event_device fttmr010_clockevent = {
        .name                   = "TIMER1",
        /* Reasonably fast and accurate clock event */
        .rating                 = 300,
        .shift                  = 32,
        .features               = CLOCK_EVT_FEAT_PERIODIC |
                                  CLOCK_EVT_FEAT_ONESHOT,
-       .set_next_event         = gemini_timer_set_next_event,
-       .set_state_shutdown     = gemini_timer_shutdown,
-       .set_state_periodic     = gemini_timer_set_periodic,
-       .set_state_oneshot      = gemini_timer_shutdown,
-       .tick_resume            = gemini_timer_shutdown,
+       .set_next_event         = fttmr010_timer_set_next_event,
+       .set_state_shutdown     = fttmr010_timer_shutdown,
+       .set_state_periodic     = fttmr010_timer_set_periodic,
+       .set_state_oneshot      = fttmr010_timer_shutdown,
+       .tick_resume            = fttmr010_timer_shutdown,
 };
 
 /*
  * IRQ handler for the timer
  */
-static irqreturn_t gemini_timer_interrupt(int irq, void *dev_id)
+static irqreturn_t fttmr010_timer_interrupt(int irq, void *dev_id)
 {
-       struct clock_event_device *evt = &gemini_clockevent;
+       struct clock_event_device *evt = &fttmr010_clockevent;
 
        evt->event_handler(evt);
        return IRQ_HANDLED;
 }
 
-static struct irqaction gemini_timer_irq = {
-       .name           = "Gemini Timer Tick",
+static struct irqaction fttmr010_timer_irq = {
+       .name           = "Faraday FTTMR010 Timer Tick",
        .flags          = IRQF_TIMER,
-       .handler        = gemini_timer_interrupt,
+       .handler        = fttmr010_timer_interrupt,
 };
 
 static int __init gemini_timer_of_init(struct device_node *np)
@@ -255,9 +255,9 @@ static int __init gemini_timer_of_init(struct device_node *np)
        writel(0, base + TIMER3_MATCH1);
        writel(0, base + TIMER3_MATCH2);
        clocksource_mmio_init(base + TIMER3_COUNT,
-                             "gemini_clocksource", tick_rate,
+                             "fttmr010_clocksource", tick_rate,
                              300, 32, clocksource_mmio_readl_up);
-       sched_clock_register(gemini_read_sched_clock, 32, tick_rate);
+       sched_clock_register(fttmr010_read_sched_clock, 32, tick_rate);
 
        /*
         * Setup clockevent timer (interrupt-driven.)
@@ -266,12 +266,11 @@ static int __init gemini_timer_of_init(struct device_node *np)
        writel(0, base + TIMER1_LOAD);
        writel(0, base + TIMER1_MATCH1);
        writel(0, base + TIMER1_MATCH2);
-       setup_irq(irq, &gemini_timer_irq);
-       gemini_clockevent.cpumask = cpumask_of(0);
-       clockevents_config_and_register(&gemini_clockevent, tick_rate,
+       setup_irq(irq, &fttmr010_timer_irq);
+       fttmr010_clockevent.cpumask = cpumask_of(0);
+       clockevents_config_and_register(&fttmr010_clockevent, tick_rate,
                                        1, 0xffffffff);
 
        return 0;
 }
-CLOCKSOURCE_OF_DECLARE(nomadik_mtu, "cortina,gemini-timer",
-                      gemini_timer_of_init);
+CLOCKSOURCE_OF_DECLARE(gemini, "cortina,gemini-timer", gemini_timer_of_init);