aboutsummaryrefslogtreecommitdiffstats
path: root/arch/m68k
diff options
context:
space:
mode:
authorGreg Ungerer <gerg@uclinux.org>2011-06-20 01:49:09 -0400
committerGreg Ungerer <gerg@uclinux.org>2011-10-18 00:22:25 -0400
commit0e152d80507b75c00aac60f2ffc586360687cd52 (patch)
tree786a8ab6c69b15dfbc6b34072c7e66f7339a4b9c /arch/m68k
parent89127ed381fb244aa51c1a74ed695a1f3578ef7d (diff)
m68k: reorganize Kconfig options to improve mmu/non-mmu selections
The current mmu and non-mmu Kconfig files can be merged to form a more general selection of options. The current break up of options is due to the simple brute force merge from the m68k and m68knommu arch directories. Many of the options are not at all specific to having the MMU enabled or not. They are actually associated with a particular CPU type or platform type. Ultimately as we support all processors with the MMU disabled we need many of these options to be selectable without the MMU option enabled. And likewise some of the ColdFire processors, which currently are only supported with the MMU disabled, do have MMU hardware, and will need to have options selected on CPU type, not MMU disabled. This patch removes the old mmu and non-mmu Kconfigs and instead breaks up the configuration into four areas: cpu, machine, bus, devices. The Kconfig.cpu lists all the options associated with selecting a CPU, and includes options specific to each CPU type as well. Kconfig.machine lists all options associated with selecting a machine type. Almost always the machines selectable is restricted by the chosen CPU. Kconfig.bus contains options associated with selecting bus types on the various machine types. That includes PCI bus, PCMCIA bus, etc. Kconfig.devices contains options for drivers and driver associated options. Signed-off-by: Greg Ungerer <gerg@uclinux.org>
Diffstat (limited to 'arch/m68k')
-rw-r--r--arch/m68k/Kconfig195
-rw-r--r--arch/m68k/Kconfig.bus55
-rw-r--r--arch/m68k/Kconfig.cpu429
-rw-r--r--arch/m68k/Kconfig.devices171
-rw-r--r--arch/m68k/Kconfig.machine (renamed from arch/m68k/Kconfig.nommu)543
-rw-r--r--arch/m68k/Kconfig.mmu411
6 files changed, 888 insertions, 916 deletions
diff --git a/arch/m68k/Kconfig b/arch/m68k/Kconfig
index 9e8ee9d2b8ca..6c28582fb98f 100644
--- a/arch/m68k/Kconfig
+++ b/arch/m68k/Kconfig
@@ -21,6 +21,15 @@ config ARCH_HAS_ILOG2_U32
21config ARCH_HAS_ILOG2_U64 21config ARCH_HAS_ILOG2_U64
22 bool 22 bool
23 23
24config GENERIC_CLOCKEVENTS
25 bool
26
27config GENERIC_CMOS_UPDATE
28 def_bool !MMU
29
30config GENERIC_GPIO
31 bool
32
24config GENERIC_HWEIGHT 33config GENERIC_HWEIGHT
25 bool 34 bool
26 default y 35 default y
@@ -29,10 +38,16 @@ config GENERIC_CALIBRATE_DELAY
29 bool 38 bool
30 default y 39 default y
31 40
41config GENERIC_IOMAP
42 def_bool MMU
43
32config TIME_LOW_RES 44config TIME_LOW_RES
33 bool 45 bool
34 default y 46 default y
35 47
48config ARCH_USES_GETTIMEOFFSET
49 def_bool MMU
50
36config NO_IOPORT 51config NO_IOPORT
37 def_bool y 52 def_bool y
38 53
@@ -62,13 +77,31 @@ config MMU
62 Select if you want MMU-based virtualised addressing space 77 Select if you want MMU-based virtualised addressing space
63 support by paged memory management. If unsure, say 'Y'. 78 support by paged memory management. If unsure, say 'Y'.
64 79
65menu "Platform dependent setup" 80config MMU_MOTOROLA
81 bool
82
83config MMU_SUN3
84 bool
85 depends on MMU && !MMU_MOTOROLA
86
87menu "Platform setup"
88
89source arch/m68k/Kconfig.cpu
90
91source arch/m68k/Kconfig.machine
92
93source arch/m68k/Kconfig.bus
94
95endmenu
96
97menu "Kernel Features"
66 98
67if MMU 99if COLDFIRE
68source arch/m68k/Kconfig.mmu 100source "kernel/Kconfig.preempt"
69endif 101endif
70if !MMU 102
71source arch/m68k/Kconfig.nommu 103if !MMU || COLDFIRE
104source "kernel/time/Kconfig"
72endif 105endif
73 106
74source "mm/Kconfig" 107source "mm/Kconfig"
@@ -85,9 +118,9 @@ if !MMU
85menu "Power management options" 118menu "Power management options"
86 119
87config PM 120config PM
88 bool "Power Management support" 121 bool "Power Management support"
89 help 122 help
90 Support processor power management modes 123 Support processor power management modes
91 124
92endmenu 125endmenu
93endif 126endif
@@ -96,151 +129,7 @@ source "net/Kconfig"
96 129
97source "drivers/Kconfig" 130source "drivers/Kconfig"
98 131
99if MMU 132source "arch/m68k/Kconfig.devices"
100
101menu "Character devices"
102
103config ATARI_MFPSER
104 tristate "Atari MFP serial support"
105 depends on ATARI
106 ---help---
107 If you like to use the MFP serial ports ("Modem1", "Serial1") under
108 Linux, say Y. The driver equally supports all kinds of MFP serial
109 ports and automatically detects whether Serial1 is available.
110
111 To compile this driver as a module, choose M here.
112
113 Note for Falcon users: You also have an MFP port, it's just not
114 wired to the outside... But you could use the port under Linux.
115
116config ATARI_MIDI
117 tristate "Atari MIDI serial support"
118 depends on ATARI
119 help
120 If you want to use your Atari's MIDI port in Linux, say Y.
121
122 To compile this driver as a module, choose M here.
123
124config ATARI_DSP56K
125 tristate "Atari DSP56k support (EXPERIMENTAL)"
126 depends on ATARI && EXPERIMENTAL
127 help
128 If you want to be able to use the DSP56001 in Falcons, say Y. This
129 driver is still experimental, and if you don't know what it is, or
130 if you don't have this processor, just say N.
131
132 To compile this driver as a module, choose M here.
133
134config AMIGA_BUILTIN_SERIAL
135 tristate "Amiga builtin serial support"
136 depends on AMIGA
137 help
138 If you want to use your Amiga's built-in serial port in Linux,
139 answer Y.
140
141 To compile this driver as a module, choose M here.
142
143config MULTIFACE_III_TTY
144 tristate "Multiface Card III serial support"
145 depends on AMIGA
146 help
147 If you want to use a Multiface III card's serial port in Linux,
148 answer Y.
149
150 To compile this driver as a module, choose M here.
151
152config GVPIOEXT
153 tristate "GVP IO-Extender support"
154 depends on PARPORT=n && ZORRO
155 help
156 If you want to use a GVP IO-Extender serial card in Linux, say Y.
157 Otherwise, say N.
158
159config GVPIOEXT_LP
160 tristate "GVP IO-Extender parallel printer support"
161 depends on GVPIOEXT
162 help
163 Say Y to enable driving a printer from the parallel port on your
164 GVP IO-Extender card, N otherwise.
165
166config GVPIOEXT_PLIP
167 tristate "GVP IO-Extender PLIP support"
168 depends on GVPIOEXT
169 help
170 Say Y to enable doing IP over the parallel port on your GVP
171 IO-Extender card, N otherwise.
172
173config MAC_HID
174 bool
175 depends on INPUT_ADBHID
176 default y
177
178config HPDCA
179 tristate "HP DCA serial support"
180 depends on DIO && SERIAL_8250
181 help
182 If you want to use the internal "DCA" serial ports on an HP300
183 machine, say Y here.
184
185config HPAPCI
186 tristate "HP APCI serial support"
187 depends on HP300 && SERIAL_8250 && EXPERIMENTAL
188 help
189 If you want to use the internal "APCI" serial ports on an HP400
190 machine, say Y here.
191
192config MVME147_SCC
193 bool "SCC support for MVME147 serial ports"
194 depends on MVME147 && BROKEN
195 help
196 This is the driver for the serial ports on the Motorola MVME147
197 boards. Everyone using one of these boards should say Y here.
198
199config MVME162_SCC
200 bool "SCC support for MVME162 serial ports"
201 depends on MVME16x && BROKEN
202 help
203 This is the driver for the serial ports on the Motorola MVME162 and
204 172 boards. Everyone using one of these boards should say Y here.
205
206config BVME6000_SCC
207 bool "SCC support for BVME6000 serial ports"
208 depends on BVME6000 && BROKEN
209 help
210 This is the driver for the serial ports on the BVME4000 and BVME6000
211 boards from BVM Ltd. Everyone using one of these boards should say
212 Y here.
213
214config DN_SERIAL
215 bool "Support for DN serial port (dummy)"
216 depends on APOLLO
217
218config SERIAL_CONSOLE
219 bool "Support for serial port console"
220 depends on (AMIGA || ATARI || SUN3 || SUN3X || VME || APOLLO) && (ATARI_MFPSER=y || ATARI_MIDI=y || AMIGA_BUILTIN_SERIAL=y || GVPIOEXT=y || MULTIFACE_III_TTY=y || SERIAL=y || MVME147_SCC || SERIAL167 || MVME162_SCC || BVME6000_SCC || DN_SERIAL)
221 ---help---
222 If you say Y here, it will be possible to use a serial port as the
223 system console (the system console is the device which receives all
224 kernel messages and warnings and which allows logins in single user
225 mode). This could be useful if some terminal or printer is connected
226 to that serial port.
227
228 Even if you say Y here, the currently visible virtual console
229 (/dev/tty0) will still be used as the system console by default, but
230 you can alter that using a kernel command line option such as
231 "console=ttyS1". (Try "man bootparam" or see the documentation of
232 your boot loader (lilo or loadlin) about how to pass options to the
233 kernel at boot time.)
234
235 If you don't have a VGA card installed and you say Y here, the
236 kernel will automatically use the first serial line, /dev/ttyS0, as
237 system console.
238
239 If unsure, say N.
240
241endmenu
242
243endif
244 133
245source "fs/Kconfig" 134source "fs/Kconfig"
246 135
diff --git a/arch/m68k/Kconfig.bus b/arch/m68k/Kconfig.bus
new file mode 100644
index 000000000000..8294f0c1785e
--- /dev/null
+++ b/arch/m68k/Kconfig.bus
@@ -0,0 +1,55 @@
1if MMU
2
3comment "Bus Support"
4
5config NUBUS
6 bool
7 depends on MAC
8 default y
9
10config ZORRO
11 bool "Amiga Zorro (AutoConfig) bus support"
12 depends on AMIGA
13 help
14 This enables support for the Zorro bus in the Amiga. If you have
15 expansion cards in your Amiga that conform to the Amiga
16 AutoConfig(tm) specification, say Y, otherwise N. Note that even
17 expansion cards that do not fit in the Zorro slots but fit in e.g.
18 the CPU slot may fall in this category, so you have to say Y to let
19 Linux use these.
20
21config AMIGA_PCMCIA
22 bool "Amiga 1200/600 PCMCIA support (EXPERIMENTAL)"
23 depends on AMIGA && EXPERIMENTAL
24 help
25 Include support in the kernel for pcmcia on Amiga 1200 and Amiga
26 600. If you intend to use pcmcia cards say Y; otherwise say N.
27
28config ISA
29 bool
30 depends on Q40 || AMIGA_PCMCIA
31 default y
32 help
33 Find out whether you have ISA slots on your motherboard. ISA is the
34 name of a bus system, i.e. the way the CPU talks to the other stuff
35 inside your box. Other bus systems are PCI, EISA, MicroChannel
36 (MCA) or VESA. ISA is an older system, now being displaced by PCI;
37 newer boards don't support it. If you have ISA, say Y, otherwise N.
38
39config GENERIC_ISA_DMA
40 def_bool ISA
41
42source "drivers/pci/Kconfig"
43
44source "drivers/zorro/Kconfig"
45
46endif
47
48if !MMU
49
50config ISA_DMA_API
51 def_bool !M5272
52
53source "drivers/pcmcia/Kconfig"
54
55endif
diff --git a/arch/m68k/Kconfig.cpu b/arch/m68k/Kconfig.cpu
new file mode 100644
index 000000000000..e632b2d12106
--- /dev/null
+++ b/arch/m68k/Kconfig.cpu
@@ -0,0 +1,429 @@
1comment "Processor Type"
2
3config M68000
4 bool
5 select CPU_HAS_NO_BITFIELDS
6 help
7 The Freescale (was Motorola) 68000 CPU is the first generation of
8 the well known M68K family of processors. The CPU core as well as
9 being available as a stand alone CPU was also used in many
10 System-On-Chip devices (eg 68328, 68302, etc). It does not contain
11 a paging MMU.
12
13config MCPU32
14 bool
15 select CPU_HAS_NO_BITFIELDS
16 help
17 The Freescale (was then Motorola) CPU32 is a CPU core that is
18 based on the 68020 processor. For the most part it is used in
19 System-On-Chip parts, and does not contain a paging MMU.
20
21config COLDFIRE
22 bool
23 select GENERIC_GPIO
24 select ARCH_REQUIRE_GPIOLIB
25 select CPU_HAS_NO_BITFIELDS
26 help
27 The Freescale ColdFire family of processors is a modern derivitive
28 of the 68000 processor family. They are mainly targeted at embedded
29 applications, and are all System-On-Chip (SOC) devices, as opposed
30 to stand alone CPUs. They implement a subset of the original 68000
31 processor instruction set.
32
33config M68020
34 bool "68020 support"
35 depends on MMU
36 help
37 If you anticipate running this kernel on a computer with a MC68020
38 processor, say Y. Otherwise, say N. Note that the 68020 requires a
39 68851 MMU (Memory Management Unit) to run Linux/m68k, except on the
40 Sun 3, which provides its own version.
41
42config M68030
43 bool "68030 support"
44 depends on MMU && !MMU_SUN3
45 help
46 If you anticipate running this kernel on a computer with a MC68030
47 processor, say Y. Otherwise, say N. Note that a MC68EC030 will not
48 work, as it does not include an MMU (Memory Management Unit).
49
50config M68040
51 bool "68040 support"
52 depends on MMU && !MMU_SUN3
53 help
54 If you anticipate running this kernel on a computer with a MC68LC040
55 or MC68040 processor, say Y. Otherwise, say N. Note that an
56 MC68EC040 will not work, as it does not include an MMU (Memory
57 Management Unit).
58
59config M68060
60 bool "68060 support"
61 depends on MMU && !MMU_SUN3
62 help
63 If you anticipate running this kernel on a computer with a MC68060
64 processor, say Y. Otherwise, say N.
65
66config M68328
67 bool "MC68328"
68 depends on !MMU
69 select M68000
70 help
71 Motorola 68328 processor support.
72
73config M68EZ328
74 bool "MC68EZ328"
75 depends on !MMU
76 select M68000
77 help
78 Motorola 68EX328 processor support.
79
80config M68VZ328
81 bool "MC68VZ328"
82 depends on !MMU
83 select M68000
84 help
85 Motorola 68VZ328 processor support.
86
87config M68360
88 bool "MC68360"
89 depends on !MMU
90 select MCPU32
91 help
92 Motorola 68360 processor support.
93
94config M5206
95 bool "MCF5206"
96 depends on !MMU
97 select COLDFIRE
98 select COLDFIRE_SW_A7
99 select HAVE_MBAR
100 help
101 Motorola ColdFire 5206 processor support.
102
103config M5206e
104 bool "MCF5206e"
105 depends on !MMU
106 select COLDFIRE
107 select COLDFIRE_SW_A7
108 select HAVE_MBAR
109 help
110 Motorola ColdFire 5206e processor support.
111
112config M520x
113 bool "MCF520x"
114 depends on !MMU
115 select COLDFIRE
116 select GENERIC_CLOCKEVENTS
117 select HAVE_CACHE_SPLIT
118 help
119 Freescale Coldfire 5207/5208 processor support.
120
121config M523x
122 bool "MCF523x"
123 depends on !MMU
124 select COLDFIRE
125 select GENERIC_CLOCKEVENTS
126 select HAVE_CACHE_SPLIT
127 select HAVE_IPSBAR
128 help
129 Freescale Coldfire 5230/1/2/4/5 processor support
130
131config M5249
132 bool "MCF5249"
133 depends on !MMU
134 select COLDFIRE
135 select COLDFIRE_SW_A7
136 select HAVE_MBAR
137 help
138 Motorola ColdFire 5249 processor support.
139
140config M527x
141 bool
142
143config M5271
144 bool "MCF5271"
145 depends on !MMU
146 select COLDFIRE
147 select M527x
148 select HAVE_CACHE_SPLIT
149 select HAVE_IPSBAR
150 select GENERIC_CLOCKEVENTS
151 help
152 Freescale (Motorola) ColdFire 5270/5271 processor support.
153
154config M5272
155 bool "MCF5272"
156 depends on !MMU
157 select COLDFIRE
158 select COLDFIRE_SW_A7
159 select HAVE_MBAR
160 help
161 Motorola ColdFire 5272 processor support.
162
163config M5275
164 bool "MCF5275"
165 depends on !MMU
166 select COLDFIRE
167 select M527x
168 select HAVE_CACHE_SPLIT
169 select HAVE_IPSBAR
170 select GENERIC_CLOCKEVENTS
171 help
172 Freescale (Motorola) ColdFire 5274/5275 processor support.
173
174config M528x
175 bool "MCF528x"
176 depends on !MMU
177 select COLDFIRE
178 select GENERIC_CLOCKEVENTS
179 select HAVE_CACHE_SPLIT
180 select HAVE_IPSBAR
181 help
182 Motorola ColdFire 5280/5282 processor support.
183
184config M5307
185 bool "MCF5307"
186 depends on !MMU
187 select COLDFIRE
188 select COLDFIRE_SW_A7
189 select HAVE_CACHE_CB
190 select HAVE_MBAR
191 help
192 Motorola ColdFire 5307 processor support.
193
194config M532x
195 bool "MCF532x"
196 depends on !MMU
197 select COLDFIRE
198 select HAVE_CACHE_CB
199 help
200 Freescale (Motorola) ColdFire 532x processor support.
201
202config M5407
203 bool "MCF5407"
204 depends on !MMU
205 select COLDFIRE
206 select COLDFIRE_SW_A7
207 select HAVE_CACHE_CB
208 select HAVE_MBAR
209 help
210 Motorola ColdFire 5407 processor support.
211
212config M54xx
213 bool
214
215config M547x
216 bool "MCF547x"
217 depends on !MMU
218 select COLDFIRE
219 select M54xx
220 select HAVE_CACHE_CB
221 select HAVE_MBAR
222 help
223 Freescale ColdFire 5470/5471/5472/5473/5474/5475 processor support.
224
225config M548x
226 bool "MCF548x"
227 depends on !MMU
228 select COLDFIRE
229 select M54xx
230 select HAVE_CACHE_CB
231 select HAVE_MBAR
232 help
233 Freescale ColdFire 5480/5481/5482/5483/5484/5485 processor support.
234
235
236comment "Processor Specific Options"
237
238config M68KFPU_EMU
239 bool "Math emulation support (EXPERIMENTAL)"
240 depends on MMU
241 depends on EXPERIMENTAL
242 help
243 At some point in the future, this will cause floating-point math
244 instructions to be emulated by the kernel on machines that lack a
245 floating-point math coprocessor. Thrill-seekers and chronically
246 sleep-deprived psychotic hacker types can say Y now, everyone else
247 should probably wait a while.
248
249config M68KFPU_EMU_EXTRAPREC
250 bool "Math emulation extra precision"
251 depends on M68KFPU_EMU
252 help
253 The fpu uses normally a few bit more during calculations for
254 correct rounding, the emulator can (often) do the same but this
255 extra calculation can cost quite some time, so you can disable
256 it here. The emulator will then "only" calculate with a 64 bit
257 mantissa and round slightly incorrect, what is more than enough
258 for normal usage.
259
260config M68KFPU_EMU_ONLY
261 bool "Math emulation only kernel"
262 depends on M68KFPU_EMU
263 help
264 This option prevents any floating-point instructions from being
265 compiled into the kernel, thereby the kernel doesn't save any
266 floating point context anymore during task switches, so this
267 kernel will only be usable on machines without a floating-point
268 math coprocessor. This makes the kernel a bit faster as no tests
269 needs to be executed whether a floating-point instruction in the
270 kernel should be executed or not.
271
272config ADVANCED
273 bool "Advanced configuration options"
274 depends on MMU
275 ---help---
276 This gives you access to some advanced options for the CPU. The
277 defaults should be fine for most users, but these options may make
278 it possible for you to improve performance somewhat if you know what
279 you are doing.
280
281 Note that the answer to this question won't directly affect the
282 kernel: saying N will just cause the configurator to skip all
283 the questions about these options.
284
285 Most users should say N to this question.
286
287config RMW_INSNS
288 bool "Use read-modify-write instructions"
289 depends on ADVANCED
290 ---help---
291 This allows to use certain instructions that work with indivisible
292 read-modify-write bus cycles. While this is faster than the
293 workaround of disabling interrupts, it can conflict with DMA
294 ( = direct memory access) on many Amiga systems, and it is also said
295 to destabilize other machines. It is very likely that this will
296 cause serious problems on any Amiga or Atari Medusa if set. The only
297 configuration where it should work are 68030-based Ataris, where it
298 apparently improves performance. But you've been warned! Unless you
299 really know what you are doing, say N. Try Y only if you're quite
300 adventurous.
301
302config SINGLE_MEMORY_CHUNK
303 bool "Use one physical chunk of memory only" if ADVANCED && !SUN3
304 depends on MMU
305 default y if SUN3
306 select NEED_MULTIPLE_NODES
307 help
308 Ignore all but the first contiguous chunk of physical memory for VM
309 purposes. This will save a few bytes kernel size and may speed up
310 some operations. Say N if not sure.
311
312config ARCH_DISCONTIGMEM_ENABLE
313 def_bool MMU && !SINGLE_MEMORY_CHUNK
314
315config 060_WRITETHROUGH
316 bool "Use write-through caching for 68060 supervisor accesses"
317 depends on ADVANCED && M68060
318 ---help---
319 The 68060 generally uses copyback caching of recently accessed data.
320 Copyback caching means that memory writes will be held in an on-chip
321 cache and only written back to memory some time later. Saying Y
322 here will force supervisor (kernel) accesses to use writethrough
323 caching. Writethrough caching means that data is written to memory
324 straight away, so that cache and memory data always agree.
325 Writethrough caching is less efficient, but is needed for some
326 drivers on 68060 based systems where the 68060 bus snooping signal
327 is hardwired on. The 53c710 SCSI driver is known to suffer from
328 this problem.
329
330config M68K_L2_CACHE
331 bool
332 depends on MAC
333 default y
334
335config NODES_SHIFT
336 int
337 default "3"
338 depends on !SINGLE_MEMORY_CHUNK
339
340config FPU
341 bool
342
343config COLDFIRE_SW_A7
344 bool
345
346config HAVE_CACHE_SPLIT
347 bool
348
349config HAVE_CACHE_CB
350 bool
351
352config HAVE_MBAR
353 bool
354
355config HAVE_IPSBAR
356 bool
357
358config CLOCK_SET
359 bool "Enable setting the CPU clock frequency"
360 depends on COLDFIRE
361 default n
362 help
363 On some CPU's you do not need to know what the core CPU clock
364 frequency is. On these you can disable clock setting. On some
365 traditional 68K parts, and on all ColdFire parts you need to set
366 the appropriate CPU clock frequency. On these devices many of the
367 onboard peripherals derive their timing from the master CPU clock
368 frequency.
369
370config CLOCK_FREQ
371 int "Set the core clock frequency"
372 default "66666666"
373 depends on CLOCK_SET
374 help
375 Define the CPU clock frequency in use. This is the core clock
376 frequency, it may or may not be the same as the external clock
377 crystal fitted to your board. Some processors have an internal
378 PLL and can have their frequency programmed at run time, others
379 use internal dividers. In general the kernel won't setup a PLL
380 if it is fitted (there are some exceptions). This value will be
381 specific to the exact CPU that you are using.
382
383config OLDMASK
384 bool "Old mask 5307 (1H55J) silicon"
385 depends on M5307
386 help
387 Build support for the older revision ColdFire 5307 silicon.
388 Specifically this is the 1H55J mask revision.
389
390if HAVE_CACHE_SPLIT
391choice
392 prompt "Split Cache Configuration"
393 default CACHE_I
394
395config CACHE_I
396 bool "Instruction"
397 help
398 Use all of the ColdFire CPU cache memory as an instruction cache.
399
400config CACHE_D
401 bool "Data"
402 help
403 Use all of the ColdFire CPU cache memory as a data cache.
404
405config CACHE_BOTH
406 bool "Both"
407 help
408 Split the ColdFire CPU cache, and use half as an instruction cache
409 and half as a data cache.
410endchoice
411endif
412
413if HAVE_CACHE_CB
414choice
415 prompt "Data cache mode"
416 default CACHE_WRITETHRU
417
418config CACHE_WRITETHRU
419 bool "Write-through"
420 help
421 The ColdFire CPU cache is set into Write-through mode.
422
423config CACHE_COPYBACK
424 bool "Copy-back"
425 help
426 The ColdFire CPU cache is set into Copy-back mode.
427endchoice
428endif
429
diff --git a/arch/m68k/Kconfig.devices b/arch/m68k/Kconfig.devices
new file mode 100644
index 000000000000..d964dc4c2ce8
--- /dev/null
+++ b/arch/m68k/Kconfig.devices
@@ -0,0 +1,171 @@
1if MMU
2
3config ARCH_MAY_HAVE_PC_FDC
4 bool
5 depends on BROKEN && (Q40 || SUN3X)
6 default y
7
8menu "Platform devices"
9
10config HEARTBEAT
11 bool "Use power LED as a heartbeat" if AMIGA || APOLLO || ATARI || MAC ||Q40
12 default y if !AMIGA && !APOLLO && !ATARI && !MAC && !Q40 && HP300
13 help
14 Use the power-on LED on your machine as a load meter. The exact
15 behavior is platform-dependent, but normally the flash frequency is
16 a hyperbolic function of the 5-minute load average.
17
18# We have a dedicated heartbeat LED. :-)
19config PROC_HARDWARE
20 bool "/proc/hardware support"
21 help
22 Say Y here to support the /proc/hardware file, which gives you
23 access to information about the machine you're running on,
24 including the model, CPU, MMU, clock speed, BogoMIPS rating,
25 and memory size.
26
27endmenu
28
29menu "Character devices"
30
31config ATARI_MFPSER
32 tristate "Atari MFP serial support"
33 depends on ATARI
34 ---help---
35 If you like to use the MFP serial ports ("Modem1", "Serial1") under
36 Linux, say Y. The driver equally supports all kinds of MFP serial
37 ports and automatically detects whether Serial1 is available.
38
39 To compile this driver as a module, choose M here.
40
41 Note for Falcon users: You also have an MFP port, it's just not
42 wired to the outside... But you could use the port under Linux.
43
44config ATARI_MIDI
45 tristate "Atari MIDI serial support"
46 depends on ATARI
47 help
48 If you want to use your Atari's MIDI port in Linux, say Y.
49
50 To compile this driver as a module, choose M here.
51
52config ATARI_DSP56K
53 tristate "Atari DSP56k support (EXPERIMENTAL)"
54 depends on ATARI && EXPERIMENTAL
55 help
56 If you want to be able to use the DSP56001 in Falcons, say Y. This
57 driver is still experimental, and if you don't know what it is, or
58 if you don't have this processor, just say N.
59
60 To compile this driver as a module, choose M here.
61
62config AMIGA_BUILTIN_SERIAL
63 tristate "Amiga builtin serial support"
64 depends on AMIGA
65 help
66 If you want to use your Amiga's built-in serial port in Linux,
67 answer Y.
68
69 To compile this driver as a module, choose M here.
70
71config MULTIFACE_III_TTY
72 tristate "Multiface Card III serial support"
73 depends on AMIGA
74 help
75 If you want to use a Multiface III card's serial port in Linux,
76 answer Y.
77
78 To compile this driver as a module, choose M here.
79
80config GVPIOEXT
81 tristate "GVP IO-Extender support"
82 depends on PARPORT=n && ZORRO
83 help
84 If you want to use a GVP IO-Extender serial card in Linux, say Y.
85 Otherwise, say N.
86
87config GVPIOEXT_LP
88 tristate "GVP IO-Extender parallel printer support"
89 depends on GVPIOEXT
90 help
91 Say Y to enable driving a printer from the parallel port on your
92 GVP IO-Extender card, N otherwise.
93
94config GVPIOEXT_PLIP
95 tristate "GVP IO-Extender PLIP support"
96 depends on GVPIOEXT
97 help
98 Say Y to enable doing IP over the parallel port on your GVP
99 IO-Extender card, N otherwise.
100
101config MAC_HID
102 bool
103 depends on INPUT_ADBHID
104 default y
105
106config HPDCA
107 tristate "HP DCA serial support"
108 depends on DIO && SERIAL_8250
109 help
110 If you want to use the internal "DCA" serial ports on an HP300
111 machine, say Y here.
112
113config HPAPCI
114 tristate "HP APCI serial support"
115 depends on HP300 && SERIAL_8250 && EXPERIMENTAL
116 help
117 If you want to use the internal "APCI" serial ports on an HP400
118 machine, say Y here.
119
120config MVME147_SCC
121 bool "SCC support for MVME147 serial ports"
122 depends on MVME147 && BROKEN
123 help
124 This is the driver for the serial ports on the Motorola MVME147
125 boards. Everyone using one of these boards should say Y here.
126
127config MVME162_SCC
128 bool "SCC support for MVME162 serial ports"
129 depends on MVME16x && BROKEN
130 help
131 This is the driver for the serial ports on the Motorola MVME162 and
132 172 boards. Everyone using one of these boards should say Y here.
133
134config BVME6000_SCC
135 bool "SCC support for BVME6000 serial ports"
136 depends on BVME6000 && BROKEN
137 help
138 This is the driver for the serial ports on the BVME4000 and BVME6000
139 boards from BVM Ltd. Everyone using one of these boards should say
140 Y here.
141
142config DN_SERIAL
143 bool "Support for DN serial port (dummy)"
144 depends on APOLLO
145
146config SERIAL_CONSOLE
147 bool "Support for serial port console"
148 depends on (AMIGA || ATARI || SUN3 || SUN3X || VME || APOLLO) && (ATARI_MFPSER=y || ATARI_MIDI=y || AMIGA_BUILTIN_SERIAL=y || GVPIOEXT=y || MULTIFACE_III_TTY=y || SERIAL=y || MVME147_SCC || SERIAL167 || MVME162_SCC || BVME6000_SCC || DN_SERIAL)
149 ---help---
150 If you say Y here, it will be possible to use a serial port as the
151 system console (the system console is the device which receives all
152 kernel messages and warnings and which allows logins in single user
153 mode). This could be useful if some terminal or printer is connected
154 to that serial port.
155
156 Even if you say Y here, the currently visible virtual console
157 (/dev/tty0) will still be used as the system console by default, but
158 you can alter that using a kernel command line option such as
159 "console=ttyS1". (Try "man bootparam" or see the documentation of
160 your boot loader (lilo or loadlin) about how to pass options to the
161 kernel at boot time.)
162
163 If you don't have a VGA card installed and you say Y here, the
164 kernel will automatically use the first serial line, /dev/ttyS0, as
165 system console.
166
167 If unsure, say N.
168
169endmenu
170
171endif
diff --git a/arch/m68k/Kconfig.nommu b/arch/m68k/Kconfig.machine
index ff46383112a4..7d5c20b896c7 100644
--- a/arch/m68k/Kconfig.nommu
+++ b/arch/m68k/Kconfig.machine
@@ -1,297 +1,142 @@
1config FPU 1comment "Machine Types"
2 bool 2
3 default n 3config AMIGA
4 4 bool "Amiga support"
5config GENERIC_GPIO 5 depends on MMU
6 bool 6 select MMU_MOTOROLA if MMU
7 default n 7 help
8 8 This option enables support for the Amiga series of computers. If
9config GENERIC_CMOS_UPDATE 9 you plan to use this kernel on an Amiga, say Y here and browse the
10 bool 10 material available in <file:Documentation/m68k>; otherwise say N.
11 default y 11
12 12config ATARI
13config GENERIC_CLOCKEVENTS 13 bool "Atari support"
14 bool 14 depends on MMU
15 default n 15 select MMU_MOTOROLA if MMU
16 16 help
17config M68000 17 This option enables support for the 68000-based Atari series of
18 bool 18 computers (including the TT, Falcon and Medusa). If you plan to use
19 select CPU_HAS_NO_BITFIELDS 19 this kernel on an Atari, say Y here and browse the material
20 help 20 available in <file:Documentation/m68k>; otherwise say N.
21 The Freescale (was Motorola) 68000 CPU is the first generation of 21
22 the well known M68K family of processors. The CPU core as well as 22config MAC
23 being available as a stand alone CPU was also used in many 23 bool "Macintosh support"
24 System-On-Chip devices (eg 68328, 68302, etc). It does not contain 24 depends on MMU
25 a paging MMU. 25 select MMU_MOTOROLA if MMU
26 26 help
27config MCPU32 27 This option enables support for the Apple Macintosh series of
28 bool 28 computers (yes, there is experimental support now, at least for part
29 select CPU_HAS_NO_BITFIELDS 29 of the series).
30 help 30
31 The Freescale (was then Motorola) CPU32 is a CPU core that is 31 Say N unless you're willing to code the remaining necessary support.
32 based on the 68020 processor. For the most part it is used in 32 ;)
33 System-On-Chip parts, and does not contain a paging MMU. 33
34 34config APOLLO
35config COLDFIRE 35 bool "Apollo support"
36 bool 36 depends on MMU
37 select GENERIC_GPIO 37 select MMU_MOTOROLA if MMU
38 select ARCH_REQUIRE_GPIOLIB 38 help
39 select CPU_HAS_NO_BITFIELDS 39 Say Y here if you want to run Linux on an MC680x0-based Apollo
40 help 40 Domain workstation such as the DN3500.
41 The Freescale ColdFire family of processors is a modern derivitive 41
42 of the 68000 processor family. They are mainly targeted at embedded 42config VME
43 applications, and are all System-On-Chip (SOC) devices, as opposed 43 bool "VME (Motorola and BVM) support"
44 to stand alone CPUs. They implement a subset of the original 68000 44 depends on MMU
45 processor instruction set. 45 select MMU_MOTOROLA if MMU
46 46 help
47config COLDFIRE_SW_A7 47 Say Y here if you want to build a kernel for a 680x0 based VME
48 bool 48 board. Boards currently supported include Motorola boards MVME147,
49 default n 49 MVME162, MVME166, MVME167, MVME172, and MVME177. BVME4000 and
50 50 BVME6000 boards from BVM Ltd are also supported.
51config HAVE_CACHE_SPLIT 51
52 bool 52config MVME147
53 53 bool "MVME147 support"
54config HAVE_CACHE_CB 54 depends on MMU
55 bool 55 depends on VME
56 56 help
57config HAVE_MBAR 57 Say Y to include support for early Motorola VME boards. This will
58 bool 58 build a kernel which can run on MVME147 single-board computers. If
59 59 you select this option you will have to select the appropriate
60config HAVE_IPSBAR 60 drivers for SCSI, Ethernet and serial ports later on.
61 bool 61
62 62config MVME16x
63choice 63 bool "MVME162, 166 and 167 support"
64 prompt "CPU" 64 depends on MMU
65 default M68EZ328 65 depends on VME
66 66 help
67config M68328 67 Say Y to include support for Motorola VME boards. This will build a
68 bool "MC68328" 68 kernel which can run on MVME162, MVME166, MVME167, MVME172, and
69 select M68000 69 MVME177 boards. If you select this option you will have to select
70 help 70 the appropriate drivers for SCSI, Ethernet and serial ports later
71 Motorola 68328 processor support. 71 on.
72 72
73config M68EZ328 73config BVME6000
74 bool "MC68EZ328" 74 bool "BVME4000 and BVME6000 support"
75 select M68000 75 depends on MMU
76 help 76 depends on VME
77 Motorola 68EX328 processor support. 77 help
78 78 Say Y to include support for VME boards from BVM Ltd. This will
79config M68VZ328 79 build a kernel which can run on BVME4000 and BVME6000 boards. If
80 bool "MC68VZ328" 80 you select this option you will have to select the appropriate
81 select M68000 81 drivers for SCSI, Ethernet and serial ports later on.
82 help 82
83 Motorola 68VZ328 processor support. 83config HP300
84 84 bool "HP9000/300 and HP9000/400 support"
85config M68360 85 depends on MMU
86 bool "MC68360" 86 select MMU_MOTOROLA if MMU
87 select MCPU32 87 help
88 help 88 This option enables support for the HP9000/300 and HP9000/400 series
89 Motorola 68360 processor support. 89 of workstations. Support for these machines is still somewhat
90 90 experimental. If you plan to try to use the kernel on such a machine
91config M5206 91 say Y here.
92 bool "MCF5206" 92 Everybody else says N.
93 select COLDFIRE 93
94 select COLDFIRE_SW_A7 94config SUN3X
95 select HAVE_MBAR 95 bool "Sun3x support"
96 help 96 depends on MMU
97 Motorola ColdFire 5206 processor support. 97 select MMU_MOTOROLA if MMU
98 select M68030
99 help
100 This option enables support for the Sun 3x series of workstations.
101 Be warned that this support is very experimental.
102 Note that Sun 3x kernels are not compatible with Sun 3 hardware.
103 General Linux information on the Sun 3x series (now discontinued)
104 is at <http://www.angelfire.com/ca2/tech68k/sun3.html>.
105
106 If you don't want to compile a kernel for a Sun 3x, say N.
107
108config Q40
109 bool "Q40/Q60 support"
110 depends on MMU
111 select MMU_MOTOROLA if MMU
112 help
113 The Q40 is a Motorola 68040-based successor to the Sinclair QL
114 manufactured in Germany. There is an official Q40 home page at
115 <http://www.q40.de/>. This option enables support for the Q40 and
116 Q60. Select your CPU below. For 68LC060 don't forget to enable FPU
117 emulation.
118
119config SUN3
120 bool "Sun3 support"
121 depends on MMU
122 depends on !MMU_MOTOROLA
123 select MMU_SUN3 if MMU
124 select M68020
125 help
126 This option enables support for the Sun 3 series of workstations
127 (3/50, 3/60, 3/1xx, 3/2xx systems). Enabling this option requires
128 that all other hardware types must be disabled, as Sun 3 kernels
129 are incompatible with all other m68k targets (including Sun 3x!).
130
131 If you don't want to compile a kernel exclusively for a Sun 3, say N.
98 132
99config M5206e 133config PILOT
100 bool "MCF5206e"
101 select COLDFIRE
102 select COLDFIRE_SW_A7
103 select HAVE_MBAR
104 help
105 Motorola ColdFire 5206e processor support.
106
107config M520x
108 bool "MCF520x"
109 select COLDFIRE
110 select GENERIC_CLOCKEVENTS
111 select HAVE_CACHE_SPLIT
112 help
113 Freescale Coldfire 5207/5208 processor support.
114
115config M523x
116 bool "MCF523x"
117 select COLDFIRE
118 select GENERIC_CLOCKEVENTS
119 select HAVE_CACHE_SPLIT
120 select HAVE_IPSBAR
121 help
122 Freescale Coldfire 5230/1/2/4/5 processor support
123
124config M5249
125 bool "MCF5249"
126 select COLDFIRE
127 select COLDFIRE_SW_A7
128 select HAVE_MBAR
129 help
130 Motorola ColdFire 5249 processor support.
131
132config M5271
133 bool "MCF5271"
134 select COLDFIRE
135 select HAVE_CACHE_SPLIT
136 select HAVE_IPSBAR
137 help
138 Freescale (Motorola) ColdFire 5270/5271 processor support.
139
140config M5272
141 bool "MCF5272"
142 select COLDFIRE
143 select COLDFIRE_SW_A7
144 select HAVE_MBAR
145 help
146 Motorola ColdFire 5272 processor support.
147
148config M5275
149 bool "MCF5275"
150 select COLDFIRE
151 select HAVE_CACHE_SPLIT
152 select HAVE_IPSBAR
153 help
154 Freescale (Motorola) ColdFire 5274/5275 processor support.
155
156config M528x
157 bool "MCF528x"
158 select COLDFIRE
159 select GENERIC_CLOCKEVENTS
160 select HAVE_CACHE_SPLIT
161 select HAVE_IPSBAR
162 help
163 Motorola ColdFire 5280/5282 processor support.
164
165config M5307
166 bool "MCF5307"
167 select COLDFIRE
168 select COLDFIRE_SW_A7
169 select HAVE_CACHE_CB
170 select HAVE_MBAR
171 help
172 Motorola ColdFire 5307 processor support.
173
174config M532x
175 bool "MCF532x"
176 select COLDFIRE
177 select HAVE_CACHE_CB
178 help
179 Freescale (Motorola) ColdFire 532x processor support.
180
181config M5407
182 bool "MCF5407"
183 select COLDFIRE
184 select COLDFIRE_SW_A7
185 select HAVE_CACHE_CB
186 select HAVE_MBAR
187 help
188 Motorola ColdFire 5407 processor support.
189
190config M547x
191 bool "MCF547x"
192 select COLDFIRE
193 select HAVE_CACHE_CB
194 select HAVE_MBAR
195 help
196 Freescale ColdFire 5470/5471/5472/5473/5474/5475 processor support.
197
198config M548x
199 bool "MCF548x"
200 select COLDFIRE
201 select HAVE_CACHE_CB
202 select HAVE_MBAR
203 help
204 Freescale ColdFire 5480/5481/5482/5483/5484/5485 processor support.
205
206endchoice
207
208config M527x
209 bool
210 depends on (M5271 || M5275)
211 select GENERIC_CLOCKEVENTS
212 default y
213
214config M54xx
215 bool 134 bool
216 depends on (M548x || M547x)
217 default y
218
219config CLOCK_SET
220 bool "Enable setting the CPU clock frequency"
221 default n
222 help
223 On some CPU's you do not need to know what the core CPU clock
224 frequency is. On these you can disable clock setting. On some
225 traditional 68K parts, and on all ColdFire parts you need to set
226 the appropriate CPU clock frequency. On these devices many of the
227 onboard peripherals derive their timing from the master CPU clock
228 frequency.
229
230config CLOCK_FREQ
231 int "Set the core clock frequency"
232 default "66666666"
233 depends on CLOCK_SET
234 help
235 Define the CPU clock frequency in use. This is the core clock
236 frequency, it may or may not be the same as the external clock
237 crystal fitted to your board. Some processors have an internal
238 PLL and can have their frequency programmed at run time, others
239 use internal dividers. In general the kernel won't setup a PLL
240 if it is fitted (there are some exceptions). This value will be
241 specific to the exact CPU that you are using.
242
243config OLDMASK
244 bool "Old mask 5307 (1H55J) silicon"
245 depends on M5307
246 help
247 Build support for the older revision ColdFire 5307 silicon.
248 Specifically this is the 1H55J mask revision.
249
250if HAVE_CACHE_SPLIT
251choice
252 prompt "Split Cache Configuration"
253 default CACHE_I
254
255config CACHE_I
256 bool "Instruction"
257 help
258 Use all of the ColdFire CPU cache memory as an instruction cache.
259
260config CACHE_D
261 bool "Data"
262 help
263 Use all of the ColdFire CPU cache memory as a data cache.
264
265config CACHE_BOTH
266 bool "Both"
267 help
268 Split the ColdFire CPU cache, and use half as an instruction cache
269 and half as a data cache.
270endchoice
271endif
272
273if HAVE_CACHE_CB
274choice
275 prompt "Data cache mode"
276 default CACHE_WRITETHRU
277
278config CACHE_WRITETHRU
279 bool "Write-through"
280 help
281 The ColdFire CPU cache is set into Write-through mode.
282
283config CACHE_COPYBACK
284 bool "Copy-back"
285 help
286 The ColdFire CPU cache is set into Copy-back mode.
287endchoice
288endif
289
290comment "Platform"
291 135
292config PILOT3 136config PILOT3
293 bool "Pilot 1000/5000, PalmPilot Personal/Pro, or PalmIII support" 137 bool "Pilot 1000/5000, PalmPilot Personal/Pro, or PalmIII support"
294 depends on M68328 138 depends on M68328
139 select PILOT
295 help 140 help
296 Support for the Palm Pilot 1000/5000, Personal/Pro and PalmIII. 141 Support for the Palm Pilot 1000/5000, Personal/Pro and PalmIII.
297 142
@@ -302,7 +147,7 @@ config XCOPILOT_BUGS
302 Support the bugs of Xcopilot. 147 Support the bugs of Xcopilot.
303 148
304config UC5272 149config UC5272
305 bool 'Arcturus Networks uC5272 dimm board support' 150 bool "Arcturus Networks uC5272 dimm board support"
306 depends on M5272 151 depends on M5272
307 help 152 help
308 Support for the Arcturus Networks uC5272 dimm board. 153 Support for the Arcturus Networks uC5272 dimm board.
@@ -356,15 +201,23 @@ config UCQUICC
356 help 201 help
357 Support for the Lineo uCquicc board. 202 Support for the Lineo uCquicc board.
358 203
204config ARNEWSH
205 bool
206
359config ARN5206 207config ARN5206
360 bool "Arnewsh 5206 board support" 208 bool "Arnewsh 5206 board support"
361 depends on M5206 209 depends on M5206
210 select ARNEWSH
362 help 211 help
363 Support for the Arnewsh 5206 board. 212 Support for the Arnewsh 5206 board.
364 213
214config FREESCALE
215 bool
216
365config M5206eC3 217config M5206eC3
366 bool "Motorola M5206eC3 board support" 218 bool "Motorola M5206eC3 board support"
367 depends on M5206e 219 depends on M5206e
220 select FREESCALE
368 help 221 help
369 Support for the Motorola M5206eC3 board. 222 Support for the Motorola M5206eC3 board.
370 223
@@ -377,75 +230,95 @@ config ELITE
377config M5208EVB 230config M5208EVB
378 bool "Freescale M5208EVB board support" 231 bool "Freescale M5208EVB board support"
379 depends on M520x 232 depends on M520x
233 select FREESCALE
380 help 234 help
381 Support for the Freescale Coldfire M5208EVB. 235 Support for the Freescale Coldfire M5208EVB.
382 236
383config M5235EVB 237config M5235EVB
384 bool "Freescale M5235EVB support" 238 bool "Freescale M5235EVB support"
385 depends on M523x 239 depends on M523x
240 select FREESCALE
386 help 241 help
387 Support for the Freescale M5235EVB board. 242 Support for the Freescale M5235EVB board.
388 243
389config M5249C3 244config M5249C3
390 bool "Motorola M5249C3 board support" 245 bool "Motorola M5249C3 board support"
391 depends on M5249 246 depends on M5249
247 select FREESCALE
392 help 248 help
393 Support for the Motorola M5249C3 board. 249 Support for the Motorola M5249C3 board.
394 250
395config M5271EVB 251config M5271EVB
396 bool "Freescale (Motorola) M5271EVB board support" 252 bool "Freescale (Motorola) M5271EVB board support"
397 depends on M5271 253 depends on M5271
254 select FREESCALE
398 help 255 help
399 Support for the Freescale (Motorola) M5271EVB board. 256 Support for the Freescale (Motorola) M5271EVB board.
400 257
401config M5275EVB 258config M5275EVB
402 bool "Freescale (Motorola) M5275EVB board support" 259 bool "Freescale (Motorola) M5275EVB board support"
403 depends on M5275 260 depends on M5275
261 select FREESCALE
404 help 262 help
405 Support for the Freescale (Motorola) M5275EVB board. 263 Support for the Freescale (Motorola) M5275EVB board.
406 264
407config M5272C3 265config M5272C3
408 bool "Motorola M5272C3 board support" 266 bool "Motorola M5272C3 board support"
409 depends on M5272 267 depends on M5272
268 select FREESCALE
410 help 269 help
411 Support for the Motorola M5272C3 board. 270 Support for the Motorola M5272C3 board.
412 271
272config senTec
273 bool
274
413config COBRA5272 275config COBRA5272
414 bool "senTec COBRA5272 board support" 276 bool "senTec COBRA5272 board support"
415 depends on M5272 277 depends on M5272
278 select senTec
416 help 279 help
417 Support for the senTec COBRA5272 board. 280 Support for the senTec COBRA5272 board.
418 281
282config AVNET
283 bool
284
419config AVNET5282 285config AVNET5282
420 bool "Avnet 5282 board support" 286 bool "Avnet 5282 board support"
421 depends on M528x 287 depends on M528x
288 select AVNET
422 help 289 help
423 Support for the Avnet 5282 board. 290 Support for the Avnet 5282 board.
424 291
425config M5282EVB 292config M5282EVB
426 bool "Motorola M5282EVB board support" 293 bool "Motorola M5282EVB board support"
427 depends on M528x 294 depends on M528x
295 select FREESCALE
428 help 296 help
429 Support for the Motorola M5282EVB board. 297 Support for the Motorola M5282EVB board.
430 298
431config COBRA5282 299config COBRA5282
432 bool "senTec COBRA5282 board support" 300 bool "senTec COBRA5282 board support"
433 depends on M528x 301 depends on M528x
302 select senTec
434 help 303 help
435 Support for the senTec COBRA5282 board. 304 Support for the senTec COBRA5282 board.
436 305
306config EMAC_INC
307 bool
308
437config SOM5282EM 309config SOM5282EM
438 bool "EMAC.Inc SOM5282EM board support" 310 bool "EMAC.Inc SOM5282EM board support"
439 depends on M528x 311 depends on M528x
312 select EMAC_INC
440 help 313 help
441 Support for the EMAC.Inc SOM5282EM module. 314 Support for the EMAC.Inc SOM5282EM module.
442 315
443config WILDFIRE 316config WILDFIRE
444 bool "Intec Automation Inc. WildFire board support" 317 bool "Intec Automation Inc. WildFire board support"
445 depends on M528x 318 depends on M528x
446 help 319 help
447 Support for the Intec Automation Inc. WildFire. 320 Support for the Intec Automation Inc. WildFire.
448 321
449config WILDFIREMOD 322config WILDFIREMOD
450 bool "Intec Automation Inc. WildFire module support" 323 bool "Intec Automation Inc. WildFire module support"
451 depends on M528x 324 depends on M528x
@@ -455,12 +328,14 @@ config WILDFIREMOD
455config ARN5307 328config ARN5307
456 bool "Arnewsh 5307 board support" 329 bool "Arnewsh 5307 board support"
457 depends on M5307 330 depends on M5307
331 select ARNEWSH
458 help 332 help
459 Support for the Arnewsh 5307 board. 333 Support for the Arnewsh 5307 board.
460 334
461config M5307C3 335config M5307C3
462 bool "Motorola M5307C3 board support" 336 bool "Motorola M5307C3 board support"
463 depends on M5307 337 depends on M5307
338 select FREESCALE
464 help 339 help
465 Support for the Motorola M5307C3 board. 340 Support for the Motorola M5307C3 board.
466 341
@@ -473,6 +348,7 @@ config SECUREEDGEMP3
473config M5329EVB 348config M5329EVB
474 bool "Freescale (Motorola) M5329EVB board support" 349 bool "Freescale (Motorola) M5329EVB board support"
475 depends on M532x 350 depends on M532x
351 select FREESCALE
476 help 352 help
477 Support for the Freescale (Motorola) M5329EVB board. 353 Support for the Freescale (Motorola) M5329EVB board.
478 354
@@ -485,6 +361,7 @@ config COBRA5329
485config M5407C3 361config M5407C3
486 bool "Motorola M5407C3 board support" 362 bool "Motorola M5407C3 board support"
487 depends on M5407 363 depends on M5407
364 select FREESCALE
488 help 365 help
489 Support for the Motorola M5407C3 board. 366 Support for the Motorola M5407C3 board.
490 367
@@ -494,21 +371,27 @@ config FIREBEE
494 help 371 help
495 Support for the FireBee ColdFire 5475 based board. 372 Support for the FireBee ColdFire 5475 based board.
496 373
374config HW_FEITH
375 bool
376
497config CLEOPATRA 377config CLEOPATRA
498 bool "Feith CLEOPATRA board support" 378 bool "Feith CLEOPATRA board support"
499 depends on (M5307 || M5407) 379 depends on (M5307 || M5407)
380 select HW_FEITH
500 help 381 help
501 Support for the Feith Cleopatra boards. 382 Support for the Feith Cleopatra boards.
502 383
503config CANCam 384config CANCam
504 bool "Feith CANCam board support" 385 bool "Feith CANCam board support"
505 depends on M5272 386 depends on M5272
387 select HW_FEITH
506 help 388 help
507 Support for the Feith CANCam board. 389 Support for the Feith CANCam board.
508 390
509config SCALES 391config SCALES
510 bool "Feith SCALES board support" 392 bool "Feith SCALES board support"
511 depends on M5272 393 depends on M5272
394 select HW_FEITH
512 help 395 help
513 Support for the Feith SCALES board. 396 Support for the Feith SCALES board.
514 397
@@ -524,9 +407,13 @@ config SNAPGEAR
524 help 407 help
525 Special additional support for SnapGear router boards. 408 Special additional support for SnapGear router boards.
526 409
410config SNEHA
411 bool
412
527config CPU16B 413config CPU16B
528 bool "Sneha Technologies S.L. Sarasvati board support" 414 bool "Sneha Technologies S.L. Sarasvati board support"
529 depends on M5272 415 depends on M5272
416 select SNEHA
530 help 417 help
531 Support for the SNEHA CPU16B board. 418 Support for the SNEHA CPU16B board.
532 419
@@ -536,12 +423,21 @@ config MOD5272
536 help 423 help
537 Support for the Netburner MOD-5272 board. 424 Support for the Netburner MOD-5272 board.
538 425
426config SAVANT
427 bool
428
539config SAVANTrosie1 429config SAVANTrosie1
540 bool "Savant Rosie1 board support" 430 bool "Savant Rosie1 board support"
541 depends on M523x 431 depends on M523x
432 select SAVANT
542 help 433 help
543 Support for the Savant Rosie1 board. 434 Support for the Savant Rosie1 board.
544 435
436
437if !MMU || COLDFIRE
438
439comment "Machine Options"
440
545config ROMFS_FROM_ROM 441config ROMFS_FROM_ROM
546 bool "ROMFS image not RAM resident" 442 bool "ROMFS image not RAM resident"
547 depends on (NETtel || SNAPGEAR) 443 depends on (NETtel || SNAPGEAR)
@@ -549,51 +445,6 @@ config ROMFS_FROM_ROM
549 The ROMfs filesystem will stay resident in the FLASH/ROM, not be 445 The ROMfs filesystem will stay resident in the FLASH/ROM, not be
550 moved into RAM. 446 moved into RAM.
551 447
552config PILOT
553 bool
554 default y
555 depends on (PILOT3 || PILOT5)
556
557config ARNEWSH
558 bool
559 default y
560 depends on (ARN5206 || ARN5307)
561
562config FREESCALE
563 bool
564 default y
565 depends on (M5206eC3 || M5208EVB || M5235EVB || M5249C3 || M5271EVB || M5272C3 || M5275EVB || M5282EVB || M5307C3 || M5329EVB || M5407C3)
566
567config HW_FEITH
568 bool
569 default y
570 depends on (CLEOPATRA || CANCam || SCALES)
571
572config senTec
573 bool
574 default y
575 depends on (COBRA5272 || COBRA5282)
576
577config EMAC_INC
578 bool
579 default y
580 depends on (SOM5282EM)
581
582config SNEHA
583 bool
584 default y
585 depends on CPU16B
586
587config SAVANT
588 bool
589 default y
590 depends on SAVANTrosie1
591
592config AVNET
593 bool
594 default y
595 depends on (AVNET5282)
596
597config UBOOT 448config UBOOT
598 bool "Support for U-Boot command line parameters" 449 bool "Support for U-Boot command line parameters"
599 help 450 help
@@ -772,16 +623,4 @@ config ROMKERNEL
772 623
773endchoice 624endchoice
774 625
775if COLDFIRE
776source "kernel/Kconfig.preempt"
777endif 626endif
778
779source "kernel/time/Kconfig"
780
781config ISA_DMA_API
782 bool
783 depends on !M5272
784 default y
785
786source "drivers/pcmcia/Kconfig"
787
diff --git a/arch/m68k/Kconfig.mmu b/arch/m68k/Kconfig.mmu
deleted file mode 100644
index 13e20bbc4079..000000000000
--- a/arch/m68k/Kconfig.mmu
+++ /dev/null
@@ -1,411 +0,0 @@
1config GENERIC_IOMAP
2 bool
3 default y
4
5config ARCH_MAY_HAVE_PC_FDC
6 bool
7 depends on BROKEN && (Q40 || SUN3X)
8 default y
9
10config ARCH_USES_GETTIMEOFFSET
11 def_bool y
12
13config EISA
14 bool
15 ---help---
16 The Extended Industry Standard Architecture (EISA) bus was
17 developed as an open alternative to the IBM MicroChannel bus.
18
19 The EISA bus provided some of the features of the IBM MicroChannel
20 bus while maintaining backward compatibility with cards made for
21 the older ISA bus. The EISA bus saw limited use between 1988 and
22 1995 when it was made obsolete by the PCI bus.
23
24 Say Y here if you are building a kernel for an EISA-based machine.
25
26 Otherwise, say N.
27
28config MCA
29 bool
30 help
31 MicroChannel Architecture is found in some IBM PS/2 machines and
32 laptops. It is a bus system similar to PCI or ISA. See
33 <file:Documentation/mca.txt> (and especially the web page given
34 there) before attempting to build an MCA bus kernel.
35
36config PCMCIA
37 tristate
38 ---help---
39 Say Y here if you want to attach PCMCIA- or PC-cards to your Linux
40 computer. These are credit-card size devices such as network cards,
41 modems or hard drives often used with laptops computers. There are
42 actually two varieties of these cards: the older 16 bit PCMCIA cards
43 and the newer 32 bit CardBus cards. If you want to use CardBus
44 cards, you need to say Y here and also to "CardBus support" below.
45
46 To use your PC-cards, you will need supporting software from David
47 Hinds' pcmcia-cs package (see the file <file:Documentation/Changes>
48 for location). Please also read the PCMCIA-HOWTO, available from
49 <http://www.tldp.org/docs.html#howto>.
50
51 To compile this driver as modules, choose M here: the
52 modules will be called pcmcia_core and ds.
53
54config AMIGA
55 bool "Amiga support"
56 select MMU_MOTOROLA if MMU
57 help
58 This option enables support for the Amiga series of computers. If
59 you plan to use this kernel on an Amiga, say Y here and browse the
60 material available in <file:Documentation/m68k>; otherwise say N.
61
62config ATARI
63 bool "Atari support"
64 select MMU_MOTOROLA if MMU
65 help
66 This option enables support for the 68000-based Atari series of
67 computers (including the TT, Falcon and Medusa). If you plan to use
68 this kernel on an Atari, say Y here and browse the material
69 available in <file:Documentation/m68k>; otherwise say N.
70
71config MAC
72 bool "Macintosh support"
73 select MMU_MOTOROLA if MMU
74 help
75 This option enables support for the Apple Macintosh series of
76 computers (yes, there is experimental support now, at least for part
77 of the series).
78
79 Say N unless you're willing to code the remaining necessary support.
80 ;)
81
82config NUBUS
83 bool
84 depends on MAC
85 default y
86
87config M68K_L2_CACHE
88 bool
89 depends on MAC
90 default y
91
92config APOLLO
93 bool "Apollo support"
94 select MMU_MOTOROLA if MMU
95 help
96 Say Y here if you want to run Linux on an MC680x0-based Apollo
97 Domain workstation such as the DN3500.
98
99config VME
100 bool "VME (Motorola and BVM) support"
101 select MMU_MOTOROLA if MMU
102 help
103 Say Y here if you want to build a kernel for a 680x0 based VME
104 board. Boards currently supported include Motorola boards MVME147,
105 MVME162, MVME166, MVME167, MVME172, and MVME177. BVME4000 and
106 BVME6000 boards from BVM Ltd are also supported.
107
108config MVME147
109 bool "MVME147 support"
110 depends on VME
111 help
112 Say Y to include support for early Motorola VME boards. This will
113 build a kernel which can run on MVME147 single-board computers. If
114 you select this option you will have to select the appropriate
115 drivers for SCSI, Ethernet and serial ports later on.
116
117config MVME16x
118 bool "MVME162, 166 and 167 support"
119 depends on VME
120 help
121 Say Y to include support for Motorola VME boards. This will build a
122 kernel which can run on MVME162, MVME166, MVME167, MVME172, and
123 MVME177 boards. If you select this option you will have to select
124 the appropriate drivers for SCSI, Ethernet and serial ports later
125 on.
126
127config BVME6000
128 bool "BVME4000 and BVME6000 support"
129 depends on VME
130 help
131 Say Y to include support for VME boards from BVM Ltd. This will
132 build a kernel which can run on BVME4000 and BVME6000 boards. If
133 you select this option you will have to select the appropriate
134 drivers for SCSI, Ethernet and serial ports later on.
135
136config HP300
137 bool "HP9000/300 and HP9000/400 support"
138 select MMU_MOTOROLA if MMU
139 help
140 This option enables support for the HP9000/300 and HP9000/400 series
141 of workstations. Support for these machines is still somewhat
142 experimental. If you plan to try to use the kernel on such a machine
143 say Y here.
144 Everybody else says N.
145
146config DIO
147 bool "DIO bus support"
148 depends on HP300
149 default y
150 help
151 Say Y here to enable support for the "DIO" expansion bus used in
152 HP300 machines. If you are using such a system you almost certainly
153 want this.
154
155config SUN3X
156 bool "Sun3x support"
157 select MMU_MOTOROLA if MMU
158 select M68030
159 help
160 This option enables support for the Sun 3x series of workstations.
161 Be warned that this support is very experimental.
162 Note that Sun 3x kernels are not compatible with Sun 3 hardware.
163 General Linux information on the Sun 3x series (now discontinued)
164 is at <http://www.angelfire.com/ca2/tech68k/sun3.html>.
165
166 If you don't want to compile a kernel for a Sun 3x, say N.
167
168config Q40
169 bool "Q40/Q60 support"
170 select MMU_MOTOROLA if MMU
171 help
172 The Q40 is a Motorola 68040-based successor to the Sinclair QL
173 manufactured in Germany. There is an official Q40 home page at
174 <http://www.q40.de/>. This option enables support for the Q40 and
175 Q60. Select your CPU below. For 68LC060 don't forget to enable FPU
176 emulation.
177
178config SUN3
179 bool "Sun3 support"
180 depends on !MMU_MOTOROLA
181 select MMU_SUN3 if MMU
182 select M68020
183 help
184 This option enables support for the Sun 3 series of workstations
185 (3/50, 3/60, 3/1xx, 3/2xx systems). Enabling this option requires
186 that all other hardware types must be disabled, as Sun 3 kernels
187 are incompatible with all other m68k targets (including Sun 3x!).
188
189 If you don't want to compile a kernel exclusively for a Sun 3, say N.
190
191config NATFEAT
192 bool "ARAnyM emulator support"
193 depends on ATARI
194 help
195 This option enables support for ARAnyM native features, such as
196 access to a disk image as /dev/hda.
197
198config NFBLOCK
199 tristate "NatFeat block device support"
200 depends on BLOCK && NATFEAT
201 help
202 Say Y to include support for the ARAnyM NatFeat block device
203 which allows direct access to the hard drives without using
204 the hardware emulation.
205
206config NFCON
207 tristate "NatFeat console driver"
208 depends on NATFEAT
209 help
210 Say Y to include support for the ARAnyM NatFeat console driver
211 which allows the console output to be redirected to the stderr
212 output of ARAnyM.
213
214config NFETH
215 tristate "NatFeat Ethernet support"
216 depends on NET_ETHERNET && NATFEAT
217 help
218 Say Y to include support for the ARAnyM NatFeat network device
219 which will emulate a regular ethernet device while presenting an
220 ethertap device to the host system.
221
222comment "Processor type"
223
224config M68020
225 bool "68020 support"
226 help
227 If you anticipate running this kernel on a computer with a MC68020
228 processor, say Y. Otherwise, say N. Note that the 68020 requires a
229 68851 MMU (Memory Management Unit) to run Linux/m68k, except on the
230 Sun 3, which provides its own version.
231
232config M68030
233 bool "68030 support"
234 depends on !MMU_SUN3
235 help
236 If you anticipate running this kernel on a computer with a MC68030
237 processor, say Y. Otherwise, say N. Note that a MC68EC030 will not
238 work, as it does not include an MMU (Memory Management Unit).
239
240config M68040
241 bool "68040 support"
242 depends on !MMU_SUN3
243 help
244 If you anticipate running this kernel on a computer with a MC68LC040
245 or MC68040 processor, say Y. Otherwise, say N. Note that an
246 MC68EC040 will not work, as it does not include an MMU (Memory
247 Management Unit).
248
249config M68060
250 bool "68060 support"
251 depends on !MMU_SUN3
252 help
253 If you anticipate running this kernel on a computer with a MC68060
254 processor, say Y. Otherwise, say N.
255
256config MMU_MOTOROLA
257 bool
258
259config MMU_SUN3
260 bool
261 depends on MMU && !MMU_MOTOROLA
262
263config M68KFPU_EMU
264 bool "Math emulation support (EXPERIMENTAL)"
265 depends on EXPERIMENTAL
266 help
267 At some point in the future, this will cause floating-point math
268 instructions to be emulated by the kernel on machines that lack a
269 floating-point math coprocessor. Thrill-seekers and chronically
270 sleep-deprived psychotic hacker types can say Y now, everyone else
271 should probably wait a while.
272
273config M68KFPU_EMU_EXTRAPREC
274 bool "Math emulation extra precision"
275 depends on M68KFPU_EMU
276 help
277 The fpu uses normally a few bit more during calculations for
278 correct rounding, the emulator can (often) do the same but this
279 extra calculation can cost quite some time, so you can disable
280 it here. The emulator will then "only" calculate with a 64 bit
281 mantissa and round slightly incorrect, what is more than enough
282 for normal usage.
283
284config M68KFPU_EMU_ONLY
285 bool "Math emulation only kernel"
286 depends on M68KFPU_EMU
287 help
288 This option prevents any floating-point instructions from being
289 compiled into the kernel, thereby the kernel doesn't save any
290 floating point context anymore during task switches, so this
291 kernel will only be usable on machines without a floating-point
292 math coprocessor. This makes the kernel a bit faster as no tests
293 needs to be executed whether a floating-point instruction in the
294 kernel should be executed or not.
295
296config ADVANCED
297 bool "Advanced configuration options"
298 ---help---
299 This gives you access to some advanced options for the CPU. The
300 defaults should be fine for most users, but these options may make
301 it possible for you to improve performance somewhat if you know what
302 you are doing.
303
304 Note that the answer to this question won't directly affect the
305 kernel: saying N will just cause the configurator to skip all
306 the questions about these options.
307
308 Most users should say N to this question.
309
310config RMW_INSNS
311 bool "Use read-modify-write instructions"
312 depends on ADVANCED
313 ---help---
314 This allows to use certain instructions that work with indivisible
315 read-modify-write bus cycles. While this is faster than the
316 workaround of disabling interrupts, it can conflict with DMA
317 ( = direct memory access) on many Amiga systems, and it is also said
318 to destabilize other machines. It is very likely that this will
319 cause serious problems on any Amiga or Atari Medusa if set. The only
320 configuration where it should work are 68030-based Ataris, where it
321 apparently improves performance. But you've been warned! Unless you
322 really know what you are doing, say N. Try Y only if you're quite
323 adventurous.
324
325config SINGLE_MEMORY_CHUNK
326 bool "Use one physical chunk of memory only" if ADVANCED && !SUN3
327 default y if SUN3
328 select NEED_MULTIPLE_NODES
329 help
330 Ignore all but the first contiguous chunk of physical memory for VM
331 purposes. This will save a few bytes kernel size and may speed up
332 some operations. Say N if not sure.
333
334config 060_WRITETHROUGH
335 bool "Use write-through caching for 68060 supervisor accesses"
336 depends on ADVANCED && M68060
337 ---help---
338 The 68060 generally uses copyback caching of recently accessed data.
339 Copyback caching means that memory writes will be held in an on-chip
340 cache and only written back to memory some time later. Saying Y
341 here will force supervisor (kernel) accesses to use writethrough
342 caching. Writethrough caching means that data is written to memory
343 straight away, so that cache and memory data always agree.
344 Writethrough caching is less efficient, but is needed for some
345 drivers on 68060 based systems where the 68060 bus snooping signal
346 is hardwired on. The 53c710 SCSI driver is known to suffer from
347 this problem.
348
349config ARCH_DISCONTIGMEM_ENABLE
350 def_bool !SINGLE_MEMORY_CHUNK
351
352config NODES_SHIFT
353 int
354 default "3"
355 depends on !SINGLE_MEMORY_CHUNK
356
357config ZORRO
358 bool "Amiga Zorro (AutoConfig) bus support"
359 depends on AMIGA
360 help
361 This enables support for the Zorro bus in the Amiga. If you have
362 expansion cards in your Amiga that conform to the Amiga
363 AutoConfig(tm) specification, say Y, otherwise N. Note that even
364 expansion cards that do not fit in the Zorro slots but fit in e.g.
365 the CPU slot may fall in this category, so you have to say Y to let
366 Linux use these.
367
368config AMIGA_PCMCIA
369 bool "Amiga 1200/600 PCMCIA support (EXPERIMENTAL)"
370 depends on AMIGA && EXPERIMENTAL
371 help
372 Include support in the kernel for pcmcia on Amiga 1200 and Amiga
373 600. If you intend to use pcmcia cards say Y; otherwise say N.
374
375config HEARTBEAT
376 bool "Use power LED as a heartbeat" if AMIGA || APOLLO || ATARI || MAC ||Q40
377 default y if !AMIGA && !APOLLO && !ATARI && !MAC && !Q40 && HP300
378 help
379 Use the power-on LED on your machine as a load meter. The exact
380 behavior is platform-dependent, but normally the flash frequency is
381 a hyperbolic function of the 5-minute load average.
382
383# We have a dedicated heartbeat LED. :-)
384config PROC_HARDWARE
385 bool "/proc/hardware support"
386 help
387 Say Y here to support the /proc/hardware file, which gives you
388 access to information about the machine you're running on,
389 including the model, CPU, MMU, clock speed, BogoMIPS rating,
390 and memory size.
391
392config ISA
393 bool
394 depends on Q40 || AMIGA_PCMCIA
395 default y
396 help
397 Find out whether you have ISA slots on your motherboard. ISA is the
398 name of a bus system, i.e. the way the CPU talks to the other stuff
399 inside your box. Other bus systems are PCI, EISA, MicroChannel
400 (MCA) or VESA. ISA is an older system, now being displaced by PCI;
401 newer boards don't support it. If you have ISA, say Y, otherwise N.
402
403config GENERIC_ISA_DMA
404 bool
405 depends on Q40 || AMIGA_PCMCIA
406 default y
407
408source "drivers/pci/Kconfig"
409
410source "drivers/zorro/Kconfig"
411