xref: /openbmc/linux/arch/m68k/Kconfig (revision 1da177e4)
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
360endmenu
361
362menu "General setup"
363
364source "fs/Kconfig.binfmt"
365
366config ZORRO
367	bool "Amiga Zorro (AutoConfig) bus support"
368	depends on AMIGA
369	help
370	  This enables support for the Zorro bus in the Amiga. If you have
371	  expansion cards in your Amiga that conform to the Amiga
372	  AutoConfig(tm) specification, say Y, otherwise N. Note that even
373	  expansion cards that do not fit in the Zorro slots but fit in e.g.
374	  the CPU slot may fall in this category, so you have to say Y to let
375	  Linux use these.
376
377config AMIGA_PCMCIA
378	bool "Amiga 1200/600 PCMCIA support (EXPERIMENTAL)"
379	depends on AMIGA && EXPERIMENTAL
380	help
381	  Include support in the kernel for pcmcia on Amiga 1200 and Amiga
382	  600. If you intend to use pcmcia cards say Y; otherwise say N.
383
384config STRAM_SWAP
385	bool "Support for ST-RAM as swap space"
386	depends on ATARI && BROKEN
387	---help---
388	  Some Atari 68k machines (including the 520STF and 1020STE) divide
389	  their addressable memory into ST and TT sections.  The TT section
390	  (up to 512MB) is the main memory; the ST section (up to 4MB) is
391	  accessible to the built-in graphics board, runs slower, and is
392	  present mainly for backward compatibility with older machines.
393
394	  This enables support for using (parts of) ST-RAM as swap space,
395	  instead of as normal system memory. This can first enhance system
396	  performance if you have lots of alternate RAM (compared to the size
397	  of ST-RAM), because executable code always will reside in faster
398	  memory. ST-RAM will remain as ultra-fast swap space. On the other
399	  hand, it allows much improved dynamic allocations of ST-RAM buffers
400	  for device driver modules (e.g. floppy, ACSI, SLM printer, DMA
401	  sound). The probability that such allocations at module load time
402	  fail is drastically reduced.
403
404config STRAM_PROC
405	bool "ST-RAM statistics in /proc"
406	depends on ATARI
407	help
408	  Say Y here to report ST-RAM usage statistics in /proc/stram.  See
409	  the help for CONFIG_STRAM_SWAP for discussion of ST-RAM and its
410	  uses.
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 || GG2
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 || GG2
443	default y
444
445source "drivers/pci/Kconfig"
446
447source "drivers/zorro/Kconfig"
448
449endmenu
450
451source "drivers/Kconfig"
452
453menu "Character devices"
454
455config ATARI_MFPSER
456	tristate "Atari MFP serial support"
457	depends on ATARI
458	---help---
459	  If you like to use the MFP serial ports ("Modem1", "Serial1") under
460	  Linux, say Y. The driver equally supports all kinds of MFP serial
461	  ports and automatically detects whether Serial1 is available.
462
463	  To compile this driver as a module, choose M here.
464
465	  Note for Falcon users: You also have an MFP port, it's just not
466	  wired to the outside... But you could use the port under Linux.
467
468config ATARI_SCC
469	tristate "Atari SCC serial support"
470	depends on ATARI
471	---help---
472	  If you have serial ports based on a Zilog SCC chip (Modem2, Serial2,
473	  LAN) and like to use them under Linux, say Y. All built-in SCC's are
474	  supported (TT, MegaSTE, Falcon), and also the ST-ESCC. If you have
475	  two connectors for channel A (Serial2 and LAN), they are visible as
476	  two separate devices.
477
478	  To compile this driver as a module, choose M here.
479
480config ATARI_SCC_DMA
481	bool "Atari SCC serial DMA support"
482	depends on ATARI_SCC
483	help
484	  This enables DMA support for receiving data on channel A of the SCC.
485	  If you have a TT you may say Y here and read
486	  drivers/char/atari_SCC.README. All other users should say N here,
487	  because only the TT has SCC-DMA, even if your machine keeps claiming
488	  so at boot time.
489
490config ATARI_MIDI
491	tristate "Atari MIDI serial support"
492	depends on ATARI
493	help
494	  If you want to use your Atari's MIDI port in Linux, say Y.
495
496	  To compile this driver as a module, choose M here.
497
498config ATARI_DSP56K
499	tristate "Atari DSP56k support (EXPERIMENTAL)"
500	depends on ATARI && EXPERIMENTAL
501	help
502	  If you want to be able to use the DSP56001 in Falcons, say Y. This
503	  driver is still experimental, and if you don't know what it is, or
504	  if you don't have this processor, just say N.
505
506	  To compile this driver as a module, choose M here.
507
508config AMIGA_BUILTIN_SERIAL
509	tristate "Amiga builtin serial support"
510	depends on AMIGA
511	help
512	  If you want to use your Amiga's built-in serial port in Linux,
513	  answer Y.
514
515	  To compile this driver as a module, choose M here.
516
517config WHIPPET_SERIAL
518	tristate "Hisoft Whippet PCMCIA serial support"
519	depends on AMIGA_PCMCIA
520	help
521	  HiSoft has a web page at <http://www.hisoft.co.uk/>, but there
522	  is no listing for the Whippet in their Amiga section.
523
524config MULTIFACE_III_TTY
525	tristate "Multiface Card III serial support"
526	depends on AMIGA
527	help
528	  If you want to use a Multiface III card's serial port in Linux,
529	  answer Y.
530
531	  To compile this driver as a module, choose M here.
532
533config GVPIOEXT
534	tristate "GVP IO-Extender support"
535	depends on PARPORT=n && ZORRO
536	help
537	  If you want to use a GVP IO-Extender serial card in Linux, say Y.
538	  Otherwise, say N.
539
540config GVPIOEXT_LP
541	tristate "GVP IO-Extender parallel printer support"
542	depends on GVPIOEXT
543	help
544	  Say Y to enable driving a printer from the parallel port on your
545	  GVP IO-Extender card, N otherwise.
546
547config GVPIOEXT_PLIP
548	tristate "GVP IO-Extender PLIP support"
549	depends on GVPIOEXT
550	help
551	  Say Y to enable doing IP over the parallel port on your GVP
552	  IO-Extender card, N otherwise.
553
554config MAC_SCC
555	tristate "Macintosh serial support"
556	depends on MAC
557
558config MAC_HID
559	bool
560	depends on INPUT_ADBHID
561	default y
562
563config MAC_ADBKEYCODES
564	bool "Support for ADB raw keycodes"
565	depends on INPUT_ADBHID
566	help
567	  This provides support for sending raw ADB keycodes to console
568	  devices.  This is the default up to 2.4.0, but in future this may be
569	  phased out in favor of generic Linux keycodes.  If you say Y here,
570	  you can dynamically switch via the
571	  /proc/sys/dev/mac_hid/keyboard_sends_linux_keycodes
572	  sysctl and with the "keyboard_sends_linux_keycodes=" kernel
573	  argument.
574
575	  If unsure, say Y here.
576
577config ADB_KEYBOARD
578	bool "Support for ADB keyboard (old driver)"
579	depends on MAC && !INPUT_ADBHID
580	help
581	  This option allows you to use an ADB keyboard attached to your
582	  machine. Note that this disables any other (ie. PS/2) keyboard
583	  support, even if your machine is physically capable of using both at
584	  the same time.
585
586	  If you use an ADB keyboard (4 pin connector), say Y here.
587	  If you use a PS/2 keyboard (6 pin connector), say N here.
588
589config HPDCA
590	tristate "HP DCA serial support"
591	depends on DIO && SERIAL_8250
592	help
593	  If you want to use the internal "DCA" serial ports on an HP300
594	  machine, say Y here.
595
596config HPAPCI
597	tristate "HP APCI serial support"
598	depends on HP300 && SERIAL_8250 && EXPERIMENTAL
599	help
600	  If you want to use the internal "APCI" serial ports on an HP400
601	  machine, say Y here.
602
603config MVME147_SCC
604	bool "SCC support for MVME147 serial ports"
605	depends on MVME147
606	help
607	  This is the driver for the serial ports on the Motorola MVME147
608	  boards.  Everyone using one of these boards should say Y here.
609
610config SERIAL167
611	bool "CD2401 support for MVME166/7 serial ports"
612	depends on MVME16x && BROKEN
613	help
614	  This is the driver for the serial ports on the Motorola MVME166,
615	  167, and 172 boards.  Everyone using one of these boards should say
616	  Y here.
617
618config MVME162_SCC
619	bool "SCC support for MVME162 serial ports"
620	depends on MVME16x
621	help
622	  This is the driver for the serial ports on the Motorola MVME162 and
623	  172 boards.  Everyone using one of these boards should say Y here.
624
625config BVME6000_SCC
626	bool "SCC support for BVME6000 serial ports"
627	depends on BVME6000
628	help
629	  This is the driver for the serial ports on the BVME4000 and BVME6000
630	  boards from BVM Ltd.  Everyone using one of these boards should say
631	  Y here.
632
633config DN_SERIAL
634	bool "Support for DN serial port (dummy)"
635	depends on APOLLO
636
637config SERIAL_CONSOLE
638	bool "Support for serial port console"
639	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)
640	---help---
641	  If you say Y here, it will be possible to use a serial port as the
642	  system console (the system console is the device which receives all
643	  kernel messages and warnings and which allows logins in single user
644	  mode). This could be useful if some terminal or printer is connected
645	  to that serial port.
646
647	  Even if you say Y here, the currently visible virtual console
648	  (/dev/tty0) will still be used as the system console by default, but
649	  you can alter that using a kernel command line option such as
650	  "console=ttyS1". (Try "man bootparam" or see the documentation of
651	  your boot loader (lilo or loadlin) about how to pass options to the
652	  kernel at boot time.)
653
654	  If you don't have a VGA card installed and you say Y here, the
655	  kernel will automatically use the first serial line, /dev/ttyS0, as
656	  system console.
657
658	  If unsure, say N.
659
660endmenu
661
662source "fs/Kconfig"
663
664source "arch/m68k/Kconfig.debug"
665
666source "security/Kconfig"
667
668source "crypto/Kconfig"
669
670source "lib/Kconfig"
671