MIPS: VDSO: Avoid use of linux/irqchip/mips-gic.h
authorPaul Burton <paul.burton@imgtec.com>
Sun, 13 Aug 2017 04:36:37 +0000 (21:36 -0700)
committerRalf Baechle <ralf@linux-mips.org>
Mon, 4 Sep 2017 11:53:14 +0000 (13:53 +0200)
Our VDSO code makes use of macros from linux/irqchip/mips-gic.h to
provide offsets to register values, but these are trivial offsets to the
two 32 bit halves of a 64 bit value. Replace use of the macros with zero
(ie. omit adding an offset) and the size of the low 32 bit of the value.
This removes our need for linux/irqchip/mips-gic.h & prepares us for it
to be removed.

Signed-off-by: Paul Burton <paul.burton@imgtec.com>
Acked-by: Marc Zyngier <marc.zyngier@arm.com>
Cc: Jason Cooper <jason@lakedaemon.net>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: linux-mips@linux-mips.org
Patchwork: https://patchwork.linux-mips.org/patch/17047/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
arch/mips/vdso/gettimeofday.c
include/linux/irqchip/mips-gic.h

index fec7835b9de7f61179a4888a83d3040c759b7467..e22b422f282c7a22556ca690413f0dfb83314126 100644 (file)
@@ -11,7 +11,6 @@
 #include "vdso.h"
 
 #include <linux/compiler.h>
-#include <linux/irqchip/mips-gic.h>
 #include <linux/time.h>
 
 #include <asm/clocksource.h>
@@ -125,9 +124,9 @@ static __always_inline u64 read_gic_count(const union mips_vdso_data *data)
        u32 hi, hi2, lo;
 
        do {
-               hi = __raw_readl(gic + GIC_UMV_SH_COUNTER_63_32_OFS);
-               lo = __raw_readl(gic + GIC_UMV_SH_COUNTER_31_00_OFS);
-               hi2 = __raw_readl(gic + GIC_UMV_SH_COUNTER_63_32_OFS);
+               hi = __raw_readl(gic + sizeof(lo));
+               lo = __raw_readl(gic);
+               hi2 = __raw_readl(gic + sizeof(lo));
        } while (hi2 != hi);
 
        return (((u64)hi) << 32) + lo;
index 277d5be03a577ba004da29fe466ba67cb291b99c..6e6c9adea049f71f4a89c760b21f0b04e5d01e19 100644 (file)
@@ -11,8 +11,4 @@
 #include <linux/clocksource.h>
 #include <linux/ioport.h>
 
-/* User Mode Visible Section Register Map */
-#define GIC_UMV_SH_COUNTER_31_00_OFS   0x0000
-#define GIC_UMV_SH_COUNTER_63_32_OFS   0x0004
-
 #endif /* __LINUX_IRQCHIP_MIPS_GIC_H */