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