2 # For a description of the syntax of this configuration file,
3 # see Documentation/kbuild/kconfig-language.txt.
6 mainmenu "Linux/SuperH Kernel Configuration"
12 The SuperH is a RISC processor targeted for use in embedded systems
13 and consumer electronics; it was also used in the Sega Dreamcast
14 gaming console. The SuperH port has a home page at
15 <http://www.sh-linux.org/>.
25 config RWSEM_GENERIC_SPINLOCK
29 config RWSEM_XCHGADD_ALGORITHM
32 config GENERIC_ISA_DMA
39 menu "Processor type and features"
42 prompt "SuperH system type"
48 Select Generic if configuring for a generic SuperH system.
49 The "generic" option compiles in *all* the possible hardware
50 support and relies on the sh_mv= kernel commandline option to choose
51 at runtime which routines to use. "MV" stands for "machine vector";
52 each of the machines below is described by a machine vector.
54 Select SolutionEngine if configuring for a Hitachi SH7709
55 or SH7750/7750S evalutation board.
57 Select Overdrive if configuring for a ST407750 Overdrive board.
59 <http://linuxsh.sourceforge.net/docs/7750overdrive.php3>.
61 Select HP620 if configuring for a HP Jornada HP620.
62 More information (hardware only) at
63 <http://www.hp.com/jornada/>.
65 Select HP680 if configuring for a HP Jornada HP680.
66 More information (hardware only) at
67 <http://www.hp.com/jornada/products/680/>.
69 Select HP690 if configuring for a HP Jornada HP690.
70 More information (hardware only) at
71 <http://www.hp.com/jornada/products/680/>.
73 Select CqREEK if configuring for a CqREEK SH7708 or SH7750.
75 <http://sources.redhat.com/ecos/hardware.html#SuperH>.
77 Select DMIDA if configuring for a DataMyte 4000 Industrial
78 Digital Assistant. More information at <http://www.dmida.com/>.
80 Select EC3104 if configuring for a system with an Eclipse
81 International EC3104 chip, e.g. the Harris AD2000 or Compaq Aero 8000.
83 Select Dreamcast if configuring for a SEGA Dreamcast.
85 <http://www.m17n.org/linux-sh/dreamcast/>. There is a
86 Dreamcast project is at <http://linuxdc.sourceforge.net/>.
88 Select BareCPU if you know what this means, and it applies
91 config SH_SOLUTION_ENGINE
94 Select SolutionEngine if configuring for a Hitachi SH7709
95 or SH7750 evalutation board.
97 config SH_7751_SOLUTION_ENGINE
98 bool "SolutionEngine7751"
100 Select 7751 SolutionEngine if configuring for a Hitachi SH7751
106 config SH_STB1_OVERDRIVE
107 bool "STB1_Overdrive"
112 Select HP620 if configuring for a HP jornada HP620.
113 More information (hardware only) at
114 <http://www.hp.com/jornada/>.
119 Select HP680 if configuring for a HP Jornada HP680.
120 More information (hardware only) at
121 <http://www.hp.com/jornada/products/680/>.
126 Select HP690 if configuring for a HP Jornada HP690.
127 More information (hardware only)
128 at <http://www.hp.com/jornada/products/680/>.
133 Select CqREEK if configuring for a CqREEK SH7708 or SH7750.
135 <http://sources.redhat.com/ecos/hardware.html#SuperH>.
140 Select DMIDA if configuring for a DataMyte 4000 Industrial
141 Digital Assistant. More information at <http://www.dmida.com/>.
146 Select EC3104 if configuring for a system with an Eclipse
147 International EC3104 chip, e.g. the Harris AD2000.
152 Select Dreamcast if configuring for a SEGA Dreamcast.
154 <http://www.m17n.org/linux-sh/dreamcast/>. There is a
155 Dreamcast project is at <http://linuxdc.sourceforge.net/>.
172 "Bare CPU" aka "unknown" means an SH-based system which is not one
173 of the specific ones mentioned above, which means you need to enter
174 all sorts of stuff like CONFIG_MEMORY_START because the config
175 system doesn't already know what it is. You get a machine vector
176 without any platform-specific code in it, so things like the RTC may
179 This option is for the early stages of porting to a new machine.
183 # The SH7750 RTC module is disabled in the Dreamcast
186 depends on !SH_DREAMCAST
189 Selecting this option will allow the Linux kernel to emulate
196 depends on SH_HP620 || SH_HP680 || SH_HP690
200 prompt "Processor type"
201 default CPU_SUBTYPE_SH7708
203 config CPU_SUBTYPE_SH7707
206 Select the type of SuperH processor you have. This information is
207 used for optimizing and configuration purposes.
209 Select SH7707 if you have a 60 Mhz SH-3 HD6417707 CPU.
211 Select SH7708 if you have a 60 Mhz SH-3 HD6417708S or
212 if you have a 100 Mhz SH-3 HD6417708R CPU.
214 Select SH7709 if you have a 80 Mhz SH-3 HD6417709 CPU.
216 Select SH7750 if you have a 200 Mhz SH-4 HD6417750 CPU.
218 Select SH7751 if you have a SH7751
220 Select ST40STB1 if you have a ST40STB1
222 config CPU_SUBTYPE_SH7708
225 Select SH7708 if you have a 60 Mhz SH-3 HD6417708S or
226 if you have a 100 Mhz SH-3 HD6417708R CPU.
228 config CPU_SUBTYPE_SH7709
231 Select SH7709 if you have a 80 Mhz SH-3 HD6417709 CPU.
233 config CPU_SUBTYPE_SH7750
236 Select SH7750 if you have a 200 Mhz SH-4 HD6417750 CPU.
238 config CPU_SUBTYPE_SH7751
241 config CPU_SUBTYPE_ST40STB1
248 depends on CPU_SUBTYPE_SH7709 || CPU_SUBTYPE_SH7708 || CPU_SUBTYPE_SH7707
253 depends on CPU_SUBTYPE_ST40STB1 || CPU_SUBTYPE_SH7751 || CPU_SUBTYPE_SH7750
256 config CPU_LITTLE_ENDIAN
259 Some MIPS machines can be configured for either little or big endian
260 byte order. These modes require different kernels. Say Y if your
261 machine is little endian, N if it's a big endian machine.
263 # Platform-specific memory start and size definitions
265 hex "Physical memory start address" if !MEMORY_SET
266 default "08000000" if !MEMORY_SET || SH_ADX || CPU_SUBTYPE_ST40STB1 && ST40_LMI_MEMORY
267 default "0c000000" if SH_HP600 || SH_BIGSUR || SH_DREAMCAST || SH_SH2000 || SH_7751_SOLUTION_ENGINE || SH_SOLUTION_ENGINE
269 Computers built with Hitachi SuperH processors always
270 map the ROM starting at address zero. But the processor
271 does not specify the range that RAM takes.
273 The physical memory (RAM) start address will be automatically
274 set to 08000000, unless you selected one of the following
275 processor types: SolutionEngine, Overdrive, HP620, HP680, HP690,
276 in which case the start address will be set to 0c000000.
278 Tweak this only when porting to a new machine which is not already
279 known by the config system. Changing it from the known correct
280 value on any of the known systems will only lead to disaster.
283 hex "Physical memory size" if !MEMORY_SET
284 default "00400000" if !MEMORY_SET || SH_ADX || CPU_SUBTYPE_ST40STB1 && ST40_LMI_MEMORY || SH_HP600 || SH_BIGSUR || SH_DREAMCAST || SH_SH2000
285 default "04000000" if SH_7751_SOLUTION_ENGINE
286 default "02000000" if SH_SOLUTION_ENGINE
288 This sets the default memory size assumed by your SH kernel. It can
289 be overridden as normal by the 'mem=' argument on the kernel command
290 line. If unsure, consult your board specifications or just leave it
291 as 0x00400000 which was the default value before this became
296 depends on SH_ADX || CPU_SUBTYPE_ST40STB1 && ST40_LMI_MEMORY || SH_HP600 || SH_BIGSUR || SH_DREAMCAST || SH_SH2000 || SH_7751_SOLUTION_ENGINE || SH_SOLUTION_ENGINE
299 This is an option about which you will never be asked a question.
300 Therefore, I conclude that you do not exist - go away.
302 There is a grue here.
304 config ST40_LMI_MEMORY
306 depends on CPU_SUBTYPE_ST40STB1
308 # If none of the above have set memory start/size, ask the user.
316 Say Y to upport efficient handling of discontiguous physical memory,
317 for architectures which are either NUMA (Non-Uniform Memory Access)
318 or have huge holes in the physical address space for other reasons.
319 See <file:Documentation/vm/numa> for more.
324 # Even on SuperH devices which don't have an ISA bus,
325 # this variable helps the PCMCIA modules handle
326 # IRQ requesting properly -- Greg Banks.
331 Find out whether you have ISA slots on your motherboard. ISA is the
332 name of a bus system, i.e. the way the CPU talks to the other stuff
333 inside your box. Other bus systems are PCI, EISA, MicroChannel
334 (MCA) or VESA. ISA is an older system, now being displaced by PCI;
335 newer boards don't support it. If you have ISA, say Y, otherwise N.
340 The Extended Industry Standard Architecture (EISA) bus was
341 developed as an open alternative to the IBM MicroChannel bus.
343 The EISA bus provided some of the features of the IBM MicroChannel
344 bus while maintaining backward compatibility with cards made for
345 the older ISA bus. The EISA bus saw limited use between 1988 and
346 1995 when it was made obsolete by the PCI bus.
348 Say Y here if you are building a kernel for an EISA-based machine.
355 MicroChannel Architecture is found in some IBM PS/2 machines and
356 laptops. It is a bus system similar to PCI or ISA. See
357 <file:Documentation/mca.txt> (and especially the web page given
358 there) before attempting to build an MCA bus kernel.
364 bool "Compact Flash Enabler support"
365 depends on SH_GENERIC || SH_SOLUTION_ENGINE || SH_UNKNOWN || SH_CAT68701 || SH_ADX
367 Compact Flash is a small, removable mass storage device introduced
368 in 1994 originally as a PCMCIA device. If you say `Y' here, you
369 compile in support for Compact Flash devices directly connected to
370 a SuperH processor. A Compact Flash FAQ is available at
371 <http://www.compactflash.org/faqs/faq.htm>.
373 If your board has "Directly Connected" CompactFlash at area 5 or 6,
374 you may want to enable this option. Then, you can use CF as
375 primary IDE drive (only tested for SanDisk).
377 If in doubt, select 'N'.
380 prompt "Compact Flash Connection Area"
381 depends on CF_ENABLER
387 If your board has "Directly Connected" CompactFlash, You should
388 select the area where your CF is connected to.
390 - "Area5" if CompactFlash is connected to Area 5 (0x14000000)
391 - "Area6" if it is connected to Area 6 (0x18000000)
393 "Area6" will work for most boards. For ADX, select "Area5".
402 depends on CF_ENABLER
403 default "b8000000" if CF_AREA6
404 default "b4000000" if CF_AREA5
407 bool "Hitachi HD64461 companion chip support"
409 The Hitachi HD64461 provides an interface for
410 the SH7709 CPU, supporting a LCD controller,
411 CRT color controller, IrDA up to 4 Mbps, and a
412 PCMCIA controller supporting 2 slots.
414 More information is available at
415 <http://semiconductor.hitachi.com/windowsce/superh/sld013.htm>.
417 Say Y if you want support for the HD64461.
425 The default setting of the HD64461 IRQ is 36.
427 Do not change this unless you know what you are doing.
429 config HD64461_ENABLER
430 bool "HD64461 PCMCIA enabler"
433 Say Y here if you want to enable PCMCIA support
434 via the HD64461 companion chip.
438 bool "Hitachi HD64465 companion chip support"
440 The Hitachi HD64465 provides an interface for
441 the SH7750 CPU, supporting a LCD controller,
442 CRT color controller, IrDA, USB, PCMCIA,
443 keyboard controller, and a printer interface.
445 More information is available at
446 <http://global.hitachi.com/New/cnews/E/1998/981019B.html>.
448 Say Y if you want support for the HD64465.
451 config HD64465_IOBASE
452 hex "HD64465 start address"
456 The default setting of the HD64465 IO base address is 0xb0000000.
458 Do not change this unless you know what you are doing.
465 The default setting of the HD64465 IRQ is 5.
467 Do not change this unless you know what you are doing.
470 bool "DMA controller (DMAC) support"
472 Selecting this option will provide same API as PC's Direct Memory
473 Access Controller(8237A) for SuperH DMAC.
480 Find out whether you have a PCI motherboard. PCI is the name of a
481 bus system, i.e. the way the CPU talks to the other stuff inside
482 your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or
483 VESA. If you have PCI, say Y, otherwise N.
485 The PCI-HOWTO, available from
486 <http://www.tldp.org/docs.html#howto>, contains valuable
487 information about which PCI hardware does work under Linux and which
491 prompt "PCI access mode"
498 On PCI systems, the BIOS can be used to detect the PCI devices and
499 determine their configuration. However, some old PCI motherboards
500 have BIOS bugs and may crash if this is done. Also, some embedded
501 PCI-based systems don't have any BIOS at all. Linux can also try to
502 detect the PCI hardware directly without using the BIOS.
504 With this option, you can specify how Linux should detect the PCI
505 devices. If you choose "BIOS", the BIOS will be used, if you choose
506 "Direct", the BIOS won't be used, and if you choose "Any", the
507 kernel will try the direct access method and falls back to the BIOS
508 if that doesn't work. If unsure, go with the default, which is
521 depends on PCI && (PCI_GOBIOS || PCI_GOANY)
526 depends on PCI && (PCI_GODIRECT || PCI_GOANY)
529 config SH_PCIDMA_NONCOHERENT
530 bool "Cache and PCI noncoherent"
533 Enable this option if your platform does not have a CPU cache which
534 remains coherent with PCI DMA. It is safest to say 'Y', although you
535 will see better performance if you can say 'N', because the PCI DMA
536 code will not have to flush the CPU's caches. If you have a PCI host
537 bridge integrated with your SH CPU, refer carefully to the chip specs
538 to see if you can say 'N' here. Otherwise, leave it as 'Y'.
540 source "drivers/pci/Kconfig"
543 bool "Support for hot-pluggable devices"
545 Say Y here if you want to plug devices into your computer while
546 the system is running, and be able to use them quickly. In many
547 cases, the devices can likewise be unplugged at any time too.
549 One well known example of this is PCMCIA- or PC-cards, credit-card
550 size devices such as network cards, modems or hard drives which are
551 plugged into slots found on all modern laptop computers. Another
552 example, used on modern desktops as well as laptops, is USB.
554 Enable HOTPLUG and KMOD, and build a modular kernel. Get agent
555 software (at <http://linux-hotplug.sourceforge.net/>) and install it.
556 Then your kernel will automatically call out to a user mode "policy
557 agent" (/sbin/hotplug) to load modules and set up software needed
558 to use devices as you hotplug them.
560 source "drivers/pcmcia/Kconfig"
563 prompt "Kernel core (/proc/kcore) format"
570 If you enabled support for /proc file system then the file
571 /proc/kcore will contain the kernel core image. This can be used
574 $ cd /usr/src/linux ; gdb vmlinux /proc/kcore
576 You have two choices here: ELF and A.OUT. Selecting ELF will make
577 /proc/kcore appear in ELF core format as defined by the Executable
578 and Linking Format specification. Selecting A.OUT will choose the
579 old "a.out" format which may be necessary for some old versions
580 of binutils or on some architectures.
582 This is especially useful if you have compiled the kernel with the
583 "-g" option to preserve debugging information. It is mainly used
584 for examining kernel data structures on the live kernel so if you
585 don't understand what this means or are not a kernel hacker, just
586 leave it at its default value ELF.
591 Not necessary unless you're using a very out-of-date binutils
592 version. You probably want KCORE_ELF.
597 tristate "Kernel support for ELF binaries"
599 ELF (Executable and Linkable Format) is a format for libraries and
600 executables used across different architectures and operating
601 systems. Saying Y here will enable your kernel to run ELF binaries
602 and enlarge it by about 13 KB. ELF support under Linux has now all
603 but replaced the traditional Linux a.out formats (QMAGIC and ZMAGIC)
604 because it is portable (this does *not* mean that you will be able
605 to run executables from different architectures or operating systems
606 however) and makes building run-time libraries very easy. Many new
607 executables are distributed solely in ELF format. You definitely
610 Information about ELF is contained in the ELF HOWTO available from
611 <http://www.tldp.org/docs.html#howto>.
613 If you find that after upgrading from Linux kernel 1.2 and saying Y
614 here, you still can't run any ELF binaries (they just crash), then
615 you'll have to install the newest ELF runtime libraries, including
616 ld.so (check the file <file:Documentation/Changes> for location and
619 If you want to compile this as a module ( = code which can be
620 inserted in and removed from the running kernel whenever you want),
621 say M here and read <file:Documentation/modules.txt>. The module
622 will be called binfmt_elf. Saying M or N here is dangerous because
623 some crucial programs on your system might be in ELF format.
626 tristate "Kernel support for MISC binaries"
628 If you say Y here, it will be possible to plug wrapper-driven binary
629 formats into the kernel. You will like this especially when you use
630 programs that need an interpreter to run like Java, Python or
631 Emacs-Lisp. It's also useful if you often run DOS executables under
632 the Linux DOS emulator DOSEMU (read the DOSEMU-HOWTO, available from
633 <http://www.tldp.org/docs.html#howto>). Once you have
634 registered such a binary class with the kernel, you can start one of
635 those programs simply by typing in its name at a shell prompt; Linux
636 will automatically feed it to the correct interpreter.
638 You can do other nice things, too. Read the file
639 <file:Documentation/binfmt_misc.txt> to learn how to use this
640 feature, and <file:Documentation/java.txt> for information about how
641 to include Java support.
643 You must say Y to "/proc file system support" (CONFIG_PROC_FS) to
644 use this part of the kernel.
646 You may say M here for module support and later load the module when
647 you have use for it; the module is called binfmt_misc. If you
648 don't know what to answer at this point, say Y.
650 source "drivers/parport/Kconfig"
654 source "drivers/mtd/Kconfig"
656 source "drivers/block/Kconfig"
658 source "drivers/md/Kconfig"
661 menu "ATA/ATAPI/MFM/RLL support"
664 tristate "ATA/ATAPI/MFM/RLL support"
666 If you say Y here, your kernel will be able to manage low cost mass
667 storage units such as ATA/(E)IDE and ATAPI units. The most common
668 cases are IDE hard drives and ATAPI CD-ROM drives.
670 If your system is pure SCSI and doesn't use these interfaces, you
673 Integrated Disk Electronics (IDE aka ATA-1) is a connecting standard
674 for mass storage units such as hard disks. It was designed by
675 Western Digital and Compaq Computer in 1984. It was then named
676 ST506. Quite a number of disks use the IDE interface.
678 AT Attachment (ATA) is the superset of the IDE specifications.
679 ST506 was also called ATA-1.
681 Fast-IDE is ATA-2 (also named Fast ATA), Enhanced IDE (EIDE) is
682 ATA-3. It provides support for larger disks (up to 8.4GB by means of
683 the LBA standard), more disks (4 instead of 2) and for other mass
684 storage units such as tapes and cdrom. UDMA/33 (aka UltraDMA/33) is
685 ATA-4 and provides faster (and more CPU friendly) transfer modes
686 than previous PIO (Programmed processor Input/Output) from previous
687 ATA/IDE standards by means of fast DMA controllers.
689 ATA Packet Interface (ATAPI) is a protocol used by EIDE tape and
690 CD-ROM drives, similar in many respects to the SCSI protocol.
692 SMART IDE (Self Monitoring, Analysis and Reporting Technology) was
693 designed in order to prevent data corruption and disk crash by
694 detecting pre hardware failure conditions (heat, access time, and
695 the like...). Disks built since June 1995 may follow this standard.
696 The kernel itself don't manage this; however there are quite a
697 number of user programs such as smart that can query the status of
698 SMART parameters disk.
700 If you want to compile this driver as a module ( = code which can be
701 inserted in and removed from the running kernel whenever you want),
702 say M here and read <file:Documentation/modules.txt>. The module
705 For further information, please read <file:Documentation/ide.txt>.
709 source "drivers/ide/Kconfig"
717 tristate "SCSI support"
719 If you want to use a SCSI hard disk, SCSI tape drive, SCSI CD-ROM or
720 any other SCSI device under Linux, say Y and make sure that you know
721 the name of your SCSI host adapter (the card inside your computer
722 that "speaks" the SCSI protocol, also called SCSI controller),
723 because you will be asked for it.
725 You also need to say Y here if you want support for the parallel
726 port version of the 100 MB IOMEGA ZIP drive.
728 This driver is also available as a module ( = code which can be
729 inserted in and removed from the running kernel whenever you want).
730 The module will be called scsi_mod. If you want to compile it as
731 a module, say M here and read <file:Documentation/modules.txt> and
732 <file:Documentation/scsi/scsi.txt>. However, do not compile this as a
733 module if your root file system (the one containing the directory /)
734 is located on a SCSI device.
736 source "drivers/scsi/Kconfig"
740 source "drivers/ieee1394/Kconfig"
744 menu "Old CD-ROM drivers (not SCSI, not IDE)"
747 bool "Support non-SCSI/IDE/ATAPI CDROM drives"
749 If you have a CD-ROM drive that is neither SCSI nor IDE/ATAPI, say Y
750 here, otherwise N. Read the CD-ROM-HOWTO, available from
751 <http://www.tldp.org/docs.html#howto>.
753 Note that the answer to this question doesn't directly affect the
754 kernel: saying N will just cause the configurator to skip all
755 the questions about these CD-ROM drives. If you are unsure what you
756 have, say Y and find out whether you have one of the following
759 For each of these drivers, a file Documentation/cdrom/{driver_name}
760 exists. Especially in cases where you do not know exactly which kind
761 of drive you have you should read there. Most of these drivers use a
762 file drivers/cdrom/{driver_name}.h where you can define your
763 interface parameters and switch some internal goodies.
765 All these CD-ROM drivers are also usable as a module ( = code which
766 can be inserted in and removed from the running kernel whenever you
767 want). If you want to compile them as module, say M instead of Y and
768 read <file:Documentation/modules.txt>.
770 If you want to use any of these CD-ROM drivers, you also have to
771 answer Y or M to "ISO 9660 CD-ROM file system support" below (this
772 answer will get "defaulted" for you if you enable any of the Linux
775 source "drivers/cdrom/Kconfig"
780 # input before char - char/joystick depends on it. As does USB.
782 source "drivers/input/Kconfig"
784 #if [ "$CONFIG_SH_DREAMCAST" = "y" ]; then
785 # source drivers/maple/Config.in
788 menu "Character devices"
791 bool "Virtual terminal"
793 If you say Y here, you will get support for terminal devices with
794 display and keyboard devices. These are called "virtual" because you
795 can run several virtual terminals (also called virtual consoles) on
796 one physical terminal. This is rather useful, for example one
797 virtual terminal can collect system messages and warnings, another
798 one can be used for a text-mode user session, and a third could run
799 an X session, all in parallel. Switching between virtual terminals
800 is done with certain key combinations, usually Alt-<function key>.
802 The setterm command ("man setterm") can be used to change the
803 properties (such as colors or beeping) of a virtual terminal. The
804 man page console_codes(4) ("man console_codes") contains the special
805 character sequences that can be used to change those properties
806 directly. The fonts used on virtual terminals can be changed with
807 the setfont ("man setfont") command and the key bindings are defined
808 with the loadkeys ("man loadkeys") command.
810 You need at least one virtual terminal device in order to make use
811 of your keyboard and monitor. Therefore, only people configuring an
812 embedded system would want to say N here in order to save some
813 memory; the only way to log into such a system is then via a serial
814 or network connection.
816 If unsure, say Y, or else you won't be able to do much with your new
817 shiny Linux system :-)
820 bool "Support for console on virtual terminal"
823 The system console is the device which receives all kernel messages
824 and warnings and which allows logins in single user mode. If you
825 answer Y here, a virtual terminal (the device used to interact with
826 a physical terminal) can be used as system console. This is the most
827 common mode of operations, so you should say Y here unless you want
828 the kernel messages be output only to a serial port (in which case
829 you should say Y to "Console on serial port", below).
831 If you do say Y here, by default the currently visible virtual
832 terminal (/dev/tty0) will be used as system console. You can change
833 that with a kernel command line option such as "console=tty3" which
834 would use the third virtual terminal as system console. (Try "man
835 bootparam" or see the documentation of your boot loader (lilo or
836 loadlin) about how to pass options to the kernel at boot time.)
841 tristate "Serial (8250, 16450, 16550 or compatible) support"
843 This selects whether you want to include the driver for the standard
844 serial ports. The standard answer is Y. People who might say N
845 here are those that are setting up dedicated Ethernet WWW/FTP
846 servers, or users that have one of the various bus mice instead of a
847 serial mouse and don't intend to use their machine's standard serial
848 port for anything. (Note that the Cyclades and Stallion multi
849 serial port drivers do not need this driver built in for them to
852 If you want to compile this driver as a module, say M here and read
853 <file:Documentation/modules.txt>. The module will be called
855 [WARNING: Do not compile this driver as a module if you are using
856 non-standard serial ports, since the configuration information will
857 be lost when the driver is unloaded. This limitation may be lifted
860 BTW1: If you have a mouseman serial mouse which is not recognized by
861 the X window system, try running gpm first.
863 BTW2: If you intend to use a software modem (also called Winmodem)
864 under Linux, forget it. These modems are crippled and require
865 proprietary drivers which are only available under Windows.
867 Most people will say Y or M here, so that they can use serial mice,
868 modems and similar devices connecting to the standard serial ports.
871 tristate "Serial (SCI, SCIF) support"
873 Selecting this option will allow the Linux kernel to transfer data
874 over SCI (Serial Communication Interface) and/or SCIF (Serial
875 Communication Interface with FIFO) which are built into the Hitachi
876 SuperH processor. The option provides 1 to 3 (depending
877 on the CPU model) standard Linux tty devices, /dev/ttySC[012]; one
878 of these is normally used as the system console.
880 If in doubt, press "y".
882 config SERIAL_CONSOLE
883 bool "Support for console on serial port"
884 depends on SERIAL=y || SH_SCI=y
886 If you say Y here, it will be possible to use a serial port as the
887 system console (the system console is the device which receives all
888 kernel messages and warnings and which allows logins in single user
889 mode). This could be useful if some terminal or printer is connected
892 Even if you say Y here, the currently visible virtual console
893 (/dev/tty0) will still be used as the system console by default, but
894 you can alter that using a kernel command line option such as
895 "console=ttyS1". (Try "man bootparam" or see the documentation of
896 your boot loader (lilo or loadlin) about how to pass options to the
897 kernel at boot time.)
899 If you don't have a VGA card installed and you say Y here, the
900 kernel will automatically use the first serial line, /dev/ttyS0, as
905 comment "Unix 98 PTY support"
908 bool "Unix98 PTY support"
910 A pseudo terminal (PTY) is a software device consisting of two
911 halves: a master and a slave. The slave device behaves identical to
912 a physical terminal; the master device is used by a process to
913 read data from and write data to the slave, thereby emulating a
914 terminal. Typical programs for the master side are telnet servers
917 Linux has traditionally used the BSD-like names /dev/ptyxx for
918 masters and /dev/ttyxx for slaves of pseudo terminals. This scheme
919 has a number of problems. The GNU C library glibc 2.1 and later,
920 however, supports the Unix98 naming standard: in order to acquire a
921 pseudo terminal, a process opens /dev/ptmx; the number of the pseudo
922 terminal is then made available to the process and the pseudo
923 terminal slave can be accessed as /dev/pts/<number>. What was
924 traditionally /dev/ttyp2 will then be /dev/pts/2, for example.
926 The entries in /dev/pts/ are created on the fly by a virtual
927 file system; therefore, if you say Y here you should say Y to
928 "/dev/pts file system for Unix98 PTYs" as well.
930 If you want to say Y here, you need to have the C library glibc 2.1
931 or later (equal to libc-6.1, check with "ls -l /lib/libc.so.*").
932 Read the instructions in <file:Documentation/Changes> pertaining to
933 pseudo terminals. It's safe to say N.
935 config UNIX98_PTY_COUNT
936 int "Maximum number of Unix98 PTYs in use (0-2048)"
937 depends on UNIX98_PTYS
940 The maximum number of Unix98 PTYs that can be used at any one time.
941 The default is 256, and should be enough for desktop systems. Server
942 machines which support incoming telnet/rlogin/ssh connections and/or
943 serve several X terminals may want to increase this: every incoming
944 connection and every xterm uses up one PTY.
946 When not in use, each additional set of 256 PTYs occupy
947 approximately 8 KB of kernel memory on 32-bit architectures.
951 depends on SH_GENERIC || SH_CAT68701 || SH_STB1_HARP || SH_STB1_OVERDRIVE || SH_BIGSUR || SH_7751_SOLUTION_ENGINE || SH_SOLUTION_ENGINE
953 Use the power-on LED on your machine as a load meter. The exact
954 behavior is platform-dependent, but normally the flash frequency is
955 a hyperbolic function of the 5-minute load average.
958 menu "Maple Bus input peripherals"
959 depends on SH_DREAMCAST && MAPLE
961 config MAPLE_KEYBOARD
962 tristate "Maple Bus keyboard support"
966 tristate "Maple Bus mouse support"
969 comment "Input core support is required for Maple input peripherals"
974 #source drivers/char/joystick/Config.in
976 tristate "Parallel printer support"
979 If you intend to attach a printer to the parallel port of your Linux
980 box (as opposed to using a serial printer; if the connector at the
981 printer has 9 or 25 holes ["female"], then it's serial), say Y.
982 Also read the Printing-HOWTO, available from
983 <http://www.tldp.org/docs.html#howto>.
985 It is possible to share one parallel port among several devices
986 (e.g. printer and ZIP drive) and it is safe to compile the
987 corresponding drivers into the kernel. If you want to compile this
988 driver as a module however ( = code which can be inserted in and
989 removed from the running kernel whenever you want), say M here and
990 read <file:Documentation/modules.txt> and
991 <file:Documentation/parport.txt>. The module will be called lp.
993 If you have several parallel ports, you can specify which ports to
994 use with the "lp" kernel command line option. (Try "man bootparam"
995 or see the documentation of your boot loader (lilo or loadlin) about
996 how to pass options to the kernel at boot time.) The syntax of the
997 "lp" command line option can be found in <file:drivers/char/lp.c>.
999 If you have more than 8 printers, you need to increase the LP_NO
1000 macro in lp.c and the PARPORT_MAX macro in parport.h.
1003 bool "Support for console on line printer"
1006 If you want kernel messages to be printed out as they occur, you
1007 can have a console on the printer. This option adds support for
1008 doing that; to actually get it to happen you need to pass the
1009 option "console=lp0" to the kernel at boot time.
1011 If the printer is out of paper (or off, or unplugged, or too
1012 busy..) the kernel will stall until the printer is ready again.
1013 By defining CONSOLE_LP_STRICT to 0 (at your own risk) you
1014 can make the kernel continue when this happens,
1015 but it'll lose the kernel messages.
1020 tristate "Support for user-space parallel port device drivers"
1023 Saying Y to this adds support for /dev/parport device nodes. This
1024 is needed for programs that want portable access to the parallel
1025 port, for instance deviceid (which displays Plug-and-Play device
1028 This is the parallel port equivalent of SCSI generic support (sg).
1029 It is safe to say N to this -- it is not needed for normal printing
1030 or parallel port CD-ROM/disk support.
1032 This support is also available as a module. If you want to compile
1033 it as a module, say M here and read
1034 <file:Documentation/modules.txt>. The module will be called
1040 bool "PS/2 mouse (aka \"auxiliary device\") support"
1042 The PS/2 mouse connects to a special mouse port that looks much like
1043 the keyboard port (small circular connector with 6 pins). This way,
1044 the mouse does not use any serial ports. This port can also be used
1045 for other input devices like light pens, tablets, keypads. Compaq,
1046 AST and IBM all use this as their mouse port on currently shipping
1047 machines. The trackballs of some laptops are PS/2 mice also. In
1048 particular, the C&T 82C710 mouse on TI Travelmates is a PS/2 mouse.
1050 Although PS/2 mice are not technically bus mice, they are explained
1051 in detail in the Busmouse-HOWTO, available from
1052 <http://www.tldp.org/docs.html#howto>.
1054 When using a PS/2 mouse, you can get problems if you want to use the
1055 mouse both on the Linux console and under X. Using the "-R" option
1056 of the Linux mouse managing program gpm (available from
1057 <ftp://gnu.systemy.it/pub/gpm/>) solves this problem, or you can get
1058 the "mconv2" utility from <ftp://ibiblio.org/pub/Linux/system/mouse/>.
1061 menu "Watchdog Cards"
1064 bool "Watchdog Timer Support"
1066 If you say Y here (and to one of the following options) and create a
1067 character special file /dev/watchdog with major number 10 and minor
1068 number 130 using mknod ("man mknod"), you will get a watchdog, i.e.:
1069 subsequently opening the file and then failing to write to it for
1070 longer than 1 minute will result in rebooting the machine. This
1071 could be useful for a networked machine that needs to come back
1072 online as fast as possible after a lock-up. There's both a watchdog
1073 implementation entirely in software (which can sometimes fail to
1074 reboot the machine) and a driver for hardware watchdog boards, which
1075 are more robust and can also keep track of the temperature inside
1076 your computer. For details, read <file:Documentation/watchdog.txt>
1077 in the kernel source.
1079 The watchdog is usually used together with the watchdog daemon
1080 which is available from
1081 <ftp://ibiblio.org/pub/Linux/system/daemons/watchdog/>. This daemon can
1082 also monitor NFS connections and can reboot the machine when the process
1087 config WATCHDOG_NOWAYOUT
1088 bool "Disable watchdog shutdown on close"
1091 The default watchdog behaviour (which you get if you say N here) is
1092 to stop the timer if the process managing it closes the file
1093 /dev/watchdog. It's always remotely possible that this process might
1094 get killed. If you say Y here, the watchdog cannot be stopped once
1095 it has been started.
1098 tristate "SH 3/4 Watchdog"
1101 This driver adds watchdog support for the integrated watchdog in the
1102 SuperH 3 and 4 processors. If you have one of these processors, say Y,
1105 This driver is also available as a module ( = code which can be
1106 inserted in and removed from the running kernel whenever you want).
1107 The module is called shwdt. If you want to compile it as a module,
1108 say M here and read Documentation/modules.txt.
1113 tristate "Enhanced Real Time Clock Support"
1115 If you say Y here and create a character special file /dev/rtc with
1116 major number 10 and minor number 135 using mknod ("man mknod"), you
1117 will get access to the real time clock (or hardware clock) built
1120 Every PC has such a clock built in. It can be used to generate
1121 signals from as low as 1Hz up to 8192Hz, and can also be used
1122 as a 24 hour alarm. It reports status information via the file
1123 /proc/driver/rtc and its behaviour is set by various ioctls on
1126 If you run Linux on a multiprocessor machine and said Y to
1127 "Symmetric Multi Processing" above, you should say Y here to read
1128 and set the RTC in an SMP compatible fashion.
1130 If you think you have a use for such a device (such as periodic data
1131 sampling), then say Y here, and read <file:Documentation/rtc.txt>
1134 This driver is also available as a module ( = code which can be
1135 inserted in and removed from the running kernel whenever you want).
1136 The module is called rtc. If you want to compile it as a module,
1137 say M here and read <file:Documentation/modules.txt>.
1139 source "drivers/char/pcmcia/Kconfig"
1145 source "drivers/media/Kconfig"
1147 source "drivers/video/Kconfig"
1152 tristate "Sound card support"
1154 If you have a sound card in your computer, i.e. if it can say more
1155 than an occasional beep, say Y. Be sure to have all the information
1156 about your sound card and its configuration down (I/O port,
1157 interrupt and DMA channel), because you will be asked for it.
1159 You want to read the Sound-HOWTO, available from
1160 <http://www.tldp.org/docs.html#howto>. General information about
1161 the modular sound system is contained in the files
1162 <file:Documentation/sound/Introduction>. The file
1163 <file:Documentation/sound/README.OSS> contains some slightly
1164 outdated but still useful information as well.
1166 If you have a PnP sound card and you want to configure it at boot
1167 time using the ISA PnP tools (read
1168 <http://www.roestock.demon.co.uk/isapnptools/>), then you need to
1169 compile the sound card support as a module ( = code which can be
1170 inserted in and removed from the running kernel whenever you want)
1171 and load that module after the PnP configuration is finished. To do
1172 this, say M here and read <file:Documentation/modules.txt> as well
1173 as <file:Documentation/sound/README.modules>; the module will be
1176 I'm told that even without a sound card, you can make your computer
1177 say more than an occasional beep, by programming the PC speaker.
1178 Kernel patches and supporting utilities to do that are in the pcsp
1179 package, available at <ftp://ftp.infradead.org/pub/pcsp/>.
1181 source "sound/Kconfig"
1186 menu "Kernel hacking"
1189 bool "Magic SysRq key"
1191 If you say Y here, you will have some control over the system even
1192 if the system crashes for example during kernel debugging (e.g., you
1193 will be able to flush the buffer cache to disk, reboot the system
1194 immediately or dump some status information). This is accomplished
1195 by pressing various keys while holding SysRq (Alt+PrintScreen). It
1196 also works on a serial console (on PC hardware at least), if you
1197 send a BREAK and then within 5 seconds a command keypress. The
1198 keys are documented in <file:Documentation/sysrq.txt>. Don't say Y
1199 unless you really know what this hack does.
1201 config SH_STANDARD_BIOS
1202 bool "Use LinuxSH standard BIOS"
1204 Say Y here if your target has the gdb-sh-stub
1205 package from www.m17n.org (or any conforming standard LinuxSH BIOS)
1206 in FLASH or EPROM. The kernel will use standard BIOS calls during
1207 boot for various housekeeping tasks (including calls to read and
1208 write characters to a system console, get a MAC address from an
1209 on-board Ethernet interface, and shut down the hardware). Note this
1210 does not work with machines with an existing operating system in
1211 mask ROM and no flash (WindowsCE machines fall in this category).
1214 config SH_EARLY_PRINTK
1215 bool "Early printk support"
1216 depends on SH_STANDARD_BIOS
1218 Say Y here to redirect kernel printk messages to the serial port
1219 used by the SH-IPL bootloader, starting very early in the boot
1220 process and ending when the kernel's serial console is initialised.
1221 This option is only useful porting the kernel to a new machine,
1222 when the kernel may crash or hang before the serial console is
1223 initialised. If unsure, say N.
1227 source "security/Kconfig"
1229 source "crypto/Kconfig"
1231 source "lib/Kconfig"