1# 2# For a description of the syntax of this configuration file, 3# see Documentation/kbuild/config-language.txt. 4# 5mainmenu_name "Linux Kernel Configuration" 6 7define_bool CONFIG_X86 y 8define_bool CONFIG_SBUS n 9 10define_bool CONFIG_UID16 y 11 12mainmenu_option next_comment 13comment 'Code maturity level options' 14bool 'Prompt for development and/or incomplete code/drivers' CONFIG_EXPERIMENTAL 15endmenu 16 17mainmenu_option next_comment 18comment 'Loadable module support' 19bool 'Enable loadable module support' CONFIG_MODULES 20if [ "$CONFIG_MODULES" = "y" ]; then 21 bool ' Set version information on all module symbols' CONFIG_MODVERSIONS 22 bool ' Kernel module loader' CONFIG_KMOD 23fi 24endmenu 25 26mainmenu_option next_comment 27comment 'Processor type and features' 28choice 'Processor family' \ 29 "386 CONFIG_M386 \ 30 486 CONFIG_M486 \ 31 586/K5/5x86/6x86/6x86MX CONFIG_M586 \ 32 Pentium-Classic CONFIG_M586TSC \ 33 Pentium-MMX CONFIG_M586MMX \ 34 Pentium-Pro/Celeron/Pentium-II CONFIG_M686 \ 35 Pentium-III/Celeron(Coppermine) CONFIG_MPENTIUMIII \ 36 Pentium-4 CONFIG_MPENTIUM4 \ 37 K6/K6-II/K6-III CONFIG_MK6 \ 38 Athlon/Duron/K7 CONFIG_MK7 \ 39 Opteron/Athlon64/Hammer/K8 CONFIG_MK8 \ 40 Elan CONFIG_MELAN \ 41 Crusoe CONFIG_MCRUSOE \ 42 Geode-GX/LX CONFIG_MGEODE_LX \ 43 Winchip-C6 CONFIG_MWINCHIPC6 \ 44 Winchip-2 CONFIG_MWINCHIP2 \ 45 Winchip-2A/Winchip-3 CONFIG_MWINCHIP3D \ 46 CyrixIII/VIA-C3 CONFIG_MCYRIXIII \ 47 VIA-C3-2 CONFIG_MVIAC3_2" Pentium-Pro 48# 49# Define implied options from the CPU selection here 50# 51 52if [ "$CONFIG_M386" = "y" ]; then 53 define_bool CONFIG_X86_CMPXCHG n 54 define_bool CONFIG_X86_XADD n 55 define_int CONFIG_X86_L1_CACHE_SHIFT 4 56 define_bool CONFIG_RWSEM_GENERIC_SPINLOCK y 57 define_bool CONFIG_RWSEM_XCHGADD_ALGORITHM n 58 define_bool CONFIG_X86_PPRO_FENCE y 59 define_bool CONFIG_X86_F00F_WORKS_OK n 60 define_bool CONFIG_X86_HAS_TSC n 61else 62 define_bool CONFIG_X86_WP_WORKS_OK y 63 define_bool CONFIG_X86_INVLPG y 64 define_bool CONFIG_X86_CMPXCHG y 65 define_bool CONFIG_X86_XADD y 66 define_bool CONFIG_X86_BSWAP y 67 define_bool CONFIG_X86_POPAD_OK y 68 define_bool CONFIG_RWSEM_GENERIC_SPINLOCK n 69 define_bool CONFIG_RWSEM_XCHGADD_ALGORITHM y 70fi 71if [ "$CONFIG_M486" = "y" ]; then 72 define_int CONFIG_X86_L1_CACHE_SHIFT 4 73 define_bool CONFIG_X86_USE_STRING_486 y 74 define_bool CONFIG_X86_ALIGNMENT_16 y 75 define_bool CONFIG_X86_PPRO_FENCE y 76 define_bool CONFIG_X86_F00F_WORKS_OK n 77 define_bool CONFIG_X86_HAS_TSC n 78fi 79if [ "$CONFIG_M586" = "y" ]; then 80 define_int CONFIG_X86_L1_CACHE_SHIFT 5 81 define_bool CONFIG_X86_USE_STRING_486 y 82 define_bool CONFIG_X86_ALIGNMENT_16 y 83 define_bool CONFIG_X86_PPRO_FENCE y 84 define_bool CONFIG_X86_F00F_WORKS_OK n 85 define_bool CONFIG_X86_HAS_TSC n 86fi 87if [ "$CONFIG_M586TSC" = "y" ]; then 88 define_int CONFIG_X86_L1_CACHE_SHIFT 5 89 define_bool CONFIG_X86_USE_STRING_486 y 90 define_bool CONFIG_X86_ALIGNMENT_16 y 91 define_bool CONFIG_X86_HAS_TSC y 92 define_bool CONFIG_X86_PPRO_FENCE y 93 define_bool CONFIG_X86_F00F_WORKS_OK n 94fi 95if [ "$CONFIG_M586MMX" = "y" ]; then 96 define_int CONFIG_X86_L1_CACHE_SHIFT 5 97 define_bool CONFIG_X86_USE_STRING_486 y 98 define_bool CONFIG_X86_ALIGNMENT_16 y 99 define_bool CONFIG_X86_HAS_TSC y 100 define_bool CONFIG_X86_GOOD_APIC y 101 define_bool CONFIG_X86_PPRO_FENCE y 102 define_bool CONFIG_X86_F00F_WORKS_OK n 103fi 104if [ "$CONFIG_M686" = "y" ]; then 105 define_int CONFIG_X86_L1_CACHE_SHIFT 5 106 define_bool CONFIG_X86_HAS_TSC y 107 define_bool CONFIG_X86_GOOD_APIC y 108 bool 'PGE extensions (not for Cyrix/Transmeta)' CONFIG_X86_PGE 109 define_bool CONFIG_X86_USE_PPRO_CHECKSUM y 110 define_bool CONFIG_X86_PPRO_FENCE y 111 define_bool CONFIG_X86_F00F_WORKS_OK y 112fi 113if [ "$CONFIG_MPENTIUMIII" = "y" ]; then 114 define_int CONFIG_X86_L1_CACHE_SHIFT 5 115 define_bool CONFIG_X86_HAS_TSC y 116 define_bool CONFIG_X86_GOOD_APIC y 117 define_bool CONFIG_X86_PGE y 118 define_bool CONFIG_X86_USE_PPRO_CHECKSUM y 119 define_bool CONFIG_X86_F00F_WORKS_OK y 120fi 121if [ "$CONFIG_MPENTIUM4" = "y" ]; then 122 define_int CONFIG_X86_L1_CACHE_SHIFT 7 123 define_bool CONFIG_X86_HAS_TSC y 124 define_bool CONFIG_X86_GOOD_APIC y 125 define_bool CONFIG_X86_PGE y 126 define_bool CONFIG_X86_USE_PPRO_CHECKSUM y 127 define_bool CONFIG_X86_F00F_WORKS_OK y 128fi 129if [ "$CONFIG_MK6" = "y" ]; then 130 define_int CONFIG_X86_L1_CACHE_SHIFT 5 131 define_bool CONFIG_X86_ALIGNMENT_16 y 132 define_bool CONFIG_X86_HAS_TSC y 133 define_bool CONFIG_X86_USE_PPRO_CHECKSUM y 134fi 135if [ "$CONFIG_MK8" = "y" ]; then 136 # for now. may later want to add SSE support and optimized 137 # functions 138 define_bool CONFIG_MK7 y 139fi 140if [ "$CONFIG_MK7" = "y" ]; then 141 define_int CONFIG_X86_L1_CACHE_SHIFT 6 142 define_bool CONFIG_X86_HAS_TSC y 143 define_bool CONFIG_X86_GOOD_APIC y 144 define_bool CONFIG_X86_USE_3DNOW y 145 define_bool CONFIG_X86_PGE y 146 define_bool CONFIG_X86_USE_PPRO_CHECKSUM y 147 define_bool CONFIG_X86_F00F_WORKS_OK y 148fi 149if [ "$CONFIG_MELAN" = "y" ]; then 150 define_int CONFIG_X86_L1_CACHE_SHIFT 4 151 define_bool CONFIG_X86_USE_STRING_486 y 152 define_bool CONFIG_X86_ALIGNMENT_16 y 153 define_bool CONFIG_X86_F00F_WORKS_OK y 154 define_bool CONFIG_X86_HAS_TSC n 155fi 156if [ "$CONFIG_MCYRIXIII" = "y" ]; then 157 define_int CONFIG_X86_L1_CACHE_SHIFT 5 158 define_bool CONFIG_X86_HAS_TSC y 159 define_bool CONFIG_X86_ALIGNMENT_16 y 160 define_bool CONFIG_X86_USE_3DNOW y 161 define_bool CONFIG_X86_USE_PPRO_CHECKSUM y 162 define_bool CONFIG_X86_F00F_WORKS_OK y 163fi 164if [ "$CONFIG_MVIAC3_2" = "y" ]; then 165 define_int CONFIG_X86_L1_CACHE_SHIFT 5 166 define_bool CONFIG_X86_HAS_TSC y 167 define_bool CONFIG_X86_ALIGNMENT_16 y 168 define_bool CONFIG_X86_USE_PPRO_CHECKSUM y 169 define_bool CONFIG_X86_F00F_WORKS_OK y 170fi 171if [ "$CONFIG_MCRUSOE" = "y" ]; then 172 define_int CONFIG_X86_L1_CACHE_SHIFT 5 173 define_bool CONFIG_X86_HAS_TSC y 174 define_bool CONFIG_X86_F00F_WORKS_OK y 175fi 176if [ "$CONFIG_MGEODE_LX" = "y" ]; then 177 define_int CONFIG_X86_L1_CACHE_SHIFT 5 178 define_bool CONFIG_X86_USE_STRING_486 y 179 define_bool CONFIG_X86_ALIGNMENT_16 y 180 define_bool CONFIG_X86_HAS_TSC y 181 define_bool CONFIG_X86_PPRO_FENCE y 182 define_bool CONFIG_X86_F00F_WORKS_OK y 183 define_bool CONFIG_X86_USE_3DNOW y 184 define_bool CONFIG_X86_USE_PPRO_CHECKSUM y 185 define_bool CONFIG_X86_OOSTORE y 186fi 187if [ "$CONFIG_MWINCHIPC6" = "y" ]; then 188 define_int CONFIG_X86_L1_CACHE_SHIFT 5 189 define_bool CONFIG_X86_ALIGNMENT_16 y 190 define_bool CONFIG_X86_USE_PPRO_CHECKSUM y 191 define_bool CONFIG_X86_OOSTORE y 192 define_bool CONFIG_X86_F00F_WORKS_OK y 193 define_bool CONFIG_X86_HAS_TSC n 194fi 195if [ "$CONFIG_MWINCHIP2" = "y" ]; then 196 define_int CONFIG_X86_L1_CACHE_SHIFT 5 197 define_bool CONFIG_X86_ALIGNMENT_16 y 198 define_bool CONFIG_X86_HAS_TSC y 199 define_bool CONFIG_X86_USE_PPRO_CHECKSUM y 200 define_bool CONFIG_X86_OOSTORE y 201 define_bool CONFIG_X86_F00F_WORKS_OK y 202fi 203if [ "$CONFIG_MWINCHIP3D" = "y" ]; then 204 define_int CONFIG_X86_L1_CACHE_SHIFT 5 205 define_bool CONFIG_X86_ALIGNMENT_16 y 206 define_bool CONFIG_X86_HAS_TSC y 207 define_bool CONFIG_X86_USE_PPRO_CHECKSUM y 208 define_bool CONFIG_X86_OOSTORE y 209 define_bool CONFIG_X86_F00F_WORKS_OK y 210fi 211 212bool 'Machine Check Exception' CONFIG_X86_MCE 213 214tristate 'Toshiba Laptop support' CONFIG_TOSHIBA 215tristate 'Dell laptop support' CONFIG_I8K 216 217tristate '/dev/cpu/microcode - Intel IA32 CPU microcode support' CONFIG_MICROCODE 218tristate '/dev/cpu/*/msr - Model-specific register support' CONFIG_X86_MSR 219tristate '/dev/cpu/*/cpuid - CPU information support' CONFIG_X86_CPUID 220 221if [ "$CONFIG_EXPERIMENTAL" = "y" ]; then 222 tristate 'BIOS Enhanced Disk Drive calls determine boot disk (EXPERIMENTAL)' CONFIG_EDD 223fi 224 225choice 'High Memory Support' \ 226 "off CONFIG_NOHIGHMEM \ 227 4GB CONFIG_HIGHMEM4G \ 228 64GB CONFIG_HIGHMEM64G" off 229if [ "$CONFIG_HIGHMEM4G" = "y" -o "$CONFIG_HIGHMEM64G" = "y" ]; then 230 define_bool CONFIG_HIGHMEM y 231else 232 define_bool CONFIG_HIGHMEM n 233fi 234if [ "$CONFIG_HIGHMEM64G" = "y" ]; then 235 define_bool CONFIG_X86_PAE y 236fi 237 238if [ "$CONFIG_HIGHMEM" = "y" ]; then 239 bool 'HIGHMEM I/O support' CONFIG_HIGHIO 240fi 241 242bool 'Math emulation' CONFIG_MATH_EMULATION 243bool 'MTRR (Memory Type Range Register) support' CONFIG_MTRR 244bool 'Symmetric multi-processing support' CONFIG_SMP 245if [ "$CONFIG_SMP" != "y" ]; then 246 bool 'Local APIC support on uniprocessors' CONFIG_X86_UP_APIC 247 dep_bool 'IO-APIC support on uniprocessors' CONFIG_X86_UP_IOAPIC $CONFIG_X86_UP_APIC 248 if [ "$CONFIG_X86_UP_APIC" = "y" ]; then 249 define_bool CONFIG_X86_LOCAL_APIC y 250 fi 251 if [ "$CONFIG_X86_UP_IOAPIC" = "y" ]; then 252 define_bool CONFIG_X86_IO_APIC y 253 fi 254else 255 int 'Maximum number of CPUs (2-32)' CONFIG_NR_CPUS 32 256 bool 'Multi-node NUMA system support' CONFIG_X86_NUMA 257 if [ "$CONFIG_X86_NUMA" = "y" ]; then 258 #Platform Choices 259 bool ' Multiquad (IBM/Sequent) NUMAQ support' CONFIG_X86_NUMAQ 260 if [ "$CONFIG_X86_NUMAQ" = "y" ]; then 261 define_bool CONFIG_X86_CLUSTERED_APIC y 262 define_bool CONFIG_MULTIQUAD y 263 fi 264 bool ' IBM x440 (Summit/EXA) support' CONFIG_X86_SUMMIT 265 if [ "$CONFIG_X86_SUMMIT" = "y" ]; then 266 define_bool CONFIG_X86_CLUSTERED_APIC y 267 fi 268 fi 269fi 270 271define_bool CONFIG_X86_TSC n 272if [ "$CONFIG_X86_HAS_TSC" = "y" -a "$CONFIG_X86_NUMA" != "y" ]; then 273 bool 'Unsynced TSC support' CONFIG_X86_TSC_DISABLE 274 if [ "$CONFIG_X86_TSC_DISABLE" != "y" ]; then 275 define_bool CONFIG_X86_TSC y 276 fi 277fi 278 279if [ "$CONFIG_SMP" = "y" -a "$CONFIG_X86_CMPXCHG" = "y" ]; then 280 define_bool CONFIG_HAVE_DEC_LOCK y 281fi 282endmenu 283 284mainmenu_option next_comment 285comment 'General setup' 286 287bool 'Networking support' CONFIG_NET 288 289# Visual Workstation support is utterly broken. 290# If you want to see it working mail an VW540 to hch@infradead.org 8) 291#bool 'SGI Visual Workstation support' CONFIG_VISWS 292if [ "$CONFIG_VISWS" = "y" ]; then 293 define_bool CONFIG_X86_VISWS_APIC y 294 define_bool CONFIG_X86_LOCAL_APIC y 295 define_bool CONFIG_PCI y 296 define_bool CONFIG_ISA n 297else 298 if [ "$CONFIG_SMP" = "y" ]; then 299 define_bool CONFIG_X86_IO_APIC y 300 define_bool CONFIG_X86_LOCAL_APIC y 301 fi 302 bool 'PCI support' CONFIG_PCI 303 if [ "$CONFIG_PCI" = "y" ]; then 304 choice ' PCI access mode' \ 305 "BIOS CONFIG_PCI_GOBIOS \ 306 Direct CONFIG_PCI_GODIRECT \ 307 Any CONFIG_PCI_GOANY" Any 308 if [ "$CONFIG_PCI_GOBIOS" = "y" -o "$CONFIG_PCI_GOANY" = "y" ]; then 309 define_bool CONFIG_PCI_BIOS y 310 fi 311 if [ "$CONFIG_PCI_GODIRECT" = "y" -o "$CONFIG_PCI_GOANY" = "y" ]; then 312 define_bool CONFIG_PCI_DIRECT y 313 fi 314 fi 315 bool 'ISA bus support' CONFIG_ISA 316fi 317 318source drivers/pci/Config.in 319 320bool 'EISA support' CONFIG_EISA 321 322if [ "$CONFIG_VISWS" != "y" ]; then 323 bool 'MCA support' CONFIG_MCA 324else 325 define_bool CONFIG_MCA n 326fi 327 328bool 'Support for hot-pluggable devices' CONFIG_HOTPLUG 329 330if [ "$CONFIG_HOTPLUG" = "y" ] ; then 331 source drivers/pcmcia/Config.in 332 source drivers/hotplug/Config.in 333else 334 define_bool CONFIG_PCMCIA n 335 define_bool CONFIG_HOTPLUG_PCI n 336fi 337 338bool 'System V IPC' CONFIG_SYSVIPC 339bool 'BSD Process Accounting' CONFIG_BSD_PROCESS_ACCT 340bool 'Sysctl support' CONFIG_SYSCTL 341if [ "$CONFIG_PROC_FS" = "y" ]; then 342 choice 'Kernel core (/proc/kcore) format' \ 343 "ELF CONFIG_KCORE_ELF \ 344 A.OUT CONFIG_KCORE_AOUT" ELF 345fi 346tristate 'Kernel support for a.out binaries' CONFIG_BINFMT_AOUT 347bool 'Kernel support for ELF binaries' CONFIG_BINFMT_ELF 348tristate 'Kernel support for MISC binaries' CONFIG_BINFMT_MISC 349bool 'Select task to kill on out of memory condition' CONFIG_OOM_KILLER 350 351bool 'Power Management support' CONFIG_PM 352 353dep_tristate ' Advanced Power Management BIOS support' CONFIG_APM $CONFIG_PM 354if [ "$CONFIG_APM" != "n" ]; then 355 bool ' Ignore USER SUSPEND' CONFIG_APM_IGNORE_USER_SUSPEND 356 bool ' Enable PM at boot time' CONFIG_APM_DO_ENABLE 357 bool ' Make CPU Idle calls when idle' CONFIG_APM_CPU_IDLE 358 bool ' Enable console blanking using APM' CONFIG_APM_DISPLAY_BLANK 359 bool ' RTC stores time in GMT' CONFIG_APM_RTC_IS_GMT 360 bool ' Allow interrupts during APM BIOS calls' CONFIG_APM_ALLOW_INTS 361 bool ' Use real mode APM BIOS call to power off' CONFIG_APM_REAL_MODE_POWER_OFF 362fi 363 364source drivers/acpi/Config.in 365 366endmenu 367 368source drivers/mtd/Config.in 369 370source drivers/parport/Config.in 371 372source drivers/pnp/Config.in 373 374source drivers/block/Config.in 375 376source drivers/md/Config.in 377 378if [ "$CONFIG_NET" = "y" ]; then 379 source net/Config.in 380fi 381 382source drivers/telephony/Config.in 383 384mainmenu_option next_comment 385comment 'ATA/IDE/MFM/RLL support' 386 387tristate 'ATA/IDE/MFM/RLL support' CONFIG_IDE 388 389if [ "$CONFIG_IDE" != "n" ]; then 390 source drivers/ide/Config.in 391else 392 define_bool CONFIG_BLK_DEV_HD n 393fi 394endmenu 395 396mainmenu_option next_comment 397comment 'SCSI support' 398 399tristate 'SCSI support' CONFIG_SCSI 400 401if [ "$CONFIG_SCSI" != "n" ]; then 402 source drivers/scsi/Config.in 403fi 404endmenu 405 406source drivers/message/fusion/Config.in 407 408source drivers/ieee1394/Config.in 409 410source drivers/message/i2o/Config.in 411 412if [ "$CONFIG_NET" = "y" ]; then 413 mainmenu_option next_comment 414 comment 'Network device support' 415 416 bool 'Network device support' CONFIG_NETDEVICES 417 if [ "$CONFIG_NETDEVICES" = "y" ]; then 418 source drivers/net/Config.in 419 if [ "$CONFIG_ATM" = "y" -o "$CONFIG_ATM" = "m" ]; then 420 source drivers/atm/Config.in 421 fi 422 fi 423 endmenu 424fi 425 426source net/ax25/Config.in 427 428source net/irda/Config.in 429 430mainmenu_option next_comment 431comment 'ISDN subsystem' 432if [ "$CONFIG_NET" != "n" ]; then 433 tristate 'ISDN support' CONFIG_ISDN 434 if [ "$CONFIG_ISDN" != "n" ]; then 435 source drivers/isdn/Config.in 436 fi 437fi 438endmenu 439 440if [ "$CONFIG_ISA" = "y" ]; then 441 mainmenu_option next_comment 442 comment 'Old CD-ROM drivers (not SCSI, not IDE)' 443 444 bool 'Support non-SCSI/IDE/ATAPI CDROM drives' CONFIG_CD_NO_IDESCSI 445 if [ "$CONFIG_CD_NO_IDESCSI" != "n" ]; then 446 source drivers/cdrom/Config.in 447 fi 448 endmenu 449fi 450 451# 452# input before char - char/joystick depends on it. As does USB. 453# 454source drivers/input/Config.in 455source drivers/char/Config.in 456 457#source drivers/misc/Config.in 458 459source drivers/media/Config.in 460 461source fs/Config.in 462 463if [ "$CONFIG_VT" = "y" ]; then 464 mainmenu_option next_comment 465 comment 'Console drivers' 466 bool 'VGA text console' CONFIG_VGA_CONSOLE 467 bool 'Video mode selection support' CONFIG_VIDEO_SELECT 468 if [ "$CONFIG_EXPERIMENTAL" = "y" ]; then 469 tristate 'MDA text console (dual-headed) (EXPERIMENTAL)' CONFIG_MDA_CONSOLE 470 source drivers/video/Config.in 471 fi 472 endmenu 473fi 474 475mainmenu_option next_comment 476comment 'Sound' 477 478tristate 'Sound card support' CONFIG_SOUND 479if [ "$CONFIG_SOUND" != "n" ]; then 480 source drivers/sound/Config.in 481fi 482endmenu 483 484source drivers/usb/Config.in 485 486source net/bluetooth/Config.in 487 488mainmenu_option next_comment 489comment 'Kernel hacking' 490 491bool 'Kernel debugging' CONFIG_DEBUG_KERNEL 492if [ "$CONFIG_DEBUG_KERNEL" != "n" ]; then 493 bool ' Check for stack overflows' CONFIG_DEBUG_STACKOVERFLOW 494 bool ' Debug high memory support' CONFIG_DEBUG_HIGHMEM 495 bool ' Debug memory allocations' CONFIG_DEBUG_SLAB 496 bool ' Memory mapped I/O debugging' CONFIG_DEBUG_IOVIRT 497 bool ' Magic SysRq key' CONFIG_MAGIC_SYSRQ 498 bool ' Spinlock debugging' CONFIG_DEBUG_SPINLOCK 499 bool ' Compile the kernel with frame pointers' CONFIG_FRAME_POINTER 500fi 501 502int 'Kernel messages buffer length shift (0 = default)' CONFIG_LOG_BUF_SHIFT 0 503 504endmenu 505 506source crypto/Config.in 507source lib/Config.in 508