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