MIPS: Malta: Use gic_read_count() to read GIC timer
authorAndrew Bresticker <abrestic@chromium.org>
Mon, 20 Oct 2014 19:03:48 +0000 (12:03 -0700)
committerRalf Baechle <ralf@linux-mips.org>
Mon, 24 Nov 2014 06:44:57 +0000 (07:44 +0100)
Instead of reading the GIC registers directly, use the interface the GIC
driver already exposes for reading the global timer.  Also get rid of
the unnecessary #ifdefs.

Signed-off-by: Andrew Bresticker <abrestic@chromium.org>
Cc: Daniel Lezcano <daniel.lezcano@linaro.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Jason Cooper <jason@lakedaemon.net>
Cc: Paul Burton <paul.burton@imgtec.com>
Cc: Qais Yousef <qais.yousef@imgtec.com>
Cc: John Crispin <blogic@openwrt.org>
Cc: linux-mips@linux-mips.org
Cc: linux-kernel@vger.kernel.org
Patchwork: https://patchwork.linux-mips.org/patch/8123/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
arch/mips/mti-malta/malta-time.c

index f6ca8ea4d992a8f70786fe56b8c9328ae5b63d2d..39f3902ed341acc496cf6b81412821b5a52a2372 100644 (file)
@@ -70,9 +70,7 @@ static void __init estimate_frequencies(void)
 {
        unsigned long flags;
        unsigned int count, start;
-#ifdef CONFIG_MIPS_GIC
-       unsigned int giccount = 0, gicstart = 0;
-#endif
+       cycle_t giccount = 0, gicstart = 0;
 
 #if defined(CONFIG_KVM_GUEST) && CONFIG_KVM_GUEST_TIMER_FREQ
        mips_hpt_frequency = CONFIG_KVM_GUEST_TIMER_FREQ * 1000000;
@@ -87,32 +85,26 @@ static void __init estimate_frequencies(void)
 
        /* Initialize counters. */
        start = read_c0_count();
-#ifdef CONFIG_MIPS_GIC
        if (gic_present)
-               GICREAD(GIC_REG(SHARED, GIC_SH_COUNTER_31_00), gicstart);
-#endif
+               gicstart = gic_read_count();
 
        /* Read counter exactly on falling edge of update flag. */
        while (CMOS_READ(RTC_REG_A) & RTC_UIP);
        while (!(CMOS_READ(RTC_REG_A) & RTC_UIP));
 
        count = read_c0_count();
-#ifdef CONFIG_MIPS_GIC
        if (gic_present)
-               GICREAD(GIC_REG(SHARED, GIC_SH_COUNTER_31_00), giccount);
-#endif
+               giccount = gic_read_count();
 
        local_irq_restore(flags);
 
        count -= start;
        mips_hpt_frequency = count;
 
-#ifdef CONFIG_MIPS_GIC
        if (gic_present) {
                giccount -= gicstart;
                gic_frequency = giccount;
        }
-#endif
 }
 
 void read_persistent_clock(struct timespec *ts)