aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorGreg Ungerer <gerg@snapgear.com>2006-06-25 20:33:10 -0400
committerLinus Torvalds <torvalds@g5.osdl.org>2006-06-25 20:43:33 -0400
commit0b7ac8e479f311f8ef15fbea3f849dded9f3ccd9 (patch)
treed84b81667b7db390d704137b40903e5079f05e53 /include
parentc88b36e2c828c78c51e90002351f9d9068b75dec (diff)
[PATCH] m68knommu: read/write register access for ColdFire core timer
Modify the m68knommu/ColdFire core timer code to use register offsets with raw_read/raw_write access, instead of a mapped struct. Signed-off-by: Greg Ungerer <gerg@uclinux.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'include')
-rw-r--r--include/asm-m68knommu/mcftimer.h30
1 files changed, 13 insertions, 17 deletions
diff --git a/include/asm-m68knommu/mcftimer.h b/include/asm-m68knommu/mcftimer.h
index 68bf33ac10d1..6f4d796e03db 100644
--- a/include/asm-m68knommu/mcftimer.h
+++ b/include/asm-m68knommu/mcftimer.h
@@ -3,7 +3,7 @@
3/* 3/*
4 * mcftimer.h -- ColdFire internal TIMER support defines. 4 * mcftimer.h -- ColdFire internal TIMER support defines.
5 * 5 *
6 * (C) Copyright 1999-2002, Greg Ungerer (gerg@snapgear.com) 6 * (C) Copyright 1999-2006, Greg Ungerer <gerg@snapgear.com>
7 * (C) Copyright 2000, Lineo Inc. (www.lineo.com) 7 * (C) Copyright 2000, Lineo Inc. (www.lineo.com)
8 */ 8 */
9 9
@@ -27,6 +27,11 @@
27#elif defined(CONFIG_M5249) || defined(CONFIG_M5307) || defined(CONFIG_M5407) 27#elif defined(CONFIG_M5249) || defined(CONFIG_M5307) || defined(CONFIG_M5407)
28#define MCFTIMER_BASE1 0x140 /* Base address of TIMER1 */ 28#define MCFTIMER_BASE1 0x140 /* Base address of TIMER1 */
29#define MCFTIMER_BASE2 0x180 /* Base address of TIMER2 */ 29#define MCFTIMER_BASE2 0x180 /* Base address of TIMER2 */
30#elif defined(CONFIG_M532x)
31#define MCFTIMER_BASE1 0xfc070000 /* Base address of TIMER1 */
32#define MCFTIMER_BASE2 0xfc074000 /* Base address of TIMER2 */
33#define MCFTIMER_BASE3 0xfc078000 /* Base address of TIMER3 */
34#define MCFTIMER_BASE4 0xfc07c000 /* Base address of TIMER4 */
30#endif 35#endif
31 36
32 37
@@ -34,23 +39,14 @@
34 * Define the TIMER register set addresses. 39 * Define the TIMER register set addresses.
35 */ 40 */
36#define MCFTIMER_TMR 0x00 /* Timer Mode reg (r/w) */ 41#define MCFTIMER_TMR 0x00 /* Timer Mode reg (r/w) */
37#define MCFTIMER_TRR 0x02 /* Timer Reference (r/w) */ 42#define MCFTIMER_TRR 0x04 /* Timer Reference (r/w) */
38#define MCFTIMER_TCR 0x04 /* Timer Capture reg (r/w) */ 43#define MCFTIMER_TCR 0x08 /* Timer Capture reg (r/w) */
39#define MCFTIMER_TCN 0x06 /* Timer Counter reg (r/w) */ 44#define MCFTIMER_TCN 0x0C /* Timer Counter reg (r/w) */
45#if defined(CONFIG_M532x)
46#define MCFTIMER_TER 0x03 /* Timer Event reg (r/w) */
47#else
40#define MCFTIMER_TER 0x11 /* Timer Event reg (r/w) */ 48#define MCFTIMER_TER 0x11 /* Timer Event reg (r/w) */
41 49#endif
42struct mcftimer {
43 unsigned short tmr; /* Timer Mode reg (r/w) */
44 unsigned short reserved1;
45 unsigned short trr; /* Timer Reference (r/w) */
46 unsigned short reserved2;
47 unsigned short tcr; /* Timer Capture reg (r/w) */
48 unsigned short reserved3;
49 unsigned short tcn; /* Timer Counter reg (r/w) */
50 unsigned short reserved4;
51 unsigned char reserved5;
52 unsigned char ter; /* Timer Event reg (r/w) */
53} __attribute__((packed));
54 50
55/* 51/*
56 * Bit definitions for the Timer Mode Register (TMR). 52 * Bit definitions for the Timer Mode Register (TMR).