# # For a description of the syntax of this configuration file, # see Documentation/kbuild/kconfig-language.txt. # mainmenu "Linux/SuperH Kernel Configuration" config SUPERH bool default y help The SuperH is a RISC processor targeted for use in embedded systems and consumer electronics; it was also used in the Sega Dreamcast gaming console. The SuperH port has a home page at <http://www.linux-sh.org/>. config UID16 bool default y config RWSEM_GENERIC_SPINLOCK bool default y config RWSEM_XCHGADD_ALGORITHM bool config GENERIC_ISA_DMA bool default y config VARIABLE_CLOCK_TICK_RATE bool default y source "init/Kconfig" menu "System type" choice prompt "SuperH system type" default SH_UNKNOWN config SH_SOLUTION_ENGINE bool "SolutionEngine" help Select SolutionEngine if configuring for a Hitachi SH7709 or SH7750 evalutation board. config SH_7751_SOLUTION_ENGINE bool "SolutionEngine7751" help Select 7751 SolutionEngine if configuring for a Hitachi SH7751 evalutation board. config SH_STB1_HARP bool "STB1_Harp" config SH_STB1_OVERDRIVE bool "STB1_Overdrive" config SH_HP620 bool "HP620" help Select HP620 if configuring for a HP jornada HP620. More information (hardware only) at <http://www.hp.com/jornada/>. config SH_HP680 bool "HP680" help Select HP680 if configuring for a HP Jornada HP680. More information (hardware only) at <http://www.hp.com/jornada/products/680/>. config SH_HP690 bool "HP690" help Select HP690 if configuring for a HP Jornada HP690. More information (hardware only) at <http://www.hp.com/jornada/products/680/>. config SH_CQREEK bool "CqREEK" help Select CqREEK if configuring for a CqREEK SH7708 or SH7750. More information at <http://sources.redhat.com/ecos/hardware.html#SuperH>. config SH_DMIDA bool "DMIDA" help Select DMIDA if configuring for a DataMyte 4000 Industrial Digital Assistant. More information at <http://www.dmida.com/>. config SH_EC3104 bool "EC3104" help Select EC3104 if configuring for a system with an Eclipse International EC3104 chip, e.g. the Harris AD2000. config SH_SATURN bool "Saturn" config SH_DREAMCAST bool "Dreamcast" help Select Dreamcast if configuring for a SEGA Dreamcast. More information at <http://www.m17n.org/linux-sh/dreamcast/>. There is a Dreamcast project is at <http://linuxdc.sourceforge.net/>. config SH_CAT68701 bool "CAT68701" config SH_BIGSUR bool "BigSur" config SH_SH2000 bool "SH2000" help SH-2000 is a single-board computer based around SH7709A chip intended for embedded applications. It has an Ethernet interface (CS8900A), direct connected Compact Flash socket, three serial ports and PC-104 bus. More information at <http://sh2000.sh-linux.org>. config SH_ADX bool "ADX" config SH_MPC1211 bool "MPC1211" config SH_UNKNOWN bool "BareCPU" help "Bare CPU" aka "unknown" means an SH-based system which is not one of the specific ones mentioned above, which means you need to enter all sorts of stuff like CONFIG_MEMORY_START because the config system doesn't already know what it is. You get a machine vector without any platform-specific code in it, so things like the RTC may not work. This option is for the early stages of porting to a new machine. endchoice config MMU bool "Support for memory management hardware" depends on !CPU_SH2 default y help Early SH processors (such as the SH7604) lack an MMU. In order to boot on these systems, this option must not be set. On other systems (such as the SH-3 and 4) where an MMU exists, turning this off will boot the kernel on these machines with the MMU implicitly switched off. config CMDLINE_BOOL bool "Default bootloader kernel arguments" config CMDLINE string "Initial kernel command string" depends on CMDLINE_BOOL default "console=ttySC1,115200" # Platform-specific memory start and size definitions config MEMORY_START hex "Physical memory start address" if !MEMORY_SET || MEMORY_OVERRIDE default "08000000" if !MEMORY_SET || MEMORY_OVERRIDE || !MEMORY_OVERRIDE && SH_ADX || SH_MPC1211 default "0c000000" if !MEMORY_OVERRIDE && (SH_DREAMCAST || SH_HP600 || SH_BIGSUR || SH_SH2000 || SH_7751_SOLUTION_ENGINE || SH_SOLUTION_ENGINE) ---help--- Computers built with Hitachi SuperH processors always map the ROM starting at address zero. But the processor does not specify the range that RAM takes. The physical memory (RAM) start address will be automatically set to 08000000, unless you selected one of the following processor types: SolutionEngine, Overdrive, HP620, HP680, HP690, in which case the start address will be set to 0c000000. Tweak this only when porting to a new machine which is not already known by the config system. Changing it from the known correct value on any of the known systems will only lead to disaster. config MEMORY_SIZE hex "Physical memory size" if !MEMORY_SET || MEMORY_OVERRIDE default "00400000" if !MEMORY_SET || MEMORY_OVERRIDE || !MEMORY_OVERRIDE && SH_ADX || !MEMORY_OVERRIDE && (SH_HP600 || SH_BIGSUR || SH_SH2000) default "01000000" if !MEMORY_OVERRIDE && SH_DREAMCAST default "04000000" if !MEMORY_OVERRIDE && SH_7751_SOLUTION_ENGINE default "02000000" if !MEMORY_OVERRIDE && SH_SOLUTION_ENGINE default "08000000" if SH_MPC1211 help This sets the default memory size assumed by your SH kernel. It can be overridden as normal by the 'mem=' argument on the kernel command line. If unsure, consult your board specifications or just leave it as 0x00400000 which was the default value before this became configurable. config MEMORY_SET bool depends on !MEMORY_OVERRIDE && (SH_MPC1211 || SH_ADX || SH_DREAMCAST || SH_HP600 || SH_BIGSUR || SH_SH2000 || SH_7751_SOLUTION_ENGINE || SH_SOLUTION_ENGINE) default y help This is an option about which you will never be asked a question. Therefore, I conclude that you do not exist - go away. There is a grue here. # If none of the above have set memory start/size, ask the user. config MEMORY_OVERRIDE bool "Override default load address and memory size" # XXX: break these out into the board-specific configs below config CF_ENABLER bool "Compact Flash Enabler support" depends on SH_ADX || SH_SOLUTION_ENGINE || SH_UNKNOWN || SH_CAT68701 ---help--- Compact Flash is a small, removable mass storage device introduced in 1994 originally as a PCMCIA device. If you say `Y' here, you compile in support for Compact Flash devices directly connected to a SuperH processor. A Compact Flash FAQ is available at <http://www.compactflash.org/faqs/faq.htm>. If your board has "Directly Connected" CompactFlash at area 5 or 6, you may want to enable this option. Then, you can use CF as primary IDE drive (only tested for SanDisk). If in doubt, select 'N'. choice prompt "Compact Flash Connection Area" depends on CF_ENABLER default CF_AREA6 config CF_AREA5 bool "Area5" help If your board has "Directly Connected" CompactFlash, You should select the area where your CF is connected to. - "Area5" if CompactFlash is connected to Area 5 (0x14000000) - "Area6" if it is connected to Area 6 (0x18000000) "Area6" will work for most boards. For ADX, select "Area5". config CF_AREA6 bool "Area6" endchoice config CF_BASE_ADDR hex depends on CF_ENABLER default "b8000000" if CF_AREA6 default "b4000000" if CF_AREA5 endmenu # The SH7750 RTC module is disabled in the Dreamcast config SH_RTC bool depends on !SH_DREAMCAST default y help Selecting this option will allow the Linux kernel to emulate PC's RTC. If unsure, say N. # This is also board-specific config PCI_AUTO bool config SH_HP600 bool depends on SH_HP620 || SH_HP680 || SH_HP690 default y config DISCONTIGMEM bool depends on SH_HP690 default y help Say Y to upport efficient handling of discontiguous physical memory, for architectures which are either NUMA (Non-Uniform Memory Access) or have huge holes in the physical address space for other reasons. See <file:Documentation/vm/numa> for more. menu "Processor type and features" # # Ick, get rid of all this CPU_SUBTYPE nonsense. Just probe it, fill in # cpu_data, and leave it alone. (Feasible for SH-4 at least, and some # SH-3). ++paulm # choice prompt "Processor type" default CPU_SUBTYPE_SH7708 config CPU_SUBTYPE_SH7604 bool "SH7604" help Select SH7604 if you have SH7604 config CPU_SUBTYPE_SH7707 bool "SH7707" ---help--- Select the type of SuperH processor you have. This information is used for optimizing and configuration purposes. Select SH7604 if you have a SH-2 CPU. Select SH7707 if you have a 60 Mhz SH-3 HD6417707 CPU. Select SH7708 if you have a 60 Mhz SH-3 HD6417708S or if you have a 100 Mhz SH-3 HD6417708R CPU. Select SH7709 if you have a 80 Mhz SH-3 HD6417709 CPU. Select SH7750 if you have a 200 Mhz SH-4 HD6417750 CPU. Select SH7751 if you have a SH7751 Select ST40STB1 if you have a ST40STB1 config CPU_SUBTYPE_SH7708 bool "SH7708" help Select SH7708 if you have a 60 Mhz SH-3 HD6417708S or if you have a 100 Mhz SH-3 HD6417708R CPU. config CPU_SUBTYPE_SH7709 bool "SH7709" help Select SH7709 if you have a 80 Mhz SH-3 HD6417709 CPU. config CPU_SUBTYPE_SH7750 bool "SH7750" help Select SH7750 if you have a 200 Mhz SH-4 HD6417750 CPU. config CPU_SUBTYPE_SH7751 bool "SH7751" help Select SH7750 if you have a 166 Mhz SH-4 HD6417751 CPU. config CPU_SUBTYPE_ST40STB1 bool "ST40STB1" help Select ST40STB1 if you have a ST40STB1 CPU. endchoice config CPU_SH2 bool depends on CPU_SUBTYPE_SH7604 default y config CPU_SH3 bool depends on !CPU_SH2 && (CPU_SUBTYPE_SH7707 || CPU_SUBTYPE_SH7708 || CPU_SUBTYPE_SH7709) default y config CPU_SH4 bool depends on !CPU_SH3 && !CPU_SH2 && (CPU_SUBTYPE_SH7750 || CPU_SUBTYPE_SH7751 || CPU_SUBTYPE_ST40STB1) default y config ZERO_PAGE_OFFSET hex "Zero page offset" default "00001000" if !SH_MPC1211 default "00004000" if SH_MPC1211 help This sets the default offset of zero page. # XXX: needs to lose subtype for system type config ST40_LMI_MEMORY bool "Memory on LMI" depends on CPU_SUBTYPE_ST40STB1 config MEMORY_START hex depends on CPU_SUBTYPE_ST40STB1 && ST40_LMI_MEMORY default "08000000" config MEMORY_SIZE hex depends on CPU_SUBTYPE_ST40STB1 && ST40_LMI_MEMORY default "00400000" config MEMORY_SET bool depends on CPU_SUBTYPE_ST40STB1 && ST40_LMI_MEMORY default y config CPU_LITTLE_ENDIAN bool "Little Endian" help Some SuperH machines can be configured for either little or big endian byte order. These modes require different kernels. Say Y if your machine is little endian, N if it's a big endian machine. config PREEMPT bool "Preemptible Kernel (EXPERIMENTAL)" depends on EXPERIMENTAL config UBC_WAKEUP bool "Wakeup UBC on startup" help Selecting this option will wakeup the User Break Controller (UBC) on startup. Although the UBC is left in an awake state when the processor comes up, some boot loaders misbehave by putting the UBC to sleep in a power saving state, which causes issues with things like ptrace(). If unsure, say N. config SH_WRITETHROUGH bool "Use write-through caching" default y if CPU_SH2 help Selecting this option will configure the caches in write-through mode, as opposed to the default write-back configuration. Since there's sill some aliasing issues on SH-4, this option will unfortunately still require the majority of flushing functions to be implemented to deal with aliasing. If unsure, say N. config SH_OCRAM bool "Operand Cache RAM (OCRAM) support" help Selecting this option will automatically tear down the number of sets in the dcache by half, which in turn exposes a memory range. The addresses for the OC RAM base will vary according to the processor version. Consult vendor documentation for specifics. If unsure, say N. config SMP bool "Symmetric multi-processing support" ---help--- This enables support for systems with more than one CPU. If you have a system with only one CPU, like most personal computers, say N. If you have a system with more than one CPU, say Y. If you say N here, the kernel will run on single and multiprocessor machines, but will use only one CPU of a multiprocessor machine. If you say Y here, the kernel will run on many, but not all, singleprocessor machines. On a singleprocessor machine, the kernel will run faster if you say N here. People using multiprocessor machines who say Y here should also say Y to "Enhanced Real Time Clock Support", below. See also the <file:Documentation/smp.tex>, <file:Documentation/smp.txt>, <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available at <http://www.tldp.org/docs.html#howto>. If you don't know what to do here, say N. config NR_CPUS int "Maximum number of CPUs (2-32)" depends on SMP default "2" help This allows you to specify the maximum number of CPUs which this kernel will support. The maximum supported value is 32 and the minimum value which makes sense is 2. This is purely to save memory - each supported CPU adds approximately eight kilobytes to the kernel image. config SH_DMA bool "DMA controller (DMAC) support" help Selecting this option will provide same API as PC's Direct Memory Access Controller(8237A) for SuperH DMAC. If unsure, say N. config CPU_FREQ bool "CPU Frequency scaling" help CPU clock scaling allows you to change the clock speed of the running CPU on the fly. For details, take a look at <file:Documentation/cpufreq>. If unsure, say N. config CPU_FREQ_TABLE tristate "CPU frequency table helpers" depends on CPU_FREQ default y help Many cpufreq drivers use these helpers, so only say N here if the cpufreq driver of your choice doesn't need these helpers. If unsure, say Y. config SH_CPU_FREQ tristate "SuperH CPU Frequency driver" depends on CPU_FREQ help This adds the cpufreq driver for SuperH. At present, only the SH-4 is supported. For details, take a look at <file:Documentation/cpufreq>. If unsure, say N. source "drivers/cpufreq/Kconfig" # A board must have defined HD6446X_SERIES in order to see these choice prompt "HD6446x options" depends HD6446X_SERIES default HD64461 config HD64461 bool "Hitachi HD64461 companion chip support" depends on CPU_SUBTYPE_SH7709 ---help--- The Hitachi HD64461 provides an interface for the SH7709 CPU, supporting a LCD controller, CRT color controller, IrDA up to 4 Mbps, and a PCMCIA controller supporting 2 slots. More information is available at <http://semiconductor.hitachi.com/windowsce/superh/sld013.htm>. Say Y if you want support for the HD64461. Otherwise, say N. config HD64465 bool "Hitachi HD64465 companion chip support" depends on CPU_SUBTYPE_SH7750 ---help--- The Hitachi HD64465 provides an interface for the SH7750 CPU, supporting a LCD controller, CRT color controller, IrDA, USB, PCMCIA, keyboard controller, and a printer interface. More information is available at <http://global.hitachi.com/New/cnews/E/1998/981019B.html>. Say Y if you want support for the HD64465. Otherwise, say N. endchoice # These will also be split into the Kconfig's below config HD64461_IRQ int "HD64461 IRQ" depends on HD64461 default "36" help The default setting of the HD64461 IRQ is 36. Do not change this unless you know what you are doing. config HD64461_ENABLER bool "HD64461 PCMCIA enabler" depends on HD64461 help Say Y here if you want to enable PCMCIA support via the HD64461 companion chip. Otherwise, say N. config HD64465_IOBASE hex "HD64465 start address" depends on HD64465 default "b0000000" help The default setting of the HD64465 IO base address is 0xb0000000. Do not change this unless you know what you are doing. config HD64465_IRQ int "HD64465 IRQ" depends on HD64465 default "5" help The default setting of the HD64465 IRQ is 5. Do not change this unless you know what you are doing. endmenu menu "Bus options (PCI, PCMCIA, EISA, MCA, ISA)" # Even on SuperH devices which don't have an ISA bus, # this variable helps the PCMCIA modules handle # IRQ requesting properly -- Greg Banks. config ISA bool default y help Find out whether you have ISA slots on your motherboard. ISA is the name of a bus system, i.e. the way the CPU talks to the other stuff inside your box. Other bus systems are PCI, EISA, MicroChannel (MCA) or VESA. ISA is an older system, now being displaced by PCI; newer boards don't support it. If you have ISA, say Y, otherwise N. config EISA bool ---help--- The Extended Industry Standard Architecture (EISA) bus was developed as an open alternative to the IBM MicroChannel bus. The EISA bus provided some of the features of the IBM MicroChannel bus while maintaining backward compatibility with cards made for the older ISA bus. The EISA bus saw limited use between 1988 and 1995 when it was made obsolete by the PCI bus. Say Y here if you are building a kernel for an EISA-based machine. Otherwise, say N. config MCA bool help MicroChannel Architecture is found in some IBM PS/2 machines and laptops. It is a bus system similar to PCI or ISA. See <file:Documentation/mca.txt> (and especially the web page given there) before attempting to build an MCA bus kernel. config SBUS bool config PCI bool "PCI support" help Find out whether you have a PCI motherboard. PCI is the name of a bus system, i.e. the way the CPU talks to the other stuff inside your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or VESA. If you have PCI, say Y, otherwise N. The PCI-HOWTO, available from <http://www.tldp.org/docs.html#howto>, contains valuable information about which PCI hardware does work under Linux and which doesn't. choice prompt "PCI access mode" depends on PCI default PCI_GOANY config PCI_GOBIOS bool "BIOS" ---help--- On PCI systems, the BIOS can be used to detect the PCI devices and determine their configuration. However, some old PCI motherboards have BIOS bugs and may crash if this is done. Also, some embedded PCI-based systems don't have any BIOS at all. Linux can also try to detect the PCI hardware directly without using the BIOS. With this option, you can specify how Linux should detect the PCI devices. If you choose "BIOS", the BIOS will be used, if you choose "Direct", the BIOS won't be used, and if you choose "Any", the kernel will try the direct access method and falls back to the BIOS if that doesn't work. If unsure, go with the default, which is "Any". config PCI_GODIRECT bool "Direct" config PCI_GOANY bool "Any" endchoice config PCI_BIOS bool depends on PCI && (PCI_GOBIOS || PCI_GOANY) default y config PCI_DIRECT bool depends on PCI && (PCI_GODIRECT || PCI_GOANY) default y config SH_PCIDMA_NONCOHERENT bool "Cache and PCI noncoherent" depends on PCI help Enable this option if your platform does not have a CPU cache which remains coherent with PCI DMA. It is safest to say 'Y', although you will see better performance if you can say 'N', because the PCI DMA code will not have to flush the CPU's caches. If you have a PCI host bridge integrated with your SH CPU, refer carefully to the chip specs to see if you can say 'N' here. Otherwise, leave it as 'Y'. source "drivers/pci/Kconfig" config HOTPLUG bool "Support for hot-pluggable devices" ---help--- Say Y here if you want to plug devices into your computer while the system is running, and be able to use them quickly. In many cases, the devices can likewise be unplugged at any time too. One well known example of this is PCMCIA- or PC-cards, credit-card size devices such as network cards, modems or hard drives which are plugged into slots found on all modern laptop computers. Another example, used on modern desktops as well as laptops, is USB. Enable HOTPLUG and KMOD, and build a modular kernel. Get agent software (at <http://linux-hotplug.sourceforge.net/>) and install it. Then your kernel will automatically call out to a user mode "policy agent" (/sbin/hotplug) to load modules and set up software needed to use devices as you hotplug them. source "drivers/pcmcia/Kconfig" source "drivers/pci/hotplug/Kconfig" endmenu menu "Executable file formats" source "fs/Kconfig.binfmt" endmenu source "drivers/base/Kconfig" source "drivers/mtd/Kconfig" source "drivers/parport/Kconfig" source "drivers/block/Kconfig" source "drivers/ide/Kconfig" source "drivers/scsi/Kconfig" source "drivers/cdrom/Kconfig" source "drivers/md/Kconfig" source "drivers/ieee1394/Kconfig" source "net/Kconfig" source "drivers/isdn/Kconfig" source "drivers/telephony/Kconfig" # # input - input/joystick depends on it. As does USB. # source "drivers/input/Kconfig" #if [ "$CONFIG_SH_DREAMCAST" = "y" ]; then # source drivers/maple/Config.in #fi menu "Character devices" config VT bool "Virtual terminal" ---help--- If you say Y here, you will get support for terminal devices with display and keyboard devices. These are called "virtual" because you can run several virtual terminals (also called virtual consoles) on one physical terminal. This is rather useful, for example one virtual terminal can collect system messages and warnings, another one can be used for a text-mode user session, and a third could run an X session, all in parallel. Switching between virtual terminals is done with certain key combinations, usually Alt-<function key>. The setterm command ("man setterm") can be used to change the properties (such as colors or beeping) of a virtual terminal. The man page console_codes(4) ("man console_codes") contains the special character sequences that can be used to change those properties directly. The fonts used on virtual terminals can be changed with the setfont ("man setfont") command and the key bindings are defined with the loadkeys ("man loadkeys") command. You need at least one virtual terminal device in order to make use of your keyboard and monitor. Therefore, only people configuring an embedded system would want to say N here in order to save some memory; the only way to log into such a system is then via a serial or network connection. If unsure, say Y, or else you won't be able to do much with your new shiny Linux system :-) config VT_CONSOLE bool "Support for console on virtual terminal" depends on VT ---help--- The system console is the device which receives all kernel messages and warnings and which allows logins in single user mode. If you answer Y here, a virtual terminal (the device used to interact with a physical terminal) can be used as system console. This is the most common mode of operations, so you should say Y here unless you want the kernel messages be output only to a serial port (in which case you should say Y to "Console on serial port", below). If you do say Y here, by default the currently visible virtual terminal (/dev/tty0) will be used as system console. You can change that with a kernel command line option such as "console=tty3" which would use the third virtual terminal as system console. (Try "man bootparam" or see the documentation of your boot loader (lilo or loadlin) about how to pass options to the kernel at boot time.) If unsure, say Y. config HW_CONSOLE bool depends on VT && !S390 && !UM default y config SERIAL tristate "Serial (8250, 16450, 16550 or compatible) support" ---help--- This selects whether you want to include the driver for the standard serial ports. The standard answer is Y. People who might say N here are those that are setting up dedicated Ethernet WWW/FTP servers, or users that have one of the various bus mice instead of a serial mouse and don't intend to use their machine's standard serial port for anything. (Note that the Cyclades and Stallion multi serial port drivers do not need this driver built in for them to work.) To compile this driver as a module, choose M here: the module will be called serial. [WARNING: Do not compile this driver as a module if you are using non-standard serial ports, since the configuration information will be lost when the driver is unloaded. This limitation may be lifted in the future.] BTW1: If you have a mouseman serial mouse which is not recognized by the X window system, try running gpm first. BTW2: If you intend to use a software modem (also called Winmodem) under Linux, forget it. These modems are crippled and require proprietary drivers which are only available under Windows. Most people will say Y or M here, so that they can use serial mice, modems and similar devices connecting to the standard serial ports. config SH_SCI tristate "Serial (SCI, SCIF) support" help Selecting this option will allow the Linux kernel to transfer data over SCI (Serial Communication Interface) and/or SCIF (Serial Communication Interface with FIFO) which are built into the Hitachi SuperH processor. The option provides 1 to 3 (depending on the CPU model) standard Linux tty devices, /dev/ttySC[012]; one of these is normally used as the system console. If in doubt, press "y". config SERIAL_CONSOLE bool "Support for console on serial port" depends on SERIAL=y || SH_SCI=y ---help--- If you say Y here, it will be possible to use a serial port as the system console (the system console is the device which receives all kernel messages and warnings and which allows logins in single user mode). This could be useful if some terminal or printer is connected to that serial port. Even if you say Y here, the currently visible virtual console (/dev/tty0) will still be used as the system console by default, but you can alter that using a kernel command line option such as "console=ttyS1". (Try "man bootparam" or see the documentation of your boot loader (lilo or loadlin) about how to pass options to the kernel at boot time.) If you don't have a VGA card installed and you say Y here, the kernel will automatically use the first serial line, /dev/ttyS0, as system console. If unsure, say N. comment "Unix 98 PTY support" config UNIX98_PTYS bool "Unix98 PTY support" ---help--- A pseudo terminal (PTY) is a software device consisting of two halves: a master and a slave. The slave device behaves identical to a physical terminal; the master device is used by a process to read data from and write data to the slave, thereby emulating a terminal. Typical programs for the master side are telnet servers and xterms. Linux has traditionally used the BSD-like names /dev/ptyxx for masters and /dev/ttyxx for slaves of pseudo terminals. This scheme has a number of problems. The GNU C library glibc 2.1 and later, however, supports the Unix98 naming standard: in order to acquire a pseudo terminal, a process opens /dev/ptmx; the number of the pseudo terminal is then made available to the process and the pseudo terminal slave can be accessed as /dev/pts/<number>. What was traditionally /dev/ttyp2 will then be /dev/pts/2, for example. The entries in /dev/pts/ are created on the fly by a virtual file system; therefore, if you say Y here you should say Y to "/dev/pts file system for Unix98 PTYs" as well. If you want to say Y here, you need to have the C library glibc 2.1 or later (equal to libc-6.1, check with "ls -l /lib/libc.so.*"). Read the instructions in <file:Documentation/Changes> pertaining to pseudo terminals. It's safe to say N. config UNIX98_PTY_COUNT int "Maximum number of Unix98 PTYs in use (0-2048)" depends on UNIX98_PTYS default "256" help The maximum number of Unix98 PTYs that can be used at any one time. The default is 256, and should be enough for desktop systems. Server machines which support incoming telnet/rlogin/ssh connections and/or serve several X terminals may want to increase this: every incoming connection and every xterm uses up one PTY. When not in use, each additional set of 256 PTYs occupy approximately 8 KB of kernel memory on 32-bit architectures. config HEARTBEAT bool "Heartbeat LED" depends on SH_MPC1211 || SH_CAT68701 || SH_STB1_HARP || SH_STB1_OVERDRIVE || SH_BIGSUR || SH_7751_SOLUTION_ENGINE || SH_SOLUTION_ENGINE help Use the power-on LED on your machine as a load meter. The exact behavior is platform-dependent, but normally the flash frequency is a hyperbolic function of the 5-minute load average. menu "Maple Bus input peripherals" depends on SH_DREAMCAST && MAPLE config MAPLE_KEYBOARD tristate "Maple Bus keyboard support" depends on INPUT config MAPLE_MOUSE tristate "Maple Bus mouse support" depends on INPUT comment "Input core support is required for Maple input peripherals" depends on INPUT=n endmenu config PRINTER tristate "Parallel printer support" depends on PARPORT ---help--- If you intend to attach a printer to the parallel port of your Linux box (as opposed to using a serial printer; if the connector at the printer has 9 or 25 holes ["female"], then it's serial), say Y. Also read the Printing-HOWTO, available from <http://www.tldp.org/docs.html#howto>. It is possible to share one parallel port among several devices (e.g. printer and ZIP drive) and it is safe to compile the corresponding drivers into the kernel. To compile this driver as a module, choose M here and read <file:Documentation/parport.txt>. The module will be called lp. If you have several parallel ports, you can specify which ports to use with the "lp" kernel command line option. (Try "man bootparam" or see the documentation of your boot loader (lilo or loadlin) about how to pass options to the kernel at boot time.) The syntax of the "lp" command line option can be found in <file:drivers/char/lp.c>. If you have more than 8 printers, you need to increase the LP_NO macro in lp.c and the PARPORT_MAX macro in parport.h. config LP_CONSOLE bool "Support for console on line printer" depends on PRINTER ---help--- If you want kernel messages to be printed out as they occur, you can have a console on the printer. This option adds support for doing that; to actually get it to happen you need to pass the option "console=lp0" to the kernel at boot time. If the printer is out of paper (or off, or unplugged, or too busy..) the kernel will stall until the printer is ready again. By defining CONSOLE_LP_STRICT to 0 (at your own risk) you can make the kernel continue when this happens, but it'll lose the kernel messages. If unsure, say N. config PPDEV tristate "Support for user-space parallel port device drivers" depends on PARPORT ---help--- Saying Y to this adds support for /dev/parport device nodes. This is needed for programs that want portable access to the parallel port, for instance deviceid (which displays Plug-and-Play device IDs). This is the parallel port equivalent of SCSI generic support (sg). It is safe to say N to this -- it is not needed for normal printing or parallel port CD-ROM/disk support. To compile this support as a module, choose M here: the module will be called ppdev. If unsure, say N. config PSMOUSE bool "PS/2 mouse (aka \"auxiliary device\") support" ---help--- The PS/2 mouse connects to a special mouse port that looks much like the keyboard port (small circular connector with 6 pins). This way, the mouse does not use any serial ports. This port can also be used for other input devices like light pens, tablets, keypads. Compaq, AST and IBM all use this as their mouse port on currently shipping machines. The trackballs of some laptops are PS/2 mice also. In particular, the C&T 82C710 mouse on TI Travelmates is a PS/2 mouse. Although PS/2 mice are not technically bus mice, they are explained in detail in the Busmouse-HOWTO, available from <http://www.tldp.org/docs.html#howto>. When using a PS/2 mouse, you can get problems if you want to use the mouse both on the Linux console and under X. Using the "-R" option of the Linux mouse managing program gpm (available from <ftp://gnu.systemy.it/pub/gpm/>) solves this problem, or you can get the "mconv2" utility from <ftp://ibiblio.org/pub/Linux/system/mouse/>. menu "Watchdog Cards" config WATCHDOG bool "Watchdog Timer Support" ---help--- If you say Y here (and to one of the following options) and create a character special file /dev/watchdog with major number 10 and minor number 130 using mknod ("man mknod"), you will get a watchdog, i.e.: subsequently opening the file and then failing to write to it for longer than 1 minute will result in rebooting the machine. This could be useful for a networked machine that needs to come back online as fast as possible after a lock-up. There's both a watchdog implementation entirely in software (which can sometimes fail to reboot the machine) and a driver for hardware watchdog boards, which are more robust and can also keep track of the temperature inside your computer. For details, read <file:Documentation/watchdog.txt> in the kernel source. The watchdog is usually used together with the watchdog daemon which is available from <ftp://ibiblio.org/pub/Linux/system/daemons/watchdog/>. This daemon can also monitor NFS connections and can reboot the machine when the process table is full. If unsure, say N. config WATCHDOG_NOWAYOUT bool "Disable watchdog shutdown on close" depends on WATCHDOG help The default watchdog behaviour (which you get if you say N here) is to stop the timer if the process managing it closes the file /dev/watchdog. It's always remotely possible that this process might get killed. If you say Y here, the watchdog cannot be stopped once it has been started. config SH_WDT tristate "SuperH Watchdog" depends on WATCHDOG help This driver adds watchdog support for the integrated watchdog in the SuperH processors. If you have one of these processors and wish to have watchdog support enabled, say Y, otherwise say N. As a side note, saying Y here will automatically boost HZ to 1000 so that the timer has a chance to clear the overflow counter. On slower systems (such as the SH-2 and SH-3) this will likely yield some performance issues. As such, the WDT should be avoided here unless it is absolutely necessary. To compile this driver as a module, choose M here: the module will be called shwdt. endmenu config RTC tristate "Enhanced Real Time Clock Support" ---help--- If you say Y here and create a character special file /dev/rtc with major number 10 and minor number 135 using mknod ("man mknod"), you will get access to the real time clock (or hardware clock) built into your computer. Every PC has such a clock built in. It can be used to generate signals from as low as 1Hz up to 8192Hz, and can also be used as a 24 hour alarm. It reports status information via the file /proc/driver/rtc and its behaviour is set by various ioctls on /dev/rtc. If you run Linux on a multiprocessor machine and said Y to "Symmetric Multi Processing" above, you should say Y here to read and set the RTC in an SMP compatible fashion. If you think you have a use for such a device (such as periodic data sampling), then say Y here, and read <file:Documentation/rtc.txt> for details. To compile this driver as a module, choose M here: the module will be called rtc. source "drivers/char/pcmcia/Kconfig" source "drivers/serial/Kconfig" source "drivers/i2c/Kconfig" endmenu source "fs/Kconfig" source "drivers/media/Kconfig" source "drivers/video/Kconfig" source "sound/Kconfig" source "drivers/usb/Kconfig" menu "Kernel hacking" config MAGIC_SYSRQ bool "Magic SysRq key" help If you say Y here, you will have some control over the system even if the system crashes for example during kernel debugging (e.g., you will be able to flush the buffer cache to disk, reboot the system immediately or dump some status information). This is accomplished by pressing various keys while holding SysRq (Alt+PrintScreen). It also works on a serial console (on PC hardware at least), if you send a BREAK and then within 5 seconds a command keypress. The keys are documented in <file:Documentation/sysrq.txt>. Don't say Y unless you really know what this hack does. config DEBUG_SPINLOCK bool "Spinlock debugging" help Say Y here and build SMP to catch missing spinlock initialization and certain other kinds of spinlock errors commonly made. This is best used in conjunction with the NMI watchdog so that spinlock deadlocks are also debuggable. config SH_STANDARD_BIOS bool "Use LinuxSH standard BIOS" help Say Y here if your target has the gdb-sh-stub package from www.m17n.org (or any conforming standard LinuxSH BIOS) in FLASH or EPROM. The kernel will use standard BIOS calls during boot for various housekeeping tasks (including calls to read and write characters to a system console, get a MAC address from an on-board Ethernet interface, and shut down the hardware). Note this does not work with machines with an existing operating system in mask ROM and no flash (WindowsCE machines fall in this category). If unsure, say N. config SH_EARLY_PRINTK bool "Early printk support" depends on SH_STANDARD_BIOS help Say Y here to redirect kernel printk messages to the serial port used by the SH-IPL bootloader, starting very early in the boot process and ending when the kernel's serial console is initialised. This option is only useful porting the kernel to a new machine, when the kernel may crash or hang before the serial console is initialised. If unsure, say N. endmenu source "security/Kconfig" source "crypto/Kconfig" source "lib/Kconfig"