]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/blob - arch/m68k/Kconfig
m68k: discontinuous memory support
[mirror_ubuntu-bionic-kernel.git] / arch / m68k / Kconfig
1 #
2 # For a description of the syntax of this configuration file,
3 # see Documentation/kbuild/kconfig-language.txt.
4 #
5 config M68K
6 bool
7 default y
8
9 config MMU
10 bool
11 default y
12
13 config RWSEM_GENERIC_SPINLOCK
14 bool
15 default y
16
17 config RWSEM_XCHGADD_ALGORITHM
18 bool
19
20 config ARCH_HAS_ILOG2_U32
21 bool
22 default n
23
24 config ARCH_HAS_ILOG2_U64
25 bool
26 default n
27
28 config GENERIC_HWEIGHT
29 bool
30 default y
31
32 config GENERIC_CALIBRATE_DELAY
33 bool
34 default y
35
36 config TIME_LOW_RES
37 bool
38 default y
39
40 config ARCH_MAY_HAVE_PC_FDC
41 bool
42 depends on Q40 || (BROKEN && SUN3X)
43 default y
44
45 config NO_IOPORT
46 def_bool y
47
48 mainmenu "Linux/68k Kernel Configuration"
49
50 source "init/Kconfig"
51
52 menu "Platform dependent setup"
53
54 config 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
69 config 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
77 config 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
95 config 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
107 config 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
115 config 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
124 config 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
131 config 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
146 config 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
157 config NUBUS
158 bool
159 depends on MAC
160 default y
161
162 config M68K_L2_CACHE
163 bool
164 depends on MAC
165 default y
166
167 config 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
174 config 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
183 config 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
192 config 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
202 config 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
211 config 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
221 config 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
230 config 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
243 config 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
253 comment "Processor type"
254
255 config 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
263 config 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
271 config 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
280 config 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
287 config MMU_MOTOROLA
288 bool
289 depends on MMU && !MMU_SUN3
290 default y
291
292 config MMU_SUN3
293 bool
294
295 config 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
305 config 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
316 config 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
328 config 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
342 config 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
357 config 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
366 config 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
381 config ARCH_DISCONTIGMEM_ENABLE
382 def_bool !SINGLE_MEMORY_CHUNK
383
384 config NODES_SHIFT
385 int
386 default "3"
387 depends on !SINGLE_MEMORY_CHUNK
388
389 source "mm/Kconfig"
390
391 endmenu
392
393 menu "General setup"
394
395 source "fs/Kconfig.binfmt"
396
397 config 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
408 config 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
415 config 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
421 config ATARI_KBD_CORE
422 bool
423
424 config HEARTBEAT
425 bool "Use power LED as a heartbeat" if AMIGA || APOLLO || ATARI || MAC ||Q40
426 default y if !AMIGA && !APOLLO && !ATARI && !MAC && !Q40 && HP300
427 help
428 Use the power-on LED on your machine as a load meter. The exact
429 behavior is platform-dependent, but normally the flash frequency is
430 a hyperbolic function of the 5-minute load average.
431
432 # We have a dedicated heartbeat LED. :-)
433 config PROC_HARDWARE
434 bool "/proc/hardware support"
435 help
436 Say Y here to support the /proc/hardware file, which gives you
437 access to information about the machine you're running on,
438 including the model, CPU, MMU, clock speed, BogoMIPS rating,
439 and memory size.
440
441 config ISA
442 bool
443 depends on Q40 || AMIGA_PCMCIA || GG2
444 default y
445 help
446 Find out whether you have ISA slots on your motherboard. ISA is the
447 name of a bus system, i.e. the way the CPU talks to the other stuff
448 inside your box. Other bus systems are PCI, EISA, MicroChannel
449 (MCA) or VESA. ISA is an older system, now being displaced by PCI;
450 newer boards don't support it. If you have ISA, say Y, otherwise N.
451
452 config GENERIC_ISA_DMA
453 bool
454 depends on Q40 || AMIGA_PCMCIA || GG2
455 default y
456
457 config ZONE_DMA
458 bool
459 default y
460
461 source "drivers/pci/Kconfig"
462
463 source "drivers/zorro/Kconfig"
464
465 endmenu
466
467 source "net/Kconfig"
468
469 source "drivers/Kconfig"
470
471 menu "Character devices"
472
473 config ATARI_MFPSER
474 tristate "Atari MFP serial support"
475 depends on ATARI
476 ---help---
477 If you like to use the MFP serial ports ("Modem1", "Serial1") under
478 Linux, say Y. The driver equally supports all kinds of MFP serial
479 ports and automatically detects whether Serial1 is available.
480
481 To compile this driver as a module, choose M here.
482
483 Note for Falcon users: You also have an MFP port, it's just not
484 wired to the outside... But you could use the port under Linux.
485
486 config ATARI_SCC
487 tristate "Atari SCC serial support"
488 depends on ATARI
489 ---help---
490 If you have serial ports based on a Zilog SCC chip (Modem2, Serial2,
491 LAN) and like to use them under Linux, say Y. All built-in SCC's are
492 supported (TT, MegaSTE, Falcon), and also the ST-ESCC. If you have
493 two connectors for channel A (Serial2 and LAN), they are visible as
494 two separate devices.
495
496 To compile this driver as a module, choose M here.
497
498 config ATARI_SCC_DMA
499 bool "Atari SCC serial DMA support"
500 depends on ATARI_SCC
501 help
502 This enables DMA support for receiving data on channel A of the SCC.
503 If you have a TT you may say Y here and read
504 drivers/char/atari_SCC.README. All other users should say N here,
505 because only the TT has SCC-DMA, even if your machine keeps claiming
506 so at boot time.
507
508 config ATARI_MIDI
509 tristate "Atari MIDI serial support"
510 depends on ATARI
511 help
512 If you want to use your Atari's MIDI port in Linux, say Y.
513
514 To compile this driver as a module, choose M here.
515
516 config ATARI_DSP56K
517 tristate "Atari DSP56k support (EXPERIMENTAL)"
518 depends on ATARI && EXPERIMENTAL
519 help
520 If you want to be able to use the DSP56001 in Falcons, say Y. This
521 driver is still experimental, and if you don't know what it is, or
522 if you don't have this processor, just say N.
523
524 To compile this driver as a module, choose M here.
525
526 config AMIGA_BUILTIN_SERIAL
527 tristate "Amiga builtin serial support"
528 depends on AMIGA
529 help
530 If you want to use your Amiga's built-in serial port in Linux,
531 answer Y.
532
533 To compile this driver as a module, choose M here.
534
535 config WHIPPET_SERIAL
536 tristate "Hisoft Whippet PCMCIA serial support"
537 depends on AMIGA_PCMCIA
538 help
539 HiSoft has a web page at <http://www.hisoft.co.uk/>, but there
540 is no listing for the Whippet in their Amiga section.
541
542 config MULTIFACE_III_TTY
543 tristate "Multiface Card III serial support"
544 depends on AMIGA
545 help
546 If you want to use a Multiface III card's serial port in Linux,
547 answer Y.
548
549 To compile this driver as a module, choose M here.
550
551 config GVPIOEXT
552 tristate "GVP IO-Extender support"
553 depends on PARPORT=n && ZORRO
554 help
555 If you want to use a GVP IO-Extender serial card in Linux, say Y.
556 Otherwise, say N.
557
558 config GVPIOEXT_LP
559 tristate "GVP IO-Extender parallel printer support"
560 depends on GVPIOEXT
561 help
562 Say Y to enable driving a printer from the parallel port on your
563 GVP IO-Extender card, N otherwise.
564
565 config GVPIOEXT_PLIP
566 tristate "GVP IO-Extender PLIP support"
567 depends on GVPIOEXT
568 help
569 Say Y to enable doing IP over the parallel port on your GVP
570 IO-Extender card, N otherwise.
571
572 config MAC_SCC
573 tristate "Macintosh serial support"
574 depends on MAC
575
576 config MAC_HID
577 bool
578 depends on INPUT_ADBHID
579 default y
580
581 config MAC_ADBKEYCODES
582 bool "Support for ADB raw keycodes"
583 depends on INPUT_ADBHID
584 help
585 This provides support for sending raw ADB keycodes to console
586 devices. This is the default up to 2.4.0, but in future this may be
587 phased out in favor of generic Linux keycodes. If you say Y here,
588 you can dynamically switch via the
589 /proc/sys/dev/mac_hid/keyboard_sends_linux_keycodes
590 sysctl and with the "keyboard_sends_linux_keycodes=" kernel
591 argument.
592
593 If unsure, say Y here.
594
595 config ADB_KEYBOARD
596 bool "Support for ADB keyboard (old driver)"
597 depends on MAC && !INPUT_ADBHID
598 help
599 This option allows you to use an ADB keyboard attached to your
600 machine. Note that this disables any other (ie. PS/2) keyboard
601 support, even if your machine is physically capable of using both at
602 the same time.
603
604 If you use an ADB keyboard (4 pin connector), say Y here.
605 If you use a PS/2 keyboard (6 pin connector), say N here.
606
607 config HPDCA
608 tristate "HP DCA serial support"
609 depends on DIO && SERIAL_8250
610 help
611 If you want to use the internal "DCA" serial ports on an HP300
612 machine, say Y here.
613
614 config HPAPCI
615 tristate "HP APCI serial support"
616 depends on HP300 && SERIAL_8250 && EXPERIMENTAL
617 help
618 If you want to use the internal "APCI" serial ports on an HP400
619 machine, say Y here.
620
621 config MVME147_SCC
622 bool "SCC support for MVME147 serial ports"
623 depends on MVME147
624 help
625 This is the driver for the serial ports on the Motorola MVME147
626 boards. Everyone using one of these boards should say Y here.
627
628 config SERIAL167
629 bool "CD2401 support for MVME166/7 serial ports"
630 depends on MVME16x
631 help
632 This is the driver for the serial ports on the Motorola MVME166,
633 167, and 172 boards. Everyone using one of these boards should say
634 Y here.
635
636 config MVME162_SCC
637 bool "SCC support for MVME162 serial ports"
638 depends on MVME16x
639 help
640 This is the driver for the serial ports on the Motorola MVME162 and
641 172 boards. Everyone using one of these boards should say Y here.
642
643 config BVME6000_SCC
644 bool "SCC support for BVME6000 serial ports"
645 depends on BVME6000
646 help
647 This is the driver for the serial ports on the BVME4000 and BVME6000
648 boards from BVM Ltd. Everyone using one of these boards should say
649 Y here.
650
651 config DN_SERIAL
652 bool "Support for DN serial port (dummy)"
653 depends on APOLLO
654
655 config SERIAL_CONSOLE
656 bool "Support for serial port console"
657 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)
658 ---help---
659 If you say Y here, it will be possible to use a serial port as the
660 system console (the system console is the device which receives all
661 kernel messages and warnings and which allows logins in single user
662 mode). This could be useful if some terminal or printer is connected
663 to that serial port.
664
665 Even if you say Y here, the currently visible virtual console
666 (/dev/tty0) will still be used as the system console by default, but
667 you can alter that using a kernel command line option such as
668 "console=ttyS1". (Try "man bootparam" or see the documentation of
669 your boot loader (lilo or loadlin) about how to pass options to the
670 kernel at boot time.)
671
672 If you don't have a VGA card installed and you say Y here, the
673 kernel will automatically use the first serial line, /dev/ttyS0, as
674 system console.
675
676 If unsure, say N.
677
678 endmenu
679
680 source "fs/Kconfig"
681
682 source "arch/m68k/Kconfig.debug"
683
684 source "security/Kconfig"
685
686 source "crypto/Kconfig"
687
688 source "lib/Kconfig"