xref: /openbmc/linux/arch/m68k/Kconfig (revision baa7eb025ab14f3cba2e35c0a8648f9c9f01d24f)
1config M68K
2	bool
3	default y
4	select HAVE_AOUT
5	select HAVE_IDE
6	select GENERIC_ATOMIC64
7
8config MMU
9	bool
10	default y
11
12config RWSEM_GENERIC_SPINLOCK
13	bool
14	default y
15
16config RWSEM_XCHGADD_ALGORITHM
17	bool
18
19config ARCH_HAS_ILOG2_U32
20	bool
21	default n
22
23config ARCH_HAS_ILOG2_U64
24	bool
25	default n
26
27config GENERIC_HWEIGHT
28	bool
29	default y
30
31config GENERIC_CALIBRATE_DELAY
32	bool
33	default y
34
35config TIME_LOW_RES
36	bool
37	default y
38
39config GENERIC_IOMAP
40	bool
41	default y
42
43config ARCH_MAY_HAVE_PC_FDC
44	bool
45	depends on BROKEN && (Q40 || SUN3X)
46	default y
47
48config NO_IOPORT
49	def_bool y
50
51config NO_DMA
52	def_bool SUN3
53
54config HZ
55	int
56	default 100
57
58config ARCH_USES_GETTIMEOFFSET
59	def_bool y
60
61source "init/Kconfig"
62
63source "kernel/Kconfig.freezer"
64
65menu "Platform dependent setup"
66
67config EISA
68	bool
69	---help---
70	  The Extended Industry Standard Architecture (EISA) bus was
71	  developed as an open alternative to the IBM MicroChannel bus.
72
73	  The EISA bus provided some of the features of the IBM MicroChannel
74	  bus while maintaining backward compatibility with cards made for
75	  the older ISA bus.  The EISA bus saw limited use between 1988 and
76	  1995 when it was made obsolete by the PCI bus.
77
78	  Say Y here if you are building a kernel for an EISA-based machine.
79
80	  Otherwise, say N.
81
82config MCA
83	bool
84	help
85	  MicroChannel Architecture is found in some IBM PS/2 machines and
86	  laptops.  It is a bus system similar to PCI or ISA. See
87	  <file:Documentation/mca.txt> (and especially the web page given
88	  there) before attempting to build an MCA bus kernel.
89
90config PCMCIA
91	tristate
92	---help---
93	  Say Y here if you want to attach PCMCIA- or PC-cards to your Linux
94	  computer.  These are credit-card size devices such as network cards,
95	  modems or hard drives often used with laptops computers.  There are
96	  actually two varieties of these cards: the older 16 bit PCMCIA cards
97	  and the newer 32 bit CardBus cards.  If you want to use CardBus
98	  cards, you need to say Y here and also to "CardBus support" below.
99
100	  To use your PC-cards, you will need supporting software from David
101	  Hinds' pcmcia-cs package (see the file <file:Documentation/Changes>
102	  for location).  Please also read the PCMCIA-HOWTO, available from
103	  <http://www.tldp.org/docs.html#howto>.
104
105	  To compile this driver as modules, choose M here: the
106	  modules will be called pcmcia_core and ds.
107
108config AMIGA
109	bool "Amiga support"
110	select MMU_MOTOROLA if MMU
111	help
112	  This option enables support for the Amiga series of computers. If
113	  you plan to use this kernel on an Amiga, say Y here and browse the
114	  material available in <file:Documentation/m68k>; otherwise say N.
115
116config ATARI
117	bool "Atari support"
118	select MMU_MOTOROLA if MMU
119	help
120	  This option enables support for the 68000-based Atari series of
121	  computers (including the TT, Falcon and Medusa). If you plan to use
122	  this kernel on an Atari, say Y here and browse the material
123	  available in <file:Documentation/m68k>; otherwise say N.
124
125config MAC
126	bool "Macintosh support"
127	select MMU_MOTOROLA if MMU
128	help
129	  This option enables support for the Apple Macintosh series of
130	  computers (yes, there is experimental support now, at least for part
131	  of the series).
132
133	  Say N unless you're willing to code the remaining necessary support.
134	  ;)
135
136config NUBUS
137	bool
138	depends on MAC
139	default y
140
141config M68K_L2_CACHE
142	bool
143	depends on MAC
144	default y
145
146config APOLLO
147	bool "Apollo support"
148	select MMU_MOTOROLA if MMU
149	help
150	  Say Y here if you want to run Linux on an MC680x0-based Apollo
151	  Domain workstation such as the DN3500.
152
153config VME
154	bool "VME (Motorola and BVM) support"
155	select MMU_MOTOROLA if MMU
156	help
157	  Say Y here if you want to build a kernel for a 680x0 based VME
158	  board.  Boards currently supported include Motorola boards MVME147,
159	  MVME162, MVME166, MVME167, MVME172, and MVME177.  BVME4000 and
160	  BVME6000 boards from BVM Ltd are also supported.
161
162config MVME147
163	bool "MVME147 support"
164	depends on VME
165	help
166	  Say Y to include support for early Motorola VME boards.  This will
167	  build a kernel which can run on MVME147 single-board computers.  If
168	  you select this option you will have to select the appropriate
169	  drivers for SCSI, Ethernet and serial ports later on.
170
171config MVME16x
172	bool "MVME162, 166 and 167 support"
173	depends on VME
174	help
175	  Say Y to include support for Motorola VME boards.  This will build a
176	  kernel which can run on MVME162, MVME166, MVME167, MVME172, and
177	  MVME177 boards.  If you select this option you will have to select
178	  the appropriate drivers for SCSI, Ethernet and serial ports later
179	  on.
180
181config BVME6000
182	bool "BVME4000 and BVME6000 support"
183	depends on VME
184	help
185	  Say Y to include support for VME boards from BVM Ltd.  This will
186	  build a kernel which can run on BVME4000 and BVME6000 boards.  If
187	  you select this option you will have to select the appropriate
188	  drivers for SCSI, Ethernet and serial ports later on.
189
190config HP300
191	bool "HP9000/300 and HP9000/400 support"
192	select MMU_MOTOROLA if MMU
193	help
194	  This option enables support for the HP9000/300 and HP9000/400 series
195	  of workstations. Support for these machines is still somewhat
196	  experimental. If you plan to try to use the kernel on such a machine
197	  say Y here.
198	  Everybody else says N.
199
200config DIO
201	bool "DIO bus support"
202	depends on HP300
203	default y
204	help
205	  Say Y here to enable support for the "DIO" expansion bus used in
206	  HP300 machines. If you are using such a system you almost certainly
207	  want this.
208
209config SUN3X
210	bool "Sun3x support"
211	select MMU_MOTOROLA if MMU
212	select M68030
213	help
214	  This option enables support for the Sun 3x series of workstations.
215	  Be warned that this support is very experimental.
216	  Note that Sun 3x kernels are not compatible with Sun 3 hardware.
217	  General Linux information on the Sun 3x series (now discontinued)
218	  is at <http://www.angelfire.com/ca2/tech68k/sun3.html>.
219
220	  If you don't want to compile a kernel for a Sun 3x, say N.
221
222config Q40
223	bool "Q40/Q60 support"
224	select MMU_MOTOROLA if MMU
225	help
226	  The Q40 is a Motorola 68040-based successor to the Sinclair QL
227	  manufactured in Germany.  There is an official Q40 home page at
228	  <http://www.q40.de/>.  This option enables support for the Q40 and
229	  Q60. Select your CPU below.  For 68LC060 don't forget to enable FPU
230	  emulation.
231
232config SUN3
233	bool "Sun3 support"
234	depends on !MMU_MOTOROLA
235	select MMU_SUN3 if MMU
236	select M68020
237	help
238	  This option enables support for the Sun 3 series of workstations
239	  (3/50, 3/60, 3/1xx, 3/2xx systems). Enabling this option requires
240	  that all other hardware types must be disabled, as Sun 3 kernels
241	  are incompatible with all other m68k targets (including Sun 3x!).
242
243	  If you don't want to compile a kernel exclusively for a Sun 3, say N.
244
245comment "Processor type"
246
247config M68020
248	bool "68020 support"
249	help
250	  If you anticipate running this kernel on a computer with a MC68020
251	  processor, say Y. Otherwise, say N. Note that the 68020 requires a
252	  68851 MMU (Memory Management Unit) to run Linux/m68k, except on the
253	  Sun 3, which provides its own version.
254
255config M68030
256	bool "68030 support"
257	depends on !MMU_SUN3
258	help
259	  If you anticipate running this kernel on a computer with a MC68030
260	  processor, say Y. Otherwise, say N. Note that a MC68EC030 will not
261	  work, as it does not include an MMU (Memory Management Unit).
262
263config M68040
264	bool "68040 support"
265	depends on !MMU_SUN3
266	help
267	  If you anticipate running this kernel on a computer with a MC68LC040
268	  or MC68040 processor, say Y. Otherwise, say N. Note that an
269	  MC68EC040 will not work, as it does not include an MMU (Memory
270	  Management Unit).
271
272config M68060
273	bool "68060 support"
274	depends on !MMU_SUN3
275	help
276	  If you anticipate running this kernel on a computer with a MC68060
277	  processor, say Y. Otherwise, say N.
278
279config MMU_MOTOROLA
280	bool
281
282config MMU_SUN3
283	bool
284	depends on MMU && !MMU_MOTOROLA
285
286config M68KFPU_EMU
287	bool "Math emulation support (EXPERIMENTAL)"
288	depends on EXPERIMENTAL
289	help
290	  At some point in the future, this will cause floating-point math
291	  instructions to be emulated by the kernel on machines that lack a
292	  floating-point math coprocessor.  Thrill-seekers and chronically
293	  sleep-deprived psychotic hacker types can say Y now, everyone else
294	  should probably wait a while.
295
296config M68KFPU_EMU_EXTRAPREC
297	bool "Math emulation extra precision"
298	depends on M68KFPU_EMU
299	help
300	  The fpu uses normally a few bit more during calculations for
301	  correct rounding, the emulator can (often) do the same but this
302	  extra calculation can cost quite some time, so you can disable
303	  it here. The emulator will then "only" calculate with a 64 bit
304	  mantissa and round slightly incorrect, what is more than enough
305	  for normal usage.
306
307config M68KFPU_EMU_ONLY
308	bool "Math emulation only kernel"
309	depends on M68KFPU_EMU
310	help
311	  This option prevents any floating-point instructions from being
312	  compiled into the kernel, thereby the kernel doesn't save any
313	  floating point context anymore during task switches, so this
314	  kernel will only be usable on machines without a floating-point
315	  math coprocessor. This makes the kernel a bit faster as no tests
316	  needs to be executed whether a floating-point instruction in the
317	  kernel should be executed or not.
318
319config ADVANCED
320	bool "Advanced configuration options"
321	---help---
322	  This gives you access to some advanced options for the CPU. The
323	  defaults should be fine for most users, but these options may make
324	  it possible for you to improve performance somewhat if you know what
325	  you are doing.
326
327	  Note that the answer to this question won't directly affect the
328	  kernel: saying N will just cause the configurator to skip all
329	  the questions about these options.
330
331	  Most users should say N to this question.
332
333config RMW_INSNS
334	bool "Use read-modify-write instructions"
335	depends on ADVANCED
336	---help---
337	  This allows to use certain instructions that work with indivisible
338	  read-modify-write bus cycles. While this is faster than the
339	  workaround of disabling interrupts, it can conflict with DMA
340	  ( = direct memory access) on many Amiga systems, and it is also said
341	  to destabilize other machines. It is very likely that this will
342	  cause serious problems on any Amiga or Atari Medusa if set. The only
343	  configuration where it should work are 68030-based Ataris, where it
344	  apparently improves performance. But you've been warned! Unless you
345	  really know what you are doing, say N. Try Y only if you're quite
346	  adventurous.
347
348config SINGLE_MEMORY_CHUNK
349	bool "Use one physical chunk of memory only" if ADVANCED && !SUN3
350	default y if SUN3
351	select NEED_MULTIPLE_NODES
352	help
353	  Ignore all but the first contiguous chunk of physical memory for VM
354	  purposes.  This will save a few bytes kernel size and may speed up
355	  some operations.  Say N if not sure.
356
357config 060_WRITETHROUGH
358	bool "Use write-through caching for 68060 supervisor accesses"
359	depends on ADVANCED && M68060
360	---help---
361	  The 68060 generally uses copyback caching of recently accessed data.
362	  Copyback caching means that memory writes will be held in an on-chip
363	  cache and only written back to memory some time later.  Saying Y
364	  here will force supervisor (kernel) accesses to use writethrough
365	  caching.  Writethrough caching means that data is written to memory
366	  straight away, so that cache and memory data always agree.
367	  Writethrough caching is less efficient, but is needed for some
368	  drivers on 68060 based systems where the 68060 bus snooping signal
369	  is hardwired on.  The 53c710 SCSI driver is known to suffer from
370	  this problem.
371
372config ARCH_DISCONTIGMEM_ENABLE
373	def_bool !SINGLE_MEMORY_CHUNK
374
375config NODES_SHIFT
376	int
377	default "3"
378	depends on !SINGLE_MEMORY_CHUNK
379
380source "mm/Kconfig"
381
382endmenu
383
384menu "General setup"
385
386source "fs/Kconfig.binfmt"
387
388config ZORRO
389	bool "Amiga Zorro (AutoConfig) bus support"
390	depends on AMIGA
391	help
392	  This enables support for the Zorro bus in the Amiga. If you have
393	  expansion cards in your Amiga that conform to the Amiga
394	  AutoConfig(tm) specification, say Y, otherwise N. Note that even
395	  expansion cards that do not fit in the Zorro slots but fit in e.g.
396	  the CPU slot may fall in this category, so you have to say Y to let
397	  Linux use these.
398
399config AMIGA_PCMCIA
400	bool "Amiga 1200/600 PCMCIA support (EXPERIMENTAL)"
401	depends on AMIGA && EXPERIMENTAL
402	help
403	  Include support in the kernel for pcmcia on Amiga 1200 and Amiga
404	  600. If you intend to use pcmcia cards say Y; otherwise say N.
405
406config STRAM_PROC
407	bool "ST-RAM statistics in /proc"
408	depends on ATARI
409	help
410	  Say Y here to report ST-RAM usage statistics in /proc/stram.
411
412config HEARTBEAT
413	bool "Use power LED as a heartbeat" if AMIGA || APOLLO || ATARI || MAC ||Q40
414	default y if !AMIGA && !APOLLO && !ATARI && !MAC && !Q40 && HP300
415	help
416	  Use the power-on LED on your machine as a load meter.  The exact
417	  behavior is platform-dependent, but normally the flash frequency is
418	  a hyperbolic function of the 5-minute load average.
419
420# We have a dedicated heartbeat LED. :-)
421config PROC_HARDWARE
422	bool "/proc/hardware support"
423	help
424	  Say Y here to support the /proc/hardware file, which gives you
425	  access to information about the machine you're running on,
426	  including the model, CPU, MMU, clock speed, BogoMIPS rating,
427	  and memory size.
428
429config ISA
430	bool
431	depends on Q40 || AMIGA_PCMCIA
432	default y
433	help
434	  Find out whether you have ISA slots on your motherboard.  ISA is the
435	  name of a bus system, i.e. the way the CPU talks to the other stuff
436	  inside your box.  Other bus systems are PCI, EISA, MicroChannel
437	  (MCA) or VESA.  ISA is an older system, now being displaced by PCI;
438	  newer boards don't support it.  If you have ISA, say Y, otherwise N.
439
440config GENERIC_ISA_DMA
441	bool
442	depends on Q40 || AMIGA_PCMCIA
443	default y
444
445config ZONE_DMA
446	bool
447	default y
448
449source "drivers/pci/Kconfig"
450
451source "drivers/zorro/Kconfig"
452
453endmenu
454
455source "net/Kconfig"
456
457source "drivers/Kconfig"
458
459menu "Character devices"
460
461config ATARI_MFPSER
462	tristate "Atari MFP serial support"
463	depends on ATARI
464	---help---
465	  If you like to use the MFP serial ports ("Modem1", "Serial1") under
466	  Linux, say Y. The driver equally supports all kinds of MFP serial
467	  ports and automatically detects whether Serial1 is available.
468
469	  To compile this driver as a module, choose M here.
470
471	  Note for Falcon users: You also have an MFP port, it's just not
472	  wired to the outside... But you could use the port under Linux.
473
474config ATARI_MIDI
475	tristate "Atari MIDI serial support"
476	depends on ATARI
477	help
478	  If you want to use your Atari's MIDI port in Linux, say Y.
479
480	  To compile this driver as a module, choose M here.
481
482config ATARI_DSP56K
483	tristate "Atari DSP56k support (EXPERIMENTAL)"
484	depends on ATARI && EXPERIMENTAL
485	help
486	  If you want to be able to use the DSP56001 in Falcons, say Y. This
487	  driver is still experimental, and if you don't know what it is, or
488	  if you don't have this processor, just say N.
489
490	  To compile this driver as a module, choose M here.
491
492config AMIGA_BUILTIN_SERIAL
493	tristate "Amiga builtin serial support"
494	depends on AMIGA
495	help
496	  If you want to use your Amiga's built-in serial port in Linux,
497	  answer Y.
498
499	  To compile this driver as a module, choose M here.
500
501config MULTIFACE_III_TTY
502	tristate "Multiface Card III serial support"
503	depends on AMIGA
504	help
505	  If you want to use a Multiface III card's serial port in Linux,
506	  answer Y.
507
508	  To compile this driver as a module, choose M here.
509
510config GVPIOEXT
511	tristate "GVP IO-Extender support"
512	depends on PARPORT=n && ZORRO
513	help
514	  If you want to use a GVP IO-Extender serial card in Linux, say Y.
515	  Otherwise, say N.
516
517config GVPIOEXT_LP
518	tristate "GVP IO-Extender parallel printer support"
519	depends on GVPIOEXT
520	help
521	  Say Y to enable driving a printer from the parallel port on your
522	  GVP IO-Extender card, N otherwise.
523
524config GVPIOEXT_PLIP
525	tristate "GVP IO-Extender PLIP support"
526	depends on GVPIOEXT
527	help
528	  Say Y to enable doing IP over the parallel port on your GVP
529	  IO-Extender card, N otherwise.
530
531config MAC_HID
532	bool
533	depends on INPUT_ADBHID
534	default y
535
536config HPDCA
537	tristate "HP DCA serial support"
538	depends on DIO && SERIAL_8250
539	help
540	  If you want to use the internal "DCA" serial ports on an HP300
541	  machine, say Y here.
542
543config HPAPCI
544	tristate "HP APCI serial support"
545	depends on HP300 && SERIAL_8250 && EXPERIMENTAL
546	help
547	  If you want to use the internal "APCI" serial ports on an HP400
548	  machine, say Y here.
549
550config MVME147_SCC
551	bool "SCC support for MVME147 serial ports"
552	depends on MVME147 && BROKEN
553	help
554	  This is the driver for the serial ports on the Motorola MVME147
555	  boards.  Everyone using one of these boards should say Y here.
556
557config SERIAL167
558	bool "CD2401 support for MVME166/7 serial ports"
559	depends on MVME16x
560	help
561	  This is the driver for the serial ports on the Motorola MVME166,
562	  167, and 172 boards.  Everyone using one of these boards should say
563	  Y here.
564
565config MVME162_SCC
566	bool "SCC support for MVME162 serial ports"
567	depends on MVME16x && BROKEN
568	help
569	  This is the driver for the serial ports on the Motorola MVME162 and
570	  172 boards.  Everyone using one of these boards should say Y here.
571
572config BVME6000_SCC
573	bool "SCC support for BVME6000 serial ports"
574	depends on BVME6000 && BROKEN
575	help
576	  This is the driver for the serial ports on the BVME4000 and BVME6000
577	  boards from BVM Ltd.  Everyone using one of these boards should say
578	  Y here.
579
580config DN_SERIAL
581	bool "Support for DN serial port (dummy)"
582	depends on APOLLO
583
584config SERIAL_CONSOLE
585	bool "Support for serial port console"
586	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)
587	---help---
588	  If you say Y here, it will be possible to use a serial port as the
589	  system console (the system console is the device which receives all
590	  kernel messages and warnings and which allows logins in single user
591	  mode). This could be useful if some terminal or printer is connected
592	  to that serial port.
593
594	  Even if you say Y here, the currently visible virtual console
595	  (/dev/tty0) will still be used as the system console by default, but
596	  you can alter that using a kernel command line option such as
597	  "console=ttyS1". (Try "man bootparam" or see the documentation of
598	  your boot loader (lilo or loadlin) about how to pass options to the
599	  kernel at boot time.)
600
601	  If you don't have a VGA card installed and you say Y here, the
602	  kernel will automatically use the first serial line, /dev/ttyS0, as
603	  system console.
604
605	  If unsure, say N.
606
607endmenu
608
609source "fs/Kconfig"
610
611source "arch/m68k/Kconfig.debug"
612
613source "security/Kconfig"
614
615source "crypto/Kconfig"
616
617source "lib/Kconfig"
618