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