| CONFIG_SMP |
| 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. |
| |
| Note that if you say Y here and choose architecture "586" or |
| "Pentium" under "Processor family", the kernel will not work on 486 |
| architectures. Similarly, multiprocessor kernels for the "PPro" |
| architecture may not work on all Pentium based boards. |
| |
| People using multiprocessor machines who say Y here should also say |
| Y to "Enhanced Real Time Clock Support", below. The "Advanced Power |
| Management" code will be disabled if you say Y here. |
| |
| See also the <file:Documentation/smp.tex>, |
| <file:Documentation/smp.txt>, <file:Documentation/i386/IO-APIC.txt>, |
| <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available at |
| <http://www.linuxdoc.org/docs.html#howto>. |
| |
| If you don't know what to do here, say N. |
| |
| CONFIG_X86 |
| This is Linux's home port. Linux was originally native to the Intel |
| 386, and runs on all the later x86 processors including the Intel |
| 486, 586, Pentiums, and various instruction-set-compatible chips by |
| AMD, Cyrix, and others. |
| |
| CONFIG_MULTIQUAD |
| This option is used for getting Linux to run on a (IBM/Sequent) NUMA |
| multiquad box. This changes the way that processors are bootstrapped, |
| and uses Clustered Logical APIC addressing mode instead of Flat Logical. |
| You will need a new lynxer.elf file to flash your firmware with - send |
| email to Martin.Bligh@us.ibm.com |
| |
| CONFIG_X86_UP_IOAPIC |
| An IO-APIC (I/O Advanced Programmable Interrupt Controller) is an |
| SMP-capable replacement for PC-style interrupt controllers. Most |
| SMP systems and a small number of uniprocessor systems have one. |
| If you have a single-CPU system with an IO-APIC, you can say Y here |
| to use it. If you say Y here even though your machine doesn't have |
| an IO-APIC, then the kernel will still run with no slowdown at all. |
| |
| If you have a system with several CPUs, you do not need to say Y |
| here: the IO-APIC will be used automatically. |
| |
| CONFIG_X86_UP_APIC |
| A local APIC (Advanced Programmable Interrupt Controller) is an |
| integrated interrupt controller in the CPU. If you have a single-CPU |
| system which has a processor with a local APIC, you can say Y here to |
| enable and use it. If you say Y here even though your machine doesn't |
| have a local APIC, then the kernel will still run with no slowdown at |
| all. The local APIC supports CPU-generated self-interrupts (timer, |
| performance counters), and the NMI watchdog which detects hard lockups. |
| |
| If you have a system with several CPUs, you do not need to say Y |
| here: the local APIC will be used automatically. |
| |
| CONFIG_MATH_EMULATION |
| Linux can emulate a math coprocessor (used for floating point |
| operations) if you don't have one. 486DX and Pentium processors have |
| a math coprocessor built in, 486SX and 386 do not, unless you added |
| a 487DX or 387, respectively. (The messages during boot time can |
| give you some hints here ["man dmesg"].) Everyone needs either a |
| coprocessor or this emulation. |
| |
| If you don't have a math coprocessor, you need to say Y here; if you |
| say Y here even though you have a coprocessor, the coprocessor will |
| be used nevertheless. (This behavior can be changed with the kernel |
| command line option "no387", which comes handy if your coprocessor |
| is broken. 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.) This means that it is a good idea to say Y here if you |
| intend to use this kernel on different machines. |
| |
| More information about the internals of the Linux math coprocessor |
| emulation can be found in <file:arch/i386/math-emu/README>. |
| |
| If you are not sure, say Y; apart from resulting in a 66 KB bigger |
| kernel, it won't hurt. |
| |
| CONFIG_NOHIGHMEM |
| Linux can use up to 64 Gigabytes of physical memory on x86 systems. |
| However, the address space of 32-bit x86 processors is only 4 |
| Gigabytes large. That means that, if you have a large amount of |
| physical memory, not all of it can be "permanently mapped" by the |
| kernel. The physical memory that's not permanently mapped is called |
| "high memory". |
| |
| If you are compiling a kernel which will never run on a machine with |
| more than 1 Gigabyte total physical RAM, answer "off" here (default |
| choice and suitable for most users). This will result in a "3GB/1GB" |
| split: 3GB are mapped so that each process sees a 3GB virtual memory |
| space and the remaining part of the 4GB virtual memory space is used |
| by the kernel to permanently map as much physical memory as |
| possible. |
| |
| If the machine has between 1 and 4 Gigabytes physical RAM, then |
| answer "4GB" here. |
| |
| If more than 4 Gigabytes is used then answer "64GB" here. This |
| selection turns Intel PAE (Physical Address Extension) mode on. |
| PAE implements 3-level paging on IA32 processors. PAE is fully |
| supported by Linux, PAE mode is implemented on all recent Intel |
| processors (Pentium Pro and better). NOTE: If you say "64GB" here, |
| then the kernel will not boot on CPUs that don't support PAE! |
| |
| The actual amount of total physical memory will either be |
| auto detected or can be forced by using a kernel command line option |
| such as "mem=256M". (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 "off". |
| |
| CONFIG_HIGHMEM4G |
| Select this if you have a 32-bit processor and between 1 and 4 |
| gigabytes of physical RAM. |
| |
| CONFIG_HIGHMEM64G |
| Select this if you have a 32-bit processor and more than 4 |
| gigabytes of physical RAM. |
| |
| CONFIG_IDE |
| If you say Y here, your kernel will be able to manage low cost mass |
| storage units such as ATA/(E)IDE and ATAPI units. The most common |
| cases are IDE hard drives and ATAPI CD-ROM drives. |
| |
| If your system is pure SCSI and doesn't use these interfaces, you |
| can say N here. |
| |
| Integrated Disk Electronics (IDE aka ATA-1) is a connecting standard |
| for mass storage units such as hard disks. It was designed by |
| Western Digital and Compaq Computer in 1984. It was then named |
| ST506. Quite a number of disks use the IDE interface. |
| |
| AT Attachment (ATA) is the superset of the IDE specifications. |
| ST506 was also called ATA-1. |
| |
| Fast-IDE is ATA-2 (also named Fast ATA), Enhanced IDE (EIDE) is |
| ATA-3. It provides support for larger disks (up to 8.4GB by means of |
| the LBA standard), more disks (4 instead of 2) and for other mass |
| storage units such as tapes and cdrom. UDMA/33 (aka UltraDMA/33) is |
| ATA-4 and provides faster (and more CPU friendly) transfer modes |
| than previous PIO (Programmed processor Input/Output) from previous |
| ATA/IDE standards by means of fast DMA controllers. |
| |
| ATA Packet Interface (ATAPI) is a protocol used by EIDE tape and |
| CD-ROM drives, similar in many respects to the SCSI protocol. |
| |
| SMART IDE (Self Monitoring, Analysis and Reporting Technology) was |
| designed in order to prevent data corruption and disk crash by |
| detecting pre hardware failure conditions (heat, access time, and |
| the like...). Disks built since June 1995 may follow this standard. |
| The kernel itself don't manage this; however there are quite a |
| number of user programs such as smart that can query the status of |
| SMART parameters disk. |
| |
| If you want to compile this driver as a module ( = code which can be |
| inserted in and removed from the running kernel whenever you want), |
| say M here and read <file:Documentation/modules.txt>. The module |
| will be called ide.o. |
| |
| For further information, please read <file:Documentation/ide.txt>. |
| |
| If unsure, say Y. |
| |
| CONFIG_ISA |
| 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_PCI |
| 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.linuxdoc.org/docs.html#howto>, contains valuable |
| information about which PCI hardware does work under Linux and which |
| doesn't. |
| |
| CONFIG_PCI_GOBIOS |
| 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_HOTPLUG_PCI |
| Say Y here if you have a motherboard with a PCI Hotplug controller. |
| This allows you to add and remove PCI cards while the machine is |
| powered up and running. The file system pcihpfs must be mounted |
| in order to interact with any PCI Hotplug controllers. |
| |
| This code is also available as a module ( = code which can be |
| inserted in and removed from the running kernel whenever you want). |
| The module will be called pci_hotplug.o. If you want to compile it |
| as a module, say M here and read <file:Documentation/modules.txt>. |
| |
| When in doubt, say N. |
| |
| CONFIG_MCA |
| 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_EISA |
| 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_VISWS |
| The SGI Visual Workstation series is an IA32-based workstation |
| based on SGI systems chips with some legacy PC hardware attached. |
| Say Y here to create a kernel to run on the SGI 320 or 540. |
| A kernel compiled for the Visual Workstation will not run on other |
| PC boards and vice versa. |
| See <file:Documentation/sgi-visws.txt> for more. |
| |
| CONFIG_HOTPLUG |
| 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. |
| |
| CONFIG_PCMCIA |
| Say Y here if you want to attach PCMCIA- or PC-cards to your Linux |
| computer. These are credit-card size devices such as network cards, |
| modems or hard drives often used with laptops computers. There are |
| actually two varieties of these cards: the older 16 bit PCMCIA cards |
| and the newer 32 bit CardBus cards. If you want to use CardBus |
| cards, you need to say Y here and also to "CardBus support" below. |
| |
| To use your PC-cards, you will need supporting software from David |
| Hinds' pcmcia-cs package (see the file <file:Documentation/Changes> |
| for location). Please also read the PCMCIA-HOWTO, available from |
| <http://www.linuxdoc.org/docs.html#howto>. |
| |
| This driver is also available as a module ( = code which can be |
| inserted in and removed from the running kernel whenever you want). |
| When compiled this way, there will be modules called pcmcia_core.o |
| and ds.o. If you want to compile it as a module, say M here and |
| read <file:Documentation/modules.txt>. |
| |
| CONFIG_KCORE_ELF |
| If you enabled support for /proc file system then the file |
| /proc/kcore will contain the kernel core image. This can be used |
| in gdb: |
| |
| $ cd /usr/src/linux ; gdb vmlinux /proc/kcore |
| |
| You have two choices here: ELF and A.OUT. Selecting ELF will make |
| /proc/kcore appear in ELF core format as defined by the Executable |
| and Linking Format specification. Selecting A.OUT will choose the |
| old "a.out" format which may be necessary for some old versions |
| of binutils or on some architectures. |
| |
| This is especially useful if you have compiled the kernel with the |
| "-g" option to preserve debugging information. It is mainly used |
| for examining kernel data structures on the live kernel so if you |
| don't understand what this means or are not a kernel hacker, just |
| leave it at its default value ELF. |
| |
| CONFIG_KCORE_AOUT |
| Not necessary unless you're using a very out-of-date binutils |
| version. You probably want KCORE_ELF. |
| |
| CONFIG_BINFMT_ELF |
| ELF (Executable and Linkable Format) is a format for libraries and |
| executables used across different architectures and operating |
| systems. Saying Y here will enable your kernel to run ELF binaries |
| and enlarge it by about 13 KB. ELF support under Linux has now all |
| but replaced the traditional Linux a.out formats (QMAGIC and ZMAGIC) |
| because it is portable (this does *not* mean that you will be able |
| to run executables from different architectures or operating systems |
| however) and makes building run-time libraries very easy. Many new |
| executables are distributed solely in ELF format. You definitely |
| want to say Y here. |
| |
| Information about ELF is contained in the ELF HOWTO available from |
| <http://www.linuxdoc.org/docs.html#howto>. |
| |
| If you find that after upgrading from Linux kernel 1.2 and saying Y |
| here, you still can't run any ELF binaries (they just crash), then |
| you'll have to install the newest ELF runtime libraries, including |
| ld.so (check the file <file:Documentation/Changes> for location and |
| latest version). |
| |
| If you want to compile this as a module ( = code which can be |
| inserted in and removed from the running kernel whenever you want), |
| say M here and read <file:Documentation/modules.txt>. The module |
| will be called binfmt_elf.o. Saying M or N here is dangerous because |
| some crucial programs on your system might be in ELF format. |
| |
| CONFIG_BINFMT_AOUT |
| A.out (Assembler.OUTput) is a set of formats for libraries and |
| executables used in the earliest versions of UNIX. Linux used the |
| a.out formats QMAGIC and ZMAGIC until they were replaced with the |
| ELF format. |
| |
| As more and more programs are converted to ELF, the use for a.out |
| will gradually diminish. If you disable this option it will reduce |
| your kernel by one page. This is not much and by itself does not |
| warrant removing support. However its removal is a good idea if you |
| wish to ensure that absolutely none of your programs will use this |
| older executable format. If you don't know what to answer at this |
| point then answer Y. If someone told you "You need a kernel with |
| QMAGIC support" then you'll have to say Y here. You may answer M to |
| compile a.out support as a module and later load the module when you |
| want to use a program or library in a.out format. The module will be |
| called binfmt_aout.o. Saying M or N here is dangerous though, |
| because some crucial programs on your system might still be in A.OUT |
| format. |
| |
| CONFIG_BINFMT_MISC |
| If you say Y here, it will be possible to plug wrapper-driven binary |
| formats into the kernel. You will like this especially when you use |
| programs that need an interpreter to run like Java, Python or |
| Emacs-Lisp. It's also useful if you often run DOS executables under |
| the Linux DOS emulator DOSEMU (read the DOSEMU-HOWTO, available from |
| <http://www.linuxdoc.org/docs.html#howto>). Once you have |
| registered such a binary class with the kernel, you can start one of |
| those programs simply by typing in its name at a shell prompt; Linux |
| will automatically feed it to the correct interpreter. |
| |
| You can do other nice things, too. Read the file |
| <file:Documentation/binfmt_misc.txt> to learn how to use this |
| feature, and <file:Documentation/java.txt> for information about how |
| to include Java support. |
| |
| You must say Y to "/proc file system support" (CONFIG_PROC_FS) to |
| use this part of the kernel. |
| |
| You may say M here for module support and later load the module when |
| you have use for it; the module is called binfmt_misc.o. If you |
| don't know what to answer at this point, say Y. |
| |
| CONFIG_M386 |
| This is the processor type of your CPU. This information is used for |
| optimizing purposes. In order to compile a kernel that can run on |
| all x86 CPU types (albeit not optimally fast), you can specify |
| "386" here. |
| |
| The kernel will not necessarily run on earlier architectures than |
| the one you have chosen, e.g. a Pentium optimized kernel will run on |
| a PPro, but not necessarily on a i486. |
| |
| Here are the settings recommended for greatest speed: |
| - "386" for the AMD/Cyrix/Intel 386DX/DXL/SL/SLC/SX, Cyrix/TI |
| 486DLC/DLC2, UMC 486SX-S and NexGen Nx586. Only "386" kernels |
| will run on a 386 class machine. |
| - "486" for the AMD/Cyrix/IBM/Intel 486DX/DX2/DX4 or |
| SL/SLC/SLC2/SLC3/SX/SX2 and UMC U5D or U5S. |
| - "586" for generic Pentium CPUs lacking the TSC |
| (time stamp counter) register. |
| - "Pentium-Classic" for the Intel Pentium. |
| - "Pentium-MMX" for the Intel Pentium MMX. |
| - "Pentium-Pro" for the Intel Pentium Pro/Celeron/Pentium II. |
| - "Pentium-III" for the Intel Pentium III |
| and Celerons based on the Coppermine core. |
| - "Pentium-4" for the Intel Pentium 4. |
| - "K6" for the AMD K6, K6-II and K6-III (aka K6-3D). |
| - "Athlon" for the AMD K7 family (Athlon/Duron/Thunderbird). |
| - "Crusoe" for the Transmeta Crusoe series. |
| - "Winchip-C6" for original IDT Winchip. |
| - "Winchip-2" for IDT Winchip 2. |
| - "Winchip-2A" for IDT Winchips with 3dNow! capabilities. |
| - "CyrixIII" for VIA Cyrix III or VIA C3. |
| |
| If you don't know what to do, choose "386". |
| |
| CONFIG_M486 |
| Select this for a x486 processor, ether Intel or one of the |
| compatible processors from AMD, Cyrix, IBM, or Intel. Includes DX, |
| DX2, and DX4 variants; also SL/SLC/SLC2/SLC3/SX/SX2 and UMC U5D or |
| U5S. |
| |
| CONFIG_M586 |
| Select this for an x586 or x686 processor such as the AMD K5, the |
| Intel 5x86 or 6x86, or the Intel 6x86MX. This choice does not |
| assume the RDTSC (Read Time Stamp Counter) instruction. |
| |
| CONFIG_M586TSC |
| Select this for a Pentium Classic processor with the RDTSC (Read |
| Time Stamp Counter) instruction for benchmarking. |
| |
| CONFIG_M586MMX |
| Select this for a Pentium with the MMX graphics/multimedia |
| extended instructions. |
| |
| CONFIG_M686 |
| Select this for a Pro/Celeron/Pentium II. This enables the use of |
| Pentium Pro extended instructions, and disables the init-time guard |
| against the f00f bug found in earlier Pentiums. |
| |
| CONFIG_MPENTIUMIII |
| Select this for Intel chips based on the Pentium-III and |
| Celeron-Coppermine core. Enables use of some extended prefetch |
| instructions, in addition to the Pentium II extensions. |
| |
| CONFIG_MPENTIUM4 |
| Select this for Intel Pentium 4 chips. Presently these are |
| treated almost like Pentium IIIs, but with a different cache |
| shift. |
| |
| CONFIG_MCRUSOE |
| Select this for Transmeta Crusoe processor. Treats the processor |
| like a 586 with TSC, and sets some GCC optimization flags (like a |
| Pentium Pro with no alignment requirements). |
| |
| CONFIG_MK6 |
| Select this for an AMD K6-family processor. Enables use of |
| some extended instructions, and passes appropriate optimization |
| flags to GCC. |
| |
| CONFIG_MK7 |
| Select this for an AMD Athlon K7-family processor. Enables use of |
| some extended instructions, and passes appropriate optimization |
| flags to GCC. |
| |
| CONFIG_MCYRIXIII |
| Select this for a Cyrix III or C3 chip. Presently Linux and GCC |
| treat this chip as a generic 586. Whilst the CPU is 686 class, |
| it lacks the cmov extension which gcc assumes is present when |
| generating 686 code. |
| |
| CONFIG_MWINCHIPC6 |
| Select this for a IDT Winchip C6 chip. Linux and GCC |
| treat this chip as a 586TSC with some extended instructions |
| and alignment requirements. |
| |
| CONFIG_MWINCHIP2 |
| Select this for a IDT Winchip-2. Linux and GCC |
| treat this chip as a 586TSC with some extended instructions |
| and alignment requirements. |
| |
| CONFIG_MWINCHIP3D |
| Select this for a IDT Winchip-2A or 3. Linux and GCC |
| treat this chip as a 586TSC with some extended instructions |
| and alignment reqirements. Development kernels also enable |
| out of order memory stores for this CPU, which can increase |
| performance of some operations. |
| |
| CONFIG_VGA_CONSOLE |
| Saying Y here will allow you to use Linux in text mode through a |
| display that complies with the generic VGA standard. Virtually |
| everyone wants that. |
| |
| The program SVGATextMode can be used to utilize SVGA video cards to |
| their full potential in text mode. Download it from |
| <ftp://ibiblio.org/pub/Linux/utils/console/>. |
| |
| Say Y. |
| |
| CONFIG_VIDEO_SELECT |
| This enables support for text mode selection on kernel startup. If |
| you want to take advantage of some high-resolution text mode your |
| card's BIOS offers, but the traditional Linux utilities like |
| SVGATextMode don't, you can say Y here and set the mode using the |
| "vga=" option from your boot loader (lilo or loadlin) or set |
| "vga=ask" which brings up a video mode menu on kernel startup. (Try |
| "man bootparam" or see the documentation of your boot loader about |
| how to pass options to the kernel.) |
| |
| Read the file <file:Documentation/svga.txt> for more information |
| about the Video mode selection support. If unsure, say N. |
| |
| CONFIG_MDA_CONSOLE |
| Say Y here if you have an old MDA or monochrome Hercules graphics |
| adapter in your system acting as a second head ( = video card). You |
| will then be able to use two monitors with your Linux system. Do not |
| say Y here if your MDA card is the primary card in your system; the |
| normal VGA driver will handle it. |
| |
| This driver is also available as a module ( = code which can be |
| inserted and removed from the running kernel whenever you want). |
| The module will be called mdacon.o. If you want to compile it as |
| a module, say M here and read <file:Documentation/modules.txt>. |
| |
| If unsure, say N. |
| |
| CONFIG_SCSI |
| If you want to use a SCSI hard disk, SCSI tape drive, SCSI CD-ROM or |
| any other SCSI device under Linux, say Y and make sure that you know |
| the name of your SCSI host adapter (the card inside your computer |
| that "speaks" the SCSI protocol, also called SCSI controller), |
| because you will be asked for it. |
| |
| You also need to say Y here if you want support for the parallel |
| port version of the 100 MB IOMEGA ZIP drive. |
| |
| This driver is also available as a module ( = code which can be |
| inserted in and removed from the running kernel whenever you want). |
| The module will be called scsi_mod.o. If you want to compile it as |
| a module, say M here and read <file:Documentation/modules.txt> and |
| <file:Documentation/scsi.txt>. However, do not compile this as a |
| module if your root file system (the one containing the directory /) |
| is located on a SCSI device. |
| |
| CONFIG_NETDEVICES |
| You can say N here if you don't intend to connect your Linux box to |
| any other computer at all or if all your connections will be over a |
| telephone line with a modem either via UUCP (UUCP is a protocol to |
| forward mail and news between unix hosts over telephone lines; read |
| the UUCP-HOWTO, available from |
| <http://www.linuxdoc.org/docs.html#howto>) or dialing up a shell |
| account or a BBS, even using term (term is a program which gives you |
| almost full Internet connectivity if you have a regular dial up |
| shell account on some Internet connected Unix computer. Read |
| <http://www.bart.nl/~patrickr/term-howto/Term-HOWTO.html>). |
| |
| You'll have to say Y if your computer contains a network card that |
| you want to use under Linux (make sure you know its name because you |
| will be asked for it and read the Ethernet-HOWTO (especially if you |
| plan to use more than one network card under Linux)) or if you want |
| to use SLIP (Serial Line Internet Protocol is the protocol used to |
| send Internet traffic over telephone lines or null modem cables) or |
| CSLIP (compressed SLIP) or PPP (Point to Point Protocol, a better |
| and newer replacement for SLIP) or PLIP (Parallel Line Internet |
| Protocol is mainly used to create a mini network by connecting the |
| parallel ports of two local machines) or AX.25/KISS (protocol for |
| sending Internet traffic over amateur radio links). |
| |
| Make sure to read the NET-3-HOWTO. Eventually, you will have to read |
| Olaf Kirch's excellent and free book "Network Administrator's |
| Guide", to be found in <http://www.linuxdoc.org/docs.html#guide>. If |
| unsure, say Y. |
| |
| CONFIG_CD_NO_IDESCSI |
| If you have a CD-ROM drive that is neither SCSI nor IDE/ATAPI, say Y |
| here, otherwise N. Read the CD-ROM-HOWTO, available from |
| <http://www.linuxdoc.org/docs.html#howto>. |
| |
| Note that the answer to this question doesn't directly affect the |
| kernel: saying N will just cause the configurator to skip all |
| the questions about these CD-ROM drives. If you are unsure what you |
| have, say Y and find out whether you have one of the following |
| drives. |
| |
| For each of these drivers, a file Documentation/cdrom/{driver_name} |
| exists. Especially in cases where you do not know exactly which kind |
| of drive you have you should read there. Most of these drivers use a |
| file drivers/cdrom/{driver_name}.h where you can define your |
| interface parameters and switch some internal goodies. |
| |
| All these CD-ROM drivers are also usable as a module ( = code which |
| can be inserted in and removed from the running kernel whenever you |
| want). If you want to compile them as module, say M instead of Y and |
| read <file:Documentation/modules.txt>. |
| |
| If you want to use any of these CD-ROM drivers, you also have to |
| answer Y or M to "ISO 9660 CD-ROM file system support" below (this |
| answer will get "defaulted" for you if you enable any of the Linux |
| CD-ROM drivers). |
| |
| CONFIG_MTRR |
| On Intel P6 family processors (Pentium Pro, Pentium II and later) |
| the Memory Type Range Registers (MTRRs) may be used to control |
| processor access to memory ranges. This is most useful if you have |
| a video (VGA) card on a PCI or AGP bus. Enabling write-combining |
| allows bus write transfers to be combined into a larger transfer |
| before bursting over the PCI/AGP bus. This can increase performance |
| of image write operations 2.5 times or more. Saying Y here creates a |
| /proc/mtrr file which may be used to manipulate your processor's |
| MTRRs. Typically the X server should use this. |
| |
| This code has a reasonably generic interface so that similar |
| control registers on other processors can be easily supported |
| as well: |
| |
| The Cyrix 6x86, 6x86MX and M II processors have Address Range |
| Registers (ARRs) which provide a similar functionality to MTRRs. For |
| these, the ARRs are used to emulate the MTRRs. |
| The AMD K6-2 (stepping 8 and above) and K6-3 processors have two |
| MTRRs. The Centaur C6 (WinChip) has 8 MCRs, allowing |
| write-combining. All of these processors are supported by this code |
| and it makes sense to say Y here if you have one of them. |
| |
| Saying Y here also fixes a problem with buggy SMP BIOSes which only |
| set the MTRRs for the boot CPU and not for the secondary CPUs. This |
| can lead to all sorts of problems, so it's good to say Y here. |
| |
| You can safely say Y even if your machine doesn't have MTRRs, you'll |
| just add about 9 KB to your kernel. |
| |
| See <file:Documentation/mtrr.txt> for more information. |
| |
| CONFIG_PM |
| "Power Management" means that parts of your computer are shut |
| off or put into a power conserving "sleep" mode if they are not |
| being used. There are two competing standards for doing this: APM |
| and ACPI. If you want to use either one, say Y here and then also |
| to the requisite support below. |
| |
| Power Management is most important for battery powered laptop |
| computers; if you have a laptop, check out the Linux Laptop home |
| page on the WWW at |
| <http://www.cs.utexas.edu/users/kharker/linux-laptop/> and the |
| Battery Powered Linux mini-HOWTO, available from |
| <http://www.linuxdoc.org/docs.html#howto>. |
| |
| Note that, even if you say N here, Linux on the x86 architecture |
| will issue the hlt instruction if nothing is to be done, thereby |
| sending the processor to sleep and saving power. |
| |
| CONFIG_ACPI |
| ACPI/OSPM support for Linux is currently under development. As such, |
| this support is preliminary and EXPERIMENTAL. Configuring ACPI |
| support enables kernel interfaces that allow higher level software |
| (OSPM) to manipulate ACPI defined hardware and software interfaces, |
| including the evaluation of ACPI control methods. If unsure, choose |
| N here. Note, this option will enlarge your kernel by about 120K. |
| |
| This support requires an ACPI compliant platform (hardware/firmware). |
| If both ACPI and Advanced Power Management (APM) support are |
| configured, whichever is loaded first shall be used. |
| |
| This code DOES NOT currently provide a complete OSPM implementation |
| -- it has not yet reached APM's level of functionality. When fully |
| implemented, Linux ACPI/OSPM will provide a more robust functional |
| replacement for legacy configuration and power management |
| interfaces, including the Plug-and-Play BIOS specification (PnP |
| BIOS), the Multi-Processor Specification (MPS), and the Advanced |
| Power Management specification (APM). |
| |
| Linux support for ACPI/OSPM is based on Intel Corporation's ACPI |
| Component Architecture (ACPI CA). The latest ACPI CA source code, |
| documentation, debug builds, and implementation status information |
| can be downloaded from: |
| <http://developer.intel.com/technology/iapc/acpi/downloads.htm>. |
| |
| The ACPI Sourceforge project may also be of interest: |
| <http://sf.net/projects/acpi/> |
| |
| CONFIG_APM |
| APM is a BIOS specification for saving power using several different |
| techniques. This is mostly useful for battery powered laptops with |
| APM compliant BIOSes. If you say Y here, the system time will be |
| reset after a RESUME operation, the /proc/apm device will provide |
| battery status information, and user-space programs will receive |
| notification of APM "events" (e.g. battery status change). |
| |
| If you select "Y" here, you can disable actual use of the APM |
| BIOS by passing the "apm=off" option to the kernel at boot time. |
| |
| Note that the APM support is almost completely disabled for |
| machines with more than one CPU. |
| |
| In order to use APM, you will need supporting software. For location |
| and more information, read <file:Documentation/pm.txt> and the |
| Battery Powered Linux mini-HOWTO, available from |
| <http://www.linuxdoc.org/docs.html#howto>. |
| |
| This driver does not spin down disk drives (see the hdparm(8) |
| manpage ("man 8 hdparm") for that), and it doesn't turn off |
| VESA-compliant "green" monitors. |
| |
| This driver does not support the TI 4000M TravelMate and the ACER |
| 486/DX4/75 because they don't have compliant BIOSes. Many "green" |
| desktop machines also don't have compliant BIOSes, and this driver |
| may cause those machines to panic during the boot phase. |
| |
| Generally, if you don't have a battery in your machine, there isn't |
| much point in using this driver and you should say N. If you get |
| random kernel OOPSes or reboots that don't seem to be related to |
| anything, try disabling/enabling this option (or disabling/enabling |
| APM in your BIOS). |
| |
| Some other things you should try when experiencing seemingly random, |
| "weird" problems: |
| |
| 1) make sure that you have enough swap space and that it is |
| enabled. |
| 2) pass the "no-hlt" option to the kernel |
| 3) switch on floating point emulation in the kernel and pass |
| the "no387" option to the kernel |
| 4) pass the "floppy=nodma" option to the kernel |
| 5) pass the "mem=4M" option to the kernel (thereby disabling |
| all but the first 4 MB of RAM) |
| 6) make sure that the CPU is not over clocked. |
| 7) read the sig11 FAQ at <http://www.bitwizard.nl/sig11/> |
| 8) disable the cache from your BIOS settings |
| 9) install a fan for the video card or exchange video RAM |
| 10) install a better fan for the CPU |
| 11) exchange RAM chips |
| 12) exchange the motherboard. |
| |
| To compile this driver as a module ( = code which can be inserted in |
| and removed from the running kernel whenever you want), say M here |
| and read <file:Documentation/modules.txt>. The module will be called |
| apm.o. |
| |
| CONFIG_APM_IGNORE_USER_SUSPEND |
| This option will ignore USER SUSPEND requests. On machines with a |
| compliant APM BIOS, you want to say N. However, on the NEC Versa M |
| series notebooks, it is necessary to say Y because of a BIOS bug. |
| |
| CONFIG_APM_DO_ENABLE |
| Enable APM features at boot time. From page 36 of the APM BIOS |
| specification: "When disabled, the APM BIOS does not automatically |
| power manage devices, enter the Standby State, enter the Suspend |
| State, or take power saving steps in response to CPU Idle calls." |
| This driver will make CPU Idle calls when Linux is idle (unless this |
| feature is turned off -- see "Do CPU IDLE calls", below). This |
| should always save battery power, but more complicated APM features |
| will be dependent on your BIOS implementation. You may need to turn |
| this option off if your computer hangs at boot time when using APM |
| support, or if it beeps continuously instead of suspending. Turn |
| this off if you have a NEC UltraLite Versa 33/C or a Toshiba |
| T400CDT. This is off by default since most machines do fine without |
| this feature. |
| |
| CONFIG_APM_CPU_IDLE |
| Enable calls to APM CPU Idle/CPU Busy inside the kernel's idle loop. |
| On some machines, this can activate improved power savings, such as |
| a slowed CPU clock rate, when the machine is idle. These idle calls |
| are made after the idle loop has run for some length of time (e.g., |
| 333 mS). On some machines, this will cause a hang at boot time or |
| whenever the CPU becomes idle. (On machines with more than one CPU, |
| this option does nothing.) |
| |
| CONFIG_APM_DISPLAY_BLANK |
| Enable console blanking using the APM. Some laptops can use this to |
| turn off the LCD backlight when the screen blanker of the Linux |
| virtual console blanks the screen. Note that this is only used by |
| the virtual console screen blanker, and won't turn off the backlight |
| when using the X Window system. This also doesn't have anything to |
| do with your VESA-compliant power-saving monitor. Further, this |
| option doesn't work for all laptops -- it might not turn off your |
| backlight at all, or it might print a lot of errors to the console, |
| especially if you are using gpm. |
| |
| CONFIG_APM_RTC_IS_GMT |
| Say Y here if your RTC (Real Time Clock a.k.a. hardware clock) |
| stores the time in GMT (Greenwich Mean Time). Say N if your RTC |
| stores localtime. |
| |
| It is in fact recommended to store GMT in your RTC, because then you |
| don't have to worry about daylight savings time changes. The only |
| reason not to use GMT in your RTC is if you also run a broken OS |
| that doesn't understand GMT. |
| |
| CONFIG_APM_ALLOW_INTS |
| Normally we disable external interrupts while we are making calls to |
| the APM BIOS as a measure to lessen the effects of a badly behaving |
| BIOS implementation. The BIOS should reenable interrupts if it |
| needs to. Unfortunately, some BIOSes do not -- especially those in |
| many of the newer IBM Thinkpads. If you experience hangs when you |
| suspend, try setting this to Y. Otherwise, say N. |
| |
| CONFIG_APM_REAL_MODE_POWER_OFF |
| Use real mode APM BIOS calls to switch off the computer. This is |
| a work-around for a number of buggy BIOSes. Switch this option on if |
| your computer crashes instead of powering off properly. |
| |
| CONFIG_TOSHIBA |
| This adds a driver to safely access the System Management Mode of |
| the CPU on Toshiba portables with a genuine Toshiba BIOS. It does |
| not work on models with a Pheonix BIOS. The System Management Mode |
| is used to set the BIOS and power saving options on Toshiba portables. |
| |
| For information on utilities to make use of this driver see the |
| Toshiba Linux utilities web site at: |
| <http://www.buzzard.org.uk/toshiba/>. |
| |
| Say Y if you intend to run this kernel on a Toshiba portable. |
| Say N otherwise. |
| |
| CONFIG_I8K |
| This adds a driver to safely access the System Management Mode |
| of the CPU on the Dell Inspiron 8000. The System Management Mode |
| is used to read cpu temperature and cooling fan status and to |
| control the fans on the I8K portables. |
| |
| This driver has been tested only on the Inspiron 8000 but it may |
| also work with other Dell laptops. You can force loading on other |
| models by passing the parameter `force=1' to the module. Use at |
| your own risk. |
| |
| For information on utilities to make use of this driver see the |
| I8K Linux utilities web site at: |
| <http://www.debian.org/~dz/i8k/> |
| |
| Say Y if you intend to run this kernel on a Dell Inspiron 8000. |
| Say N otherwise. |
| |
| CONFIG_MICROCODE |
| If you say Y here and also to "/dev file system support" in the |
| 'File systems' section, you will be able to update the microcode on |
| Intel processors in the IA32 family, e.g. Pentium Pro, Pentium II, |
| Pentium III, Pentium 4, Xeon etc. You will obviously need the |
| actual microcode binary data itself which is not shipped with the |
| Linux kernel. |
| |
| For latest news and information on obtaining all the required |
| ingredients for this driver, check: |
| <http://www.urbanmyth.org/microcode/>. |
| |
| This driver is also available as a module ( = code which can be |
| inserted in and removed from the running kernel whenever you want). |
| The module will be called microcode.o. If you want to compile it as |
| a module, say M here and read <file:Documentation/modules.txt>. If |
| you use modprobe or kmod you may also want to add the line |
| 'alias char-major-10-184 microcode' to your /etc/modules.conf file. |
| |
| CONFIG_X86_MSR |
| This device gives privileged processes access to the x86 |
| Model-Specific Registers (MSRs). It is a character device with |
| major 202 and minors 0 to 31 for /dev/cpu/0/msr to /dev/cpu/31/msr. |
| MSR accesses are directed to a specific CPU on multi-processor |
| systems. |
| |
| CONFIG_X86_CPUID |
| This device gives processes access to the x86 CPUID instruction to |
| be executed on a specific processor. It is a character device |
| with major 203 and minors 0 to 31 for /dev/cpu/0/cpuid to |
| /dev/cpu/31/cpuid. |
| |
| CONFIG_SOUND |
| If you have a sound card in your computer, i.e. if it can say more |
| than an occasional beep, say Y. Be sure to have all the information |
| about your sound card and its configuration down (I/O port, |
| interrupt and DMA channel), because you will be asked for it. |
| |
| You want to read the Sound-HOWTO, available from |
| <http://www.linuxdoc.org/docs.html#howto>. General information about |
| the modular sound system is contained in the files |
| <file:Documentation/sound/Introduction>. The file |
| <file:Documentation/sound/README.OSS> contains some slightly |
| outdated but still useful information as well. |
| |
| If you have a PnP sound card and you want to configure it at boot |
| time using the ISA PnP tools (read |
| <http://www.roestock.demon.co.uk/isapnptools/>), then you need to |
| compile the sound card support as a module ( = code which can be |
| inserted in and removed from the running kernel whenever you want) |
| and load that module after the PnP configuration is finished. To do |
| this, say M here and read <file:Documentation/modules.txt> as well |
| as <file:Documentation/sound/README.modules>; the module will be |
| called soundcore.o. |
| |
| I'm told that even without a sound card, you can make your computer |
| say more than an occasional beep, by programming the PC speaker. |
| Kernel patches and supporting utilities to do that are in the pcsp |
| package, available at <ftp://ftp.infradead.org/pub/pcsp/>. |
| |
| CONFIG_MAGIC_SYSRQ |
| 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_ISDN |
| ISDN ("Integrated Services Digital Networks", called RNIS in France) |
| is a special type of fully digital telephone service; it's mostly |
| used to connect to your Internet service provider (with SLIP or |
| PPP). The main advantage is that the speed is higher than ordinary |
| modem/telephone connections, and that you can have voice |
| conversations while downloading stuff. It only works if your |
| computer is equipped with an ISDN card and both you and your service |
| provider purchased an ISDN line from the phone company. For |
| details, read <http://alumni.caltech.edu/~dank/isdn/> on the WWW. |
| |
| This driver allows you to use an ISDN-card for networking |
| connections and as dialin/out device. The isdn-tty's have a built |
| in AT-compatible modem emulator. Network devices support autodial, |
| channel-bundling, callback and caller-authentication without having |
| a daemon running. A reduced T.70 protocol is supported with tty's |
| suitable for German BTX. On D-Channel, the protocols EDSS1 |
| (Euro-ISDN) and 1TR6 (German style) are supported. See |
| <file:Documentation/isdn/README> for more information. |
| |
| If you want to compile the ISDN code as a module ( = code which can |
| be inserted in and removed from the running kernel whenever you |
| want), say M here and read <file:Documentation/modules.txt>. The |
| module will be called isdn.o. If unsure, say N. |
| |
| CONFIG_DEBUG_HIGHMEM |
| This options enables addition error checking for high memory systems. |
| Disable for production systems. |
| |
| CONFIG_DEBUG_KERNEL |
| Say Y here if you are developing drivers or trying to debug and |
| identify kernel problems. |
| |
| CONFIG_DEBUG_SLAB |
| Say Y here to have the kernel do limited verification on memory |
| allocation as well as poisoning memory on free to catch use of freed |
| memory. |
| |
| CONFIG_DEBUG_IOVIRT |
| Say Y here to get warned whenever an attempt is made to do I/O on |
| obviously invalid addresses such as those generated when ioremap() |
| calls are forgotten. Memory mapped I/O will go through an extra |
| check to catch access to unmapped ISA addresses, an access method |
| that can still be used by old drivers that are being ported from |
| 2.0/2.2. |
| |
| CONFIG_DEBUG_SPINLOCK |
| 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_DEBUG_BUGVERBOSE |
| Say Y here to make BUG() panics output the file name and line number |
| of the BUG call as well as the EIP and oops trace. This aids |
| debugging but costs about 70-100K of memory. |
| |