Skip to contentSkip to conversation

ARM: ks-8695: merge the timer header into the timer driver

PATCH New Linus Walleij 4 participants 5 messages Aug 29, 2012 – Sep 8, 2012

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

PATCH 1/4 ARM: ks-8695: merge the timer header into the timer driver

This <mach/regs-timer.h> is broadcasted in the entire kernel for no good reason, since it's only used by the timer driver. Merge it into the driver.

---
 arch/arm/mach-ks8695/include/mach/regs-timer.h |   40 ------------------------
 arch/arm/mach-ks8695/time.c                    |   21 ++++++++++++-
 2 files changed, 20 insertions(+), 41 deletions(-)
 delete mode 100644 arch/arm/mach-ks8695/include/mach/regs-timer.h
arch/arm/mach-ks8695/include/mach/regs-timer.h deleted +0 -40
deleted file mode 100644
index e620cda..0000000
@@ -1,40 +0,0 @@
-/*
- * arch/arm/mach-ks8695/include/mach/regs-timer.h
- *
- * Copyright (C) 2006 Ben Dooks <[email protected]>
- * Copyright (C) 2006 Simtec Electronics
- *
- * KS8695 - Timer registers and bit definitions.
- *
- * This file is licensed under  the terms of the GNU General Public
- * License version 2. This program is licensed "as is" without any
- * warranty of any kind, whether express or implied.
- */
-
-#ifndef KS8695_TIMER_H
-#define KS8695_TIMER_H
-
-#define KS8695_TMR_OFFSET	(0xF0000 + 0xE400)
-#define KS8695_TMR_VA		(KS8695_IO_VA + KS8695_TMR_OFFSET)
-#define KS8695_TMR_PA		(KS8695_IO_PA + KS8695_TMR_OFFSET)
-
-
-/*
- * Timer registers
- */
-#define KS8695_TMCON		(0x00)		/* Timer Control Register */
-#define KS8695_T1TC		(0x04)		/* Timer 1 Timeout Count Register */
-#define KS8695_T0TC		(0x08)		/* Timer 0 Timeout Count Register */
-#define KS8695_T1PD		(0x0C)		/* Timer 1 Pulse Count Register */
-#define KS8695_T0PD		(0x10)		/* Timer 0 Pulse Count Register */
-
-
-/* Timer Control Register */
-#define TMCON_T1EN		(1 << 1)	/* Timer 1 Enable */
-#define TMCON_T0EN		(1 << 0)	/* Timer 0 Enable */
-
-/* Timer0 Timeout Counter Register */
-#define T0TC_WATCHDOG		(0xff)		/* Enable watchdog mode */
-
-
-#endif
arch/arm/mach-ks8695/time.c +20 -1
index ec783a3..6427b7c 100644
@@ -29,11 +29,30 @@
 #include <asm/mach/time.h>
 #include <asm/system_misc.h>
 
-#include <mach/regs-timer.h>
 #include <mach/regs-irq.h>
 
 #include "generic.h"
 
+#define KS8695_TMR_OFFSET	(0xF0000 + 0xE400)
+#define KS8695_TMR_VA		(KS8695_IO_VA + KS8695_TMR_OFFSET)
+#define KS8695_TMR_PA		(KS8695_IO_PA + KS8695_TMR_OFFSET)
+
+/*
+ * Timer registers
+ */
+#define KS8695_TMCON		(0x00)		/* Timer Control Register */
+#define KS8695_T1TC		(0x04)		/* Timer 1 Timeout Count Register */
+#define KS8695_T0TC		(0x08)		/* Timer 0 Timeout Count Register */
+#define KS8695_T1PD		(0x0C)		/* Timer 1 Pulse Count Register */
+#define KS8695_T0PD		(0x10)		/* Timer 0 Pulse Count Register */
+
+/* Timer Control Register */
+#define TMCON_T1EN		(1 << 1)	/* Timer 1 Enable */
+#define TMCON_T0EN		(1 << 0)	/* Timer 0 Enable */
+
+/* Timer0 Timeout Counter Register */
+#define T0TC_WATCHDOG		(0xff)		/* Enable watchdog mode */
+
 /*
  * Returns number of ms since last clock interrupt.  Note that interrupts
  * will have been disabled by do_gettimeoffset()
Signature · 1 line
1.7.7.6
#1 lore raw

PATCH 1/4 ARM: ks-8695: merge the timer header into the timer driver

Quoted 5 lines · Linus Walleij

This <mach/regs-timer.h> is broadcasted in the entire kernel for no good reason, since it's only used by the timer driver. Merge it into the driver.

Quoted 89 lines
---
  arch/arm/mach-ks8695/include/mach/regs-timer.h |   40 ------------------------
  arch/arm/mach-ks8695/time.c                    |   21 ++++++++++++-
  2 files changed, 20 insertions(+), 41 deletions(-)

delete mode 100644 arch/arm/mach-ks8695/include/mach/regs-timer.h

arch/arm/mach-ks8695/include/mach/regs-timer.h deleted +0 -40
deleted file mode 100644
index e620cda..0000000
@@ -1,40 +0,0 @@
-/*
- * arch/arm/mach-ks8695/include/mach/regs-timer.h
- *
- * Copyright (C) 2006 Ben Dooks <[email protected]>
- * Copyright (C) 2006 Simtec Electronics
- *
- * KS8695 - Timer registers and bit definitions.
- *
- * This file is licensed under  the terms of the GNU General Public
- * License version 2. This program is licensed "as is" without any
- * warranty of any kind, whether express or implied.
- */
-
-#ifndef KS8695_TIMER_H
-#define KS8695_TIMER_H
-
-#define KS8695_TMR_OFFSET	(0xF0000 + 0xE400)
-#define KS8695_TMR_VA		(KS8695_IO_VA + KS8695_TMR_OFFSET)
-#define KS8695_TMR_PA		(KS8695_IO_PA + KS8695_TMR_OFFSET)
-
-
-/*
- * Timer registers
- */
-#define KS8695_TMCON		(0x00)		/* Timer Control Register */
-#define KS8695_T1TC		(0x04)		/* Timer 1 Timeout Count Register */
-#define KS8695_T0TC		(0x08)		/* Timer 0 Timeout Count Register */
-#define KS8695_T1PD		(0x0C)		/* Timer 1 Pulse Count Register */
-#define KS8695_T0PD		(0x10)		/* Timer 0 Pulse Count Register */
-
-
-/* Timer Control Register */
-#define TMCON_T1EN		(1 << 1)	/* Timer 1 Enable */
-#define TMCON_T0EN		(1 << 0)	/* Timer 0 Enable */
-
-/* Timer0 Timeout Counter Register */
-#define T0TC_WATCHDOG		(0xff)		/* Enable watchdog mode */
-
-
-#endif
arch/arm/mach-ks8695/time.c +20 -1
index ec783a3..6427b7c 100644
@@ -29,11 +29,30 @@
  #include <asm/mach/time.h>
  #include <asm/system_misc.h>
 
-#include <mach/regs-timer.h>
  #include <mach/regs-irq.h>
 
  #include "generic.h"
 
+#define KS8695_TMR_OFFSET	(0xF0000 + 0xE400)
+#define KS8695_TMR_VA		(KS8695_IO_VA + KS8695_TMR_OFFSET)
+#define KS8695_TMR_PA		(KS8695_IO_PA + KS8695_TMR_OFFSET)
+
+/*
+ * Timer registers
+ */
+#define KS8695_TMCON		(0x00)		/* Timer Control Register */
+#define KS8695_T1TC		(0x04)		/* Timer 1 Timeout Count Register */
+#define KS8695_T0TC		(0x08)		/* Timer 0 Timeout Count Register */
+#define KS8695_T1PD		(0x0C)		/* Timer 1 Pulse Count Register */
+#define KS8695_T0PD		(0x10)		/* Timer 0 Pulse Count Register */
+
+/* Timer Control Register */
+#define TMCON_T1EN		(1 << 1)	/* Timer 1 Enable */
+#define TMCON_T0EN		(1 << 0)	/* Timer 0 Enable */
+
+/* Timer0 Timeout Counter Register */
+#define T0TC_WATCHDOG		(0xff)		/* Enable watchdog mode */
+
  /*
   * Returns number of ms since last clock interrupt.  Note that interrupts
   * will have been disabled by do_gettimeoffset()
Signature · 5 lines
------------------------------------------------------------------------
Greg Ungerer  --  Principal Engineer        EMAIL:     gerg at snapgear.com
SnapGear Group, McAfee                      PHONE:       +61 7 3435 2888
8 Gardner Close,                            FAX:         +61 7 3891 3630
Milton, QLD, 4064, Australia                WEB: http://www.SnapGear.com
#2 lore raw

PATCH 1/4 ARM: ks-8695: merge the timer header into the timer driver

In reply to Linus Walleij

arch/arm/mach-ks8695/time.c line 38

Quoted 3 lines · Linus Walleij
arch/arm/mach-ks8695/time.c +3 -0
+#define KS8695_TMR_OFFSET      (0xF0000 + 0xE400)
+#define KS8695_TMR_VA          (KS8695_IO_VA + KS8695_TMR_OFFSET)
+#define KS8695_TMR_PA          (KS8695_IO_PA + KS8695_TMR_OFFSET)

I'm not too happy about KS8695_TMR_VA moving into a device driver, but aside from that the patch looks ok to me. Apparently, the gpio, ethernet, serial and watchdog drivers for this platform already do it like this anyway.

ARnd

#3 lore raw

PATCH 1/4 ARM: ks-8695: merge the timer header into the timer driver

In reply to Linus Walleij
Quoted 5 lines · Linus Walleij

This <mach/regs-timer.h> is broadcasted in the entire kernel for no good reason, since it's only used by the timer driver. Merge it into the driver.

Actually, it's also included in the watchdog timer that is only enabled on the acs5k defconfigs today, not on the main ks8695 one :(

drivers/watchdog/ks8695_wdt.c:27:29: fatal error: mach/regs-timer.h:
No such file or directory

-Olof

#4 lore raw

PATCH 1/4 ARM: ks-8695: merge the timer header into the timer driver

Quoted 11 lines · Olof Johansson
Quoted 5 lines

This <mach/regs-timer.h> is broadcasted in the entire kernel for no good reason, since it's only used by the timer driver. Merge it into the driver.

Actually, it's also included in the watchdog timer that is only enabled on the acs5k defconfigs today, not on the main ks8695 one :(

drivers/watchdog/ks8695_wdt.c:27:29: fatal error: mach/regs-timer.h:
No such file or directory

OK I'll fix pronto.

Yours,
Linus Walleij