aboutsummaryrefslogtreecommitdiffstats
path: root/arch/m68k/Kconfig.cpu
diff options
context:
space:
mode:
authorGeert Uytterhoeven <geert@linux-m68k.org>2011-12-26 14:32:02 -0500
committerGreg Ungerer <gerg@uclinux.org>2011-12-29 19:20:49 -0500
commitad8f955daf77d303f0ee08d2acab30d3886cbd2b (patch)
tree325095c2c9411c3ca753be57e83ef31d4979d57b /arch/m68k/Kconfig.cpu
parentfbe3364ac4fa82caa585f98e4a525946d2cc21f4 (diff)
m68k/Kconfig: Separate classic m68k and coldfire early
While you can build multiplatform kernels for machines with classic m68k processors, you cannot mix support for classic m68k and coldfire processors. To avoid such hybrid kernels, introduce CONFIG_M68KCLASSIC as an antipole for CONFIG_COLDFIRE, and make all specific processor support depend on one of them. All classic m68k machine support also needs to depend on this. The defaults (CONFIG_M68KCLASSIC if MMU, CONFIG_COLDFIRE if !MMU) are chosen such to make most of the existing configs build and work. Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org> Signed-off-by: Greg Ungerer <gerg@uclinux.org>
Diffstat (limited to 'arch/m68k/Kconfig.cpu')
-rw-r--r--arch/m68k/Kconfig.cpu66
1 files changed, 38 insertions, 28 deletions
diff --git a/arch/m68k/Kconfig.cpu b/arch/m68k/Kconfig.cpu
index 5ae1d63ef5e9..f10a5d0f0774 100644
--- a/arch/m68k/Kconfig.cpu
+++ b/arch/m68k/Kconfig.cpu
@@ -1,5 +1,37 @@
1comment "Processor Type" 1comment "Processor Type"
2 2
3choice
4 prompt "CPU family support"
5 default M68KCLASSIC if MMU
6 default COLDFIRE if !MMU
7 help
8 The Freescale (was Motorola) M68K family of processors implements
9 the full 68000 processor instruction set.
10 The Freescale ColdFire family of processors is a modern derivitive
11 of the 68000 processor family. They are mainly targeted at embedded
12 applications, and are all System-On-Chip (SOC) devices, as opposed
13 to stand alone CPUs. They implement a subset of the original 68000
14 processor instruction set.
15 If you anticipate running this kernel on a computer with a classic
16 MC68xxx processor, select M68KCLASSIC.
17 If you anticipate running this kernel on a computer with a ColdFire
18 processor, select COLDFIRE.
19
20config M68KCLASSIC
21 bool "Classic M68K CPU family support"
22
23config COLDFIRE
24 bool "Coldfire CPU family support"
25 select GENERIC_GPIO
26 select ARCH_REQUIRE_GPIOLIB
27 select CPU_HAS_NO_BITFIELDS
28 select CPU_HAS_NO_MULDIV64
29 select GENERIC_CSUM
30
31endchoice
32
33if M68KCLASSIC
34
3config M68000 35config M68000
4 bool 36 bool
5 select CPU_HAS_NO_BITFIELDS 37 select CPU_HAS_NO_BITFIELDS
@@ -20,20 +52,6 @@ config MCPU32
20 based on the 68020 processor. For the most part it is used in 52 based on the 68020 processor. For the most part it is used in
21 System-On-Chip parts, and does not contain a paging MMU. 53 System-On-Chip parts, and does not contain a paging MMU.
22 54
23config COLDFIRE
24 bool
25 select GENERIC_GPIO
26 select ARCH_REQUIRE_GPIOLIB
27 select CPU_HAS_NO_BITFIELDS
28 select CPU_HAS_NO_MULDIV64
29 select GENERIC_CSUM
30 help
31 The Freescale ColdFire family of processors is a modern derivitive
32 of the 68000 processor family. They are mainly targeted at embedded
33 applications, and are all System-On-Chip (SOC) devices, as opposed
34 to stand alone CPUs. They implement a subset of the original 68000
35 processor instruction set.
36
37config M68020 55config M68020
38 bool "68020 support" 56 bool "68020 support"
39 depends on MMU 57 depends on MMU
@@ -103,10 +121,13 @@ config M68360
103 help 121 help
104 Motorola 68360 processor support. 122 Motorola 68360 processor support.
105 123
124endif # M68KCLASSIC
125
126if COLDFIRE
127
106config M5206 128config M5206
107 bool "MCF5206" 129 bool "MCF5206"
108 depends on !MMU 130 depends on !MMU
109 select COLDFIRE
110 select COLDFIRE_SW_A7 131 select COLDFIRE_SW_A7
111 select HAVE_MBAR 132 select HAVE_MBAR
112 help 133 help
@@ -115,7 +136,6 @@ config M5206
115config M5206e 136config M5206e
116 bool "MCF5206e" 137 bool "MCF5206e"
117 depends on !MMU 138 depends on !MMU
118 select COLDFIRE
119 select COLDFIRE_SW_A7 139 select COLDFIRE_SW_A7
120 select HAVE_MBAR 140 select HAVE_MBAR
121 help 141 help
@@ -124,7 +144,6 @@ config M5206e
124config M520x 144config M520x
125 bool "MCF520x" 145 bool "MCF520x"
126 depends on !MMU 146 depends on !MMU
127 select COLDFIRE
128 select GENERIC_CLOCKEVENTS 147 select GENERIC_CLOCKEVENTS
129 select HAVE_CACHE_SPLIT 148 select HAVE_CACHE_SPLIT
130 help 149 help
@@ -133,7 +152,6 @@ config M520x
133config M523x 152config M523x
134 bool "MCF523x" 153 bool "MCF523x"
135 depends on !MMU 154 depends on !MMU
136 select COLDFIRE
137 select GENERIC_CLOCKEVENTS 155 select GENERIC_CLOCKEVENTS
138 select HAVE_CACHE_SPLIT 156 select HAVE_CACHE_SPLIT
139 select HAVE_IPSBAR 157 select HAVE_IPSBAR
@@ -143,7 +161,6 @@ config M523x
143config M5249 161config M5249
144 bool "MCF5249" 162 bool "MCF5249"
145 depends on !MMU 163 depends on !MMU
146 select COLDFIRE
147 select COLDFIRE_SW_A7 164 select COLDFIRE_SW_A7
148 select HAVE_MBAR 165 select HAVE_MBAR
149 help 166 help
@@ -155,7 +172,6 @@ config M527x
155config M5271 172config M5271
156 bool "MCF5271" 173 bool "MCF5271"
157 depends on !MMU 174 depends on !MMU
158 select COLDFIRE
159 select M527x 175 select M527x
160 select HAVE_CACHE_SPLIT 176 select HAVE_CACHE_SPLIT
161 select HAVE_IPSBAR 177 select HAVE_IPSBAR
@@ -166,7 +182,6 @@ config M5271
166config M5272 182config M5272
167 bool "MCF5272" 183 bool "MCF5272"
168 depends on !MMU 184 depends on !MMU
169 select COLDFIRE
170 select COLDFIRE_SW_A7 185 select COLDFIRE_SW_A7
171 select HAVE_MBAR 186 select HAVE_MBAR
172 help 187 help
@@ -175,7 +190,6 @@ config M5272
175config M5275 190config M5275
176 bool "MCF5275" 191 bool "MCF5275"
177 depends on !MMU 192 depends on !MMU
178 select COLDFIRE
179 select M527x 193 select M527x
180 select HAVE_CACHE_SPLIT 194 select HAVE_CACHE_SPLIT
181 select HAVE_IPSBAR 195 select HAVE_IPSBAR
@@ -186,7 +200,6 @@ config M5275
186config M528x 200config M528x
187 bool "MCF528x" 201 bool "MCF528x"
188 depends on !MMU 202 depends on !MMU
189 select COLDFIRE
190 select GENERIC_CLOCKEVENTS 203 select GENERIC_CLOCKEVENTS
191 select HAVE_CACHE_SPLIT 204 select HAVE_CACHE_SPLIT
192 select HAVE_IPSBAR 205 select HAVE_IPSBAR
@@ -196,7 +209,6 @@ config M528x
196config M5307 209config M5307
197 bool "MCF5307" 210 bool "MCF5307"
198 depends on !MMU 211 depends on !MMU
199 select COLDFIRE
200 select COLDFIRE_SW_A7 212 select COLDFIRE_SW_A7
201 select HAVE_CACHE_CB 213 select HAVE_CACHE_CB
202 select HAVE_MBAR 214 select HAVE_MBAR
@@ -206,7 +218,6 @@ config M5307
206config M532x 218config M532x
207 bool "MCF532x" 219 bool "MCF532x"
208 depends on !MMU 220 depends on !MMU
209 select COLDFIRE
210 select HAVE_CACHE_CB 221 select HAVE_CACHE_CB
211 help 222 help
212 Freescale (Motorola) ColdFire 532x processor support. 223 Freescale (Motorola) ColdFire 532x processor support.
@@ -214,7 +225,6 @@ config M532x
214config M5407 225config M5407
215 bool "MCF5407" 226 bool "MCF5407"
216 depends on !MMU 227 depends on !MMU
217 select COLDFIRE
218 select COLDFIRE_SW_A7 228 select COLDFIRE_SW_A7
219 select HAVE_CACHE_CB 229 select HAVE_CACHE_CB
220 select HAVE_MBAR 230 select HAVE_MBAR
@@ -227,7 +237,6 @@ config M54xx
227config M547x 237config M547x
228 bool "MCF547x" 238 bool "MCF547x"
229 depends on !MMU 239 depends on !MMU
230 select COLDFIRE
231 select M54xx 240 select M54xx
232 select HAVE_CACHE_CB 241 select HAVE_CACHE_CB
233 select HAVE_MBAR 242 select HAVE_MBAR
@@ -237,13 +246,14 @@ config M547x
237config M548x 246config M548x
238 bool "MCF548x" 247 bool "MCF548x"
239 depends on !MMU 248 depends on !MMU
240 select COLDFIRE
241 select M54xx 249 select M54xx
242 select HAVE_CACHE_CB 250 select HAVE_CACHE_CB
243 select HAVE_MBAR 251 select HAVE_MBAR
244 help 252 help
245 Freescale ColdFire 5480/5481/5482/5483/5484/5485 processor support. 253 Freescale ColdFire 5480/5481/5482/5483/5484/5485 processor support.
246 254
255endif # COLDFIRE
256
247 257
248comment "Processor Specific Options" 258comment "Processor Specific Options"
249 259