Merge git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc
[linux-2.6] / include / asm-m68knommu / coldfire.h
1 /****************************************************************************/
2
3 /*
4  *      coldfire.h -- Motorola ColdFire CPU sepecific defines
5  *
6  *      (C) Copyright 1999-2002, Greg Ungerer (gerg@snapgear.com)
7  *      (C) Copyright 2000, Lineo (www.lineo.com)
8  */
9
10 /****************************************************************************/
11 #ifndef coldfire_h
12 #define coldfire_h
13 /****************************************************************************/
14
15 #include <linux/config.h>
16
17 /*
18  *      Define the processor support peripherals base address.
19  *      This is generally setup by the boards start up code.
20  */
21 #define MCF_MBAR        0x10000000
22 #define MCF_MBAR2       0x80000000
23 #if defined(CONFIG_M520x)
24 #define MCF_IPSBAR      0xFC000000
25 #else
26 #define MCF_IPSBAR      0x40000000
27 #endif
28
29 #if defined(CONFIG_M523x) || defined(CONFIG_M527x) || defined(CONFIG_M528x) || \
30     defined(CONFIG_M520x)
31 #undef MCF_MBAR
32 #define MCF_MBAR        MCF_IPSBAR
33 #endif
34
35 /*
36  *      Define master clock frequency.
37  */
38 #if defined(CONFIG_CLOCK_11MHz)
39 #define MCF_CLK         11289600
40 #elif defined(CONFIG_CLOCK_16MHz)
41 #define MCF_CLK         16000000
42 #elif defined(CONFIG_CLOCK_20MHz)
43 #define MCF_CLK         20000000
44 #elif defined(CONFIG_CLOCK_24MHz)
45 #define MCF_CLK         24000000
46 #elif defined(CONFIG_CLOCK_25MHz)
47 #define MCF_CLK         25000000
48 #elif defined(CONFIG_CLOCK_33MHz)
49 #define MCF_CLK         33000000
50 #elif defined(CONFIG_CLOCK_40MHz)
51 #define MCF_CLK         40000000
52 #elif defined(CONFIG_CLOCK_45MHz)
53 #define MCF_CLK         45000000
54 #elif defined(CONFIG_CLOCK_48MHz)
55 #define MCF_CLK         48000000
56 #elif defined(CONFIG_CLOCK_50MHz)
57 #define MCF_CLK         50000000
58 #elif defined(CONFIG_CLOCK_54MHz)
59 #define MCF_CLK         54000000
60 #elif defined(CONFIG_CLOCK_60MHz)
61 #define MCF_CLK         60000000
62 #elif defined(CONFIG_CLOCK_62_5MHz)
63 #define MCF_CLK         62500000
64 #elif defined(CONFIG_CLOCK_64MHz)
65 #define MCF_CLK         64000000
66 #elif defined(CONFIG_CLOCK_66MHz)
67 #define MCF_CLK         66000000
68 #elif defined(CONFIG_CLOCK_70MHz)
69 #define MCF_CLK         70000000
70 #elif defined(CONFIG_CLOCK_100MHz)
71 #define MCF_CLK         100000000
72 #elif defined(CONFIG_CLOCK_140MHz)
73 #define MCF_CLK         140000000
74 #elif defined(CONFIG_CLOCK_150MHz)
75 #define MCF_CLK         150000000
76 #elif defined(CONFIG_CLOCK_166MHz)
77 #define MCF_CLK         166000000
78 #else
79 #error "Don't know what your ColdFire CPU clock frequency is??"
80 #endif
81
82 /*
83  *      One some ColdFire family members the bus clock (used by internal
84  *      peripherals) is not the same as the CPU clock.
85  */
86 #if defined(CONFIG_M523x) || defined(CONFIG_M5249) || defined(CONFIG_M527x) || \
87     defined(CONFIG_M520x)
88 #define MCF_BUSCLK      (MCF_CLK / 2)
89 #else
90 #define MCF_BUSCLK      MCF_CLK
91 #endif
92
93 /****************************************************************************/
94 #endif  /* coldfire_h */