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