13e20bbc4079d9def59115f4462b4a93bbc53fed
[linux-2.6.git] / arch / m68k / Kconfig.mmu
1 config GENERIC_IOMAP
2         bool
3         default y
4
5 config ARCH_MAY_HAVE_PC_FDC
6         bool
7         depends on BROKEN && (Q40 || SUN3X)
8         default y
9
10 config ARCH_USES_GETTIMEOFFSET
11         def_bool y
12
13 config 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
28 config 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
36 config 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
54 config 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
62 config 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
71 config 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
82 config NUBUS
83         bool
84         depends on MAC
85         default y
86
87 config M68K_L2_CACHE
88         bool
89         depends on MAC
90         default y
91
92 config 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
99 config 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
108 config 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
117 config 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
127 config 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
136 config 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
146 config 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
155 config 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
168 config 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
178 config 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
191 config 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
198 config 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
206 config 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
214 config 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
222 comment "Processor type"
223
224 config 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
232 config 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
240 config 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
249 config 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
256 config MMU_MOTOROLA
257         bool
258
259 config MMU_SUN3
260         bool
261         depends on MMU && !MMU_MOTOROLA
262
263 config 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
273 config 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
284 config 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
296 config 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
310 config 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
325 config 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
334 config 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
349 config ARCH_DISCONTIGMEM_ENABLE
350         def_bool !SINGLE_MEMORY_CHUNK
351
352 config NODES_SHIFT
353         int
354         default "3"
355         depends on !SINGLE_MEMORY_CHUNK
356
357 config 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
368 config 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
375 config 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. :-)
384 config 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
392 config 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
403 config GENERIC_ISA_DMA
404         bool
405         depends on Q40 || AMIGA_PCMCIA
406         default y
407
408 source "drivers/pci/Kconfig"
409
410 source "drivers/zorro/Kconfig"
411