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