1 # SPDX-License-Identifier: GPL-2.0-only !! 1 # 2 config CSKY !! 2 # For a description of the syntax of this configuration file, 3 def_bool y !! 3 # see Documentation/kbuild/kconfig-language.txt. 4 select ARCH_32BIT_OFF_T !! 4 # 5 select ARCH_HAS_CPU_CACHE_ALIASING << 6 select ARCH_HAS_DMA_PREP_COHERENT << 7 select ARCH_HAS_GCOV_PROFILE_ALL << 8 select ARCH_HAS_SYNC_DMA_FOR_CPU << 9 select ARCH_HAS_SYNC_DMA_FOR_DEVICE << 10 select ARCH_USE_BUILTIN_BSWAP << 11 select ARCH_USE_QUEUED_RWLOCKS << 12 select ARCH_USE_QUEUED_SPINLOCKS << 13 select ARCH_HAS_CURRENT_STACK_POINTER << 14 select ARCH_INLINE_READ_LOCK if !PREEM << 15 select ARCH_INLINE_READ_LOCK_BH if !PR << 16 select ARCH_INLINE_READ_LOCK_IRQ if !P << 17 select ARCH_INLINE_READ_LOCK_IRQSAVE i << 18 select ARCH_INLINE_READ_UNLOCK if !PRE << 19 select ARCH_INLINE_READ_UNLOCK_BH if ! << 20 select ARCH_INLINE_READ_UNLOCK_IRQ if << 21 select ARCH_INLINE_READ_UNLOCK_IRQREST << 22 select ARCH_INLINE_WRITE_LOCK if !PREE << 23 select ARCH_INLINE_WRITE_LOCK_BH if !P << 24 select ARCH_INLINE_WRITE_LOCK_IRQ if ! << 25 select ARCH_INLINE_WRITE_LOCK_IRQSAVE << 26 select ARCH_INLINE_WRITE_UNLOCK if !PR << 27 select ARCH_INLINE_WRITE_UNLOCK_BH if << 28 select ARCH_INLINE_WRITE_UNLOCK_IRQ if << 29 select ARCH_INLINE_WRITE_UNLOCK_IRQRES << 30 select ARCH_INLINE_SPIN_TRYLOCK if !PR << 31 select ARCH_INLINE_SPIN_TRYLOCK_BH if << 32 select ARCH_INLINE_SPIN_LOCK if !PREEM << 33 select ARCH_INLINE_SPIN_LOCK_BH if !PR << 34 select ARCH_INLINE_SPIN_LOCK_IRQ if !P << 35 select ARCH_INLINE_SPIN_LOCK_IRQSAVE i << 36 select ARCH_INLINE_SPIN_UNLOCK if !PRE << 37 select ARCH_INLINE_SPIN_UNLOCK_BH if ! << 38 select ARCH_INLINE_SPIN_UNLOCK_IRQ if << 39 select ARCH_INLINE_SPIN_UNLOCK_IRQREST << 40 select ARCH_NEED_CMPXCHG_1_EMU << 41 select ARCH_WANT_FRAME_POINTERS if !CP << 42 select ARCH_WANT_DEFAULT_TOPDOWN_MMAP_ << 43 select COMMON_CLK << 44 select CLKSRC_MMIO << 45 select CSKY_MPINTC if CPU_CK860 << 46 select CSKY_MP_TIMER if CPU_CK860 << 47 select CSKY_APB_INTC << 48 select DMA_DIRECT_REMAP << 49 select IRQ_DOMAIN << 50 select DW_APB_TIMER_OF << 51 select GENERIC_IOREMAP << 52 select GENERIC_LIB_ASHLDI3 << 53 select GENERIC_LIB_ASHRDI3 << 54 select GENERIC_LIB_LSHRDI3 << 55 select GENERIC_LIB_MULDI3 << 56 select GENERIC_LIB_CMPDI2 << 57 select GENERIC_LIB_UCMPDI2 << 58 select GENERIC_ALLOCATOR << 59 select GENERIC_ATOMIC64 << 60 select GENERIC_CPU_DEVICES << 61 select GENERIC_IRQ_CHIP << 62 select GENERIC_IRQ_PROBE << 63 select GENERIC_IRQ_SHOW << 64 select GENERIC_IRQ_MULTI_HANDLER << 65 select GENERIC_SCHED_CLOCK << 66 select GENERIC_SMP_IDLE_THREAD << 67 select GENERIC_TIME_VSYSCALL << 68 select GENERIC_VDSO_32 << 69 select GENERIC_GETTIMEOFDAY << 70 select GX6605S_TIMER if CPU_CK610 << 71 select HAVE_ARCH_TRACEHOOK << 72 select HAVE_ARCH_AUDITSYSCALL << 73 select HAVE_ARCH_JUMP_LABEL if !CPU_CK << 74 select HAVE_ARCH_JUMP_LABEL_RELATIVE << 75 select HAVE_ARCH_MMAP_RND_BITS << 76 select HAVE_ARCH_SECCOMP_FILTER << 77 select HAVE_CONTEXT_TRACKING_USER << 78 select HAVE_VIRT_CPU_ACCOUNTING_GEN << 79 select HAVE_DEBUG_BUGVERBOSE << 80 select HAVE_DEBUG_KMEMLEAK << 81 select HAVE_DYNAMIC_FTRACE << 82 select HAVE_DYNAMIC_FTRACE_WITH_REGS << 83 select HAVE_GENERIC_VDSO << 84 select HAVE_FUNCTION_TRACER << 85 select HAVE_FUNCTION_GRAPH_TRACER << 86 select HAVE_FUNCTION_ERROR_INJECTION << 87 select HAVE_FTRACE_MCOUNT_RECORD << 88 select HAVE_KERNEL_GZIP << 89 select HAVE_KERNEL_LZO << 90 select HAVE_KERNEL_LZMA << 91 select HAVE_KPROBES if !CPU_CK610 << 92 select HAVE_KPROBES_ON_FTRACE if !CPU_ << 93 select HAVE_KRETPROBES if !CPU_CK610 << 94 select HAVE_PAGE_SIZE_4KB << 95 select HAVE_PERF_EVENTS << 96 select HAVE_PERF_REGS << 97 select HAVE_PERF_USER_STACK_DUMP << 98 select HAVE_DMA_CONTIGUOUS << 99 select HAVE_REGS_AND_STACK_ACCESS_API << 100 select HAVE_STACKPROTECTOR << 101 select HAVE_SYSCALL_TRACEPOINTS << 102 select HOTPLUG_CORE_SYNC_DEAD if HOTPL << 103 select LOCK_MM_AND_FIND_VMA << 104 select MAY_HAVE_SPARSE_IRQ << 105 select MODULES_USE_ELF_RELA if MODULES << 106 select OF << 107 select OF_EARLY_FLATTREE << 108 select PERF_USE_VMALLOC if CPU_CK610 << 109 select RTC_LIB << 110 select TIMER_OF << 111 select GENERIC_PCI_IOMAP << 112 select HAVE_PCI << 113 select PCI_DOMAINS_GENERIC if PCI << 114 select PCI_SYSCALL if PCI << 115 select PCI_MSI if PCI << 116 select TRACE_IRQFLAGS_SUPPORT << 117 << 118 config LOCKDEP_SUPPORT << 119 def_bool y << 120 << 121 config ARCH_SUPPORTS_UPROBES << 122 def_bool y if !CPU_CK610 << 123 << 124 config CPU_HAS_CACHEV2 << 125 bool << 126 << 127 config CPU_HAS_FPUV2 << 128 bool << 129 << 130 config CPU_HAS_HILO << 131 bool << 132 << 133 config CPU_HAS_TLBI << 134 bool << 135 << 136 config CPU_HAS_LDSTEX << 137 bool << 138 help << 139 For SMP, CPU needs "ldex&stex" instr << 140 << 141 config CPU_NEED_TLBSYNC << 142 bool << 143 << 144 config CPU_NEED_SOFTALIGN << 145 bool << 146 << 147 config CPU_NO_USER_BKPT << 148 bool << 149 help << 150 For abiv2 we couldn't use "trap 1" a << 151 abiv2 is 16/32bit instruction set an << 152 So we need a 16bit instruction as us << 153 instruction exception. << 154 In kernel we parse the *regs->pc to << 155 5 156 config GENERIC_CALIBRATE_DELAY !! 6 mainmenu "Linux Kernel Configuration" 157 def_bool y << 158 7 159 config GENERIC_CSUM !! 8 config X86 160 def_bool y !! 9 bool 161 !! 10 default y 162 config GENERIC_HWEIGHT !! 11 help 163 def_bool y !! 12 This is Linux's home port. Linux was originally native to the Intel >> 13 386, and runs on all the later x86 processors including the Intel >> 14 486, 586, Pentiums, and various instruction-set-compatible chips by >> 15 AMD, Cyrix, and others. 164 16 165 config MMU 17 config MMU 166 def_bool y !! 18 bool >> 19 default y >> 20 >> 21 config SBUS >> 22 bool 167 23 168 config STACKTRACE_SUPPORT !! 24 config UID16 169 def_bool y !! 25 bool >> 26 default y 170 27 171 config TIME_LOW_RES !! 28 config GENERIC_ISA_DMA 172 def_bool y !! 29 bool >> 30 default y 173 31 174 config CPU_ASID_BITS !! 32 source "init/Kconfig" 175 int << 176 default "8" if (CPU_CK610 || CPU_C << 177 default "12" if (CPU_CK860) << 178 33 179 config L1_CACHE_SHIFT << 180 int << 181 default "4" if (CPU_CK610) << 182 default "5" if (CPU_CK807 || CPU_C << 183 default "6" if (CPU_CK860) << 184 << 185 config ARCH_MMAP_RND_BITS_MIN << 186 default 8 << 187 << 188 # max bits determined by the following formula << 189 # VA_BITS - PAGE_SHIFT - 3 << 190 config ARCH_MMAP_RND_BITS_MAX << 191 default 17 << 192 34 193 menu "Processor type and features" 35 menu "Processor type and features" 194 36 195 choice 37 choice 196 prompt "CPU MODEL" !! 38 prompt "Subarchitecture Type" 197 default CPU_CK807 !! 39 default X86_PC 198 40 199 config CPU_CK610 !! 41 config X86_PC 200 bool "CSKY CPU ck610" !! 42 bool "PC-compatible" 201 select CPU_NEED_TLBSYNC !! 43 help 202 select CPU_NEED_SOFTALIGN !! 44 Choose this option if your computer is a standard PC or compatible. 203 select CPU_NO_USER_BKPT << 204 << 205 config CPU_CK810 << 206 bool "CSKY CPU ck810" << 207 select CPU_HAS_HILO << 208 select CPU_NEED_TLBSYNC << 209 << 210 config CPU_CK807 << 211 bool "CSKY CPU ck807" << 212 select CPU_HAS_HILO << 213 << 214 config CPU_CK860 << 215 bool "CSKY CPU ck860" << 216 select CPU_HAS_TLBI << 217 select CPU_HAS_CACHEV2 << 218 select CPU_HAS_LDSTEX << 219 select CPU_HAS_FPUV2 << 220 endchoice << 221 45 222 choice !! 46 config X86_VOYAGER 223 prompt "PAGE OFFSET" !! 47 bool "Voyager (NCR)" 224 default PAGE_OFFSET_80000000 !! 48 help >> 49 Voyager is a MCA based 32 way capable SMP architecture proprietary >> 50 to NCR Corp. Machine classes 345x/35xx/4100/51xx are voyager based. >> 51 >> 52 *** WARNING *** >> 53 >> 54 If you do not specifically know you have a Voyager based machine, >> 55 say N here otherwise the kernel you build will not be bootable. 225 56 226 config PAGE_OFFSET_80000000 !! 57 config X86_NUMAQ 227 bool "PAGE OFFSET 2G (user:kernel = 2: !! 58 bool "NUMAQ (IBM/Sequent)" >> 59 help >> 60 This option is used for getting Linux to run on a (IBM/Sequent) NUMA >> 61 multiquad box. This changes the way that processors are bootstrapped, >> 62 and uses Clustered Logical APIC addressing mode instead of Flat Logical. >> 63 You will need a new lynxer.elf file to flash your firmware with - send >> 64 email to Martin.Bligh@us.ibm.com 228 65 229 config PAGE_OFFSET_A0000000 !! 66 config X86_SUMMIT 230 bool "PAGE OFFSET 2.5G (user:kernel = !! 67 bool "Summit/EXA (IBM x440)" 231 endchoice !! 68 depends on SMP >> 69 help >> 70 This option is needed for IBM systems that use the Summit/EXA chipset. >> 71 In particular, it is needed for the x440. 232 72 233 config PAGE_OFFSET !! 73 If you don't have one of these computers, you should say N here. 234 hex !! 74 235 default 0x80000000 if PAGE_OFFSET_8000 !! 75 config X86_BIGSMP 236 default 0xa0000000 if PAGE_OFFSET_A000 !! 76 bool "Support for other sub-arch SMP systems with more than 8 CPUs" 237 choice !! 77 depends on SMP >> 78 help >> 79 This option is needed for the systems that have more than 8 CPUs >> 80 and if the system is not of any sub-arch type above. >> 81 >> 82 If you don't have such a system, you should say N here. 238 83 239 prompt "C-SKY PMU type" !! 84 config X86_VISWS 240 depends on PERF_EVENTS !! 85 bool "SGI 320/540 (Visual Workstation)" 241 depends on CPU_CK807 || CPU_CK810 || C !! 86 help >> 87 The SGI Visual Workstation series is an IA32-based workstation >> 88 based on SGI systems chips with some legacy PC hardware attached. >> 89 >> 90 Say Y here to create a kernel to run on the SGI 320 or 540. >> 91 >> 92 A kernel compiled for the Visual Workstation will not run on PCs >> 93 and vice versa. See <file:Documentation/sgi-visws.txt> for details. 242 94 243 config CPU_PMU_NONE !! 95 config X86_GENERICARCH 244 bool "None" !! 96 bool "Generic architecture (Summit, bigsmp, default)" >> 97 depends on SMP >> 98 help >> 99 This option compiles in the Summit, bigsmp, default subarchitectures. >> 100 It is intended for a generic binary kernel. 245 101 246 config CSKY_PMU_V1 !! 102 config X86_ES7000 247 bool "Performance Monitoring Unit Ver. !! 103 bool "Support for Unisys ES7000 IA32 series" >> 104 depends on SMP >> 105 help >> 106 Support for Unisys ES7000 systems. Say 'Y' here if this kernel is >> 107 supposed to run on an IA32-based Unisys ES7000 system. >> 108 Only choose this option if you have such a system, otherwise you >> 109 should say N here. 248 110 249 endchoice 111 endchoice 250 112 >> 113 config ACPI_SRAT >> 114 bool >> 115 default y >> 116 depends on NUMA && (X86_SUMMIT || X86_GENERICARCH) >> 117 >> 118 config X86_CYCLONE_TIMER >> 119 bool >> 120 default y >> 121 depends on X86_SUMMIT || X86_GENERICARCH >> 122 >> 123 config ES7000_CLUSTERED_APIC >> 124 bool >> 125 default y >> 126 depends on SMP && X86_ES7000 && MPENTIUMIII >> 127 251 choice 128 choice 252 prompt "Power Manager Instruction (wai !! 129 prompt "Processor family" 253 default CPU_PM_NONE !! 130 default M686 >> 131 >> 132 config M386 >> 133 bool "386" >> 134 ---help--- >> 135 This is the processor type of your CPU. This information is used for >> 136 optimizing purposes. In order to compile a kernel that can run on >> 137 all x86 CPU types (albeit not optimally fast), you can specify >> 138 "386" here. >> 139 >> 140 The kernel will not necessarily run on earlier architectures than >> 141 the one you have chosen, e.g. a Pentium optimized kernel will run on >> 142 a PPro, but not necessarily on a i486. >> 143 >> 144 Here are the settings recommended for greatest speed: >> 145 - "386" for the AMD/Cyrix/Intel 386DX/DXL/SL/SLC/SX, Cyrix/TI >> 146 486DLC/DLC2, UMC 486SX-S and NexGen Nx586. Only "386" kernels >> 147 will run on a 386 class machine. >> 148 - "486" for the AMD/Cyrix/IBM/Intel 486DX/DX2/DX4 or >> 149 SL/SLC/SLC2/SLC3/SX/SX2 and UMC U5D or U5S. >> 150 - "586" for generic Pentium CPUs lacking the TSC >> 151 (time stamp counter) register. >> 152 - "Pentium-Classic" for the Intel Pentium. >> 153 - "Pentium-MMX" for the Intel Pentium MMX. >> 154 - "Pentium-Pro" for the Intel Pentium Pro. >> 155 - "Pentium-II" for the Intel Pentium II or pre-Coppermine Celeron. >> 156 - "Pentium-III" for the Intel Pentium III or Coppermine Celeron. >> 157 - "Pentium-4" for the Intel Pentium 4 or P4-based Celeron. >> 158 - "K6" for the AMD K6, K6-II and K6-III (aka K6-3D). >> 159 - "Athlon" for the AMD K7 family (Athlon/Duron/Thunderbird). >> 160 - "Crusoe" for the Transmeta Crusoe series. >> 161 - "Winchip-C6" for original IDT Winchip. >> 162 - "Winchip-2" for IDT Winchip 2. >> 163 - "Winchip-2A" for IDT Winchips with 3dNow! capabilities. >> 164 - "CyrixIII/VIA C3" for VIA Cyrix III or VIA C3. >> 165 - "VIA C3-2 for VIA C3-2 "Nehemiah" (model 9 and above). >> 166 >> 167 If you don't know what to do, choose "386". >> 168 >> 169 config M486 >> 170 bool "486" >> 171 help >> 172 Select this for a 486 series processor, either Intel or one of the >> 173 compatible processors from AMD, Cyrix, IBM, or Intel. Includes DX, >> 174 DX2, and DX4 variants; also SL/SLC/SLC2/SLC3/SX/SX2 and UMC U5D or >> 175 U5S. >> 176 >> 177 config M586 >> 178 bool "586/K5/5x86/6x86/6x86MX" >> 179 help >> 180 Select this for an 586 or 686 series processor such as the AMD K5, >> 181 the Intel 5x86 or 6x86, or the Intel 6x86MX. This choice does not >> 182 assume the RDTSC (Read Time Stamp Counter) instruction. 254 183 255 config CPU_PM_NONE !! 184 config M586TSC 256 bool "None" !! 185 bool "Pentium-Classic" >> 186 help >> 187 Select this for a Pentium Classic processor with the RDTSC (Read >> 188 Time Stamp Counter) instruction for benchmarking. >> 189 >> 190 config M586MMX >> 191 bool "Pentium-MMX" >> 192 help >> 193 Select this for a Pentium with the MMX graphics/multimedia >> 194 extended instructions. >> 195 >> 196 config M686 >> 197 bool "Pentium-Pro" >> 198 help >> 199 Select this for Intel Pentium Pro chips. This enables the use of >> 200 Pentium Pro extended instructions, and disables the init-time guard >> 201 against the f00f bug found in earlier Pentiums. >> 202 >> 203 config MPENTIUMII >> 204 bool "Pentium-II/Celeron(pre-Coppermine)" >> 205 help >> 206 Select this for Intel chips based on the Pentium-II and >> 207 pre-Coppermine Celeron core. This option enables an unaligned >> 208 copy optimization, compiles the kernel with optimization flags >> 209 tailored for the chip, and applies any applicable Pentium Pro >> 210 optimizations. >> 211 >> 212 config MPENTIUMIII >> 213 bool "Pentium-III/Celeron(Coppermine)/Pentium-III Xeon" >> 214 help >> 215 Select this for Intel chips based on the Pentium-III and >> 216 Celeron-Coppermine core. This option enables use of some >> 217 extended prefetch instructions in addition to the Pentium II >> 218 extensions. >> 219 >> 220 config MPENTIUM4 >> 221 bool "Pentium-4/Celeron(P4-based)/Xeon" >> 222 help >> 223 Select this for Intel Pentium 4 chips. This includes both >> 224 the Pentium 4 and P4-based Celeron chips. This option >> 225 enables compile flags optimized for the chip, uses the >> 226 correct cache shift, and applies any applicable Pentium III >> 227 optimizations. >> 228 >> 229 config MK6 >> 230 bool "K6/K6-II/K6-III" >> 231 help >> 232 Select this for an AMD K6-family processor. Enables use of >> 233 some extended instructions, and passes appropriate optimization >> 234 flags to GCC. >> 235 >> 236 config MK7 >> 237 bool "Athlon/Duron/K7" >> 238 help >> 239 Select this for an AMD Athlon K7-family processor. Enables use of >> 240 some extended instructions, and passes appropriate optimization >> 241 flags to GCC. >> 242 >> 243 config MK8 >> 244 bool "Opteron/Athlon64/Hammer/K8" >> 245 help >> 246 Select this for an AMD Opteron or Athlon64 Hammer-family processor. Enables >> 247 use of some extended instructions, and passes appropriate optimization >> 248 flags to GCC. >> 249 >> 250 config MELAN >> 251 bool "Elan" >> 252 >> 253 config MCRUSOE >> 254 bool "Crusoe" >> 255 help >> 256 Select this for a Transmeta Crusoe processor. Treats the processor >> 257 like a 586 with TSC, and sets some GCC optimization flags (like a >> 258 Pentium Pro with no alignment requirements). >> 259 >> 260 config MWINCHIPC6 >> 261 bool "Winchip-C6" >> 262 help >> 263 Select this for an IDT Winchip C6 chip. Linux and GCC >> 264 treat this chip as a 586TSC with some extended instructions >> 265 and alignment requirements. >> 266 >> 267 config MWINCHIP2 >> 268 bool "Winchip-2" >> 269 help >> 270 Select this for an IDT Winchip-2. Linux and GCC >> 271 treat this chip as a 586TSC with some extended instructions >> 272 and alignment requirements. >> 273 >> 274 config MWINCHIP3D >> 275 bool "Winchip-2A/Winchip-3" >> 276 help >> 277 Select this for an IDT Winchip-2A or 3. Linux and GCC >> 278 treat this chip as a 586TSC with some extended instructions >> 279 and alignment reqirements. Also enable out of order memory >> 280 stores for this CPU, which can increase performance of some >> 281 operations. 257 282 258 config CPU_PM_WAIT !! 283 config MCYRIXIII 259 bool "wait" !! 284 bool "CyrixIII/VIA-C3" >> 285 help >> 286 Select this for a Cyrix III or C3 chip. Presently Linux and GCC >> 287 treat this chip as a generic 586. Whilst the CPU is 686 class, >> 288 it lacks the cmov extension which gcc assumes is present when >> 289 generating 686 code. >> 290 Note that Nehemiah (Model 9) and above will not boot with this >> 291 kernel due to them lacking the 3DNow! instructions used in earlier >> 292 incarnations of the CPU. 260 293 261 config CPU_PM_DOZE !! 294 config MVIAC3_2 262 bool "doze" !! 295 bool "VIA C3-2 (Nehemiah)" >> 296 help >> 297 Select this for a VIA C3 "Nehemiah". Selecting this enables usage >> 298 of SSE and tells gcc to treat the CPU as a 686. >> 299 Note, this kernel will not boot on older (pre model 9) C3s. 263 300 264 config CPU_PM_STOP << 265 bool "stop" << 266 endchoice 301 endchoice 267 302 268 menuconfig HAVE_TCM !! 303 config X86_GENERIC 269 bool "Tightly-Coupled/Sram Memory" !! 304 bool "Generic x86 support" 270 depends on !COMPILE_TEST !! 305 help 271 help !! 306 Including some tuning for non selected x86 CPUs too. 272 The implementation are not only used !! 307 when it has moderate overhead. This is intended for generic 273 but also used by sram on SOC bus. It !! 308 distributions kernels. 274 software interface, so that old tcm !! 309 275 re-used directly. !! 310 # 276 !! 311 # Define implied options from the CPU selection here 277 if HAVE_TCM !! 312 # 278 config ITCM_RAM_BASE !! 313 config X86_CMPXCHG 279 hex "ITCM ram base" !! 314 bool 280 default 0xffffffff !! 315 depends on !M386 281 !! 316 default y 282 config ITCM_NR_PAGES !! 317 283 int "Page count of ITCM size: NR*4KB" !! 318 config X86_XADD 284 range 1 256 !! 319 bool 285 default 32 !! 320 depends on !M386 286 !! 321 default y 287 config HAVE_DTCM !! 322 288 bool "DTCM Support" !! 323 config X86_L1_CACHE_SHIFT 289 !! 324 int 290 config DTCM_RAM_BASE !! 325 default "7" if MPENTIUM4 || X86_GENERIC 291 hex "DTCM ram base" !! 326 default "4" if MELAN || M486 || M386 292 depends on HAVE_DTCM !! 327 default "5" if MWINCHIP3D || MWINCHIP2 || MWINCHIPC6 || MCRUSOE || MCYRIXIII || MK6 || MPENTIUMIII || MPENTIUMII || M686 || M586MMX || M586TSC || M586 || MVIAC3_2 293 default 0xffffffff !! 328 default "6" if MK7 || MK8 294 !! 329 295 config DTCM_NR_PAGES !! 330 config RWSEM_GENERIC_SPINLOCK 296 int "Page count of DTCM size: NR*4KB" !! 331 bool 297 depends on HAVE_DTCM !! 332 depends on M386 298 range 1 256 !! 333 default y 299 default 32 !! 334 300 endif !! 335 config RWSEM_XCHGADD_ALGORITHM 301 !! 336 bool 302 config CPU_HAS_VDSP !! 337 depends on !M386 303 bool "CPU has VDSP coprocessor" !! 338 default y 304 depends on CPU_HAS_FPU && CPU_HAS_FPUV !! 339 305 !! 340 config X86_PPRO_FENCE 306 config CPU_HAS_FPU !! 341 bool 307 bool "CPU has FPU coprocessor" !! 342 depends on M686 || M586MMX || M586TSC || M586 || M486 || M386 308 depends on CPU_CK807 || CPU_CK810 || C !! 343 default y 309 !! 344 310 config CPU_HAS_ICACHE_INS !! 345 config X86_F00F_BUG 311 bool "CPU has Icache invalidate instru !! 346 bool 312 depends on CPU_HAS_CACHEV2 !! 347 depends on M586MMX || M586TSC || M586 || M486 || M386 313 !! 348 default y 314 config CPU_HAS_TEE !! 349 315 bool "CPU has Trusted Execution Enviro !! 350 config X86_WP_WORKS_OK 316 depends on CPU_CK810 !! 351 bool >> 352 depends on !M386 >> 353 default y >> 354 >> 355 config X86_INVLPG >> 356 bool >> 357 depends on !M386 >> 358 default y >> 359 >> 360 config X86_BSWAP >> 361 bool >> 362 depends on !M386 >> 363 default y >> 364 >> 365 config X86_POPAD_OK >> 366 bool >> 367 depends on !M386 >> 368 default y >> 369 >> 370 config X86_ALIGNMENT_16 >> 371 bool >> 372 depends on MWINCHIP3D || MWINCHIP2 || MWINCHIPC6 || MCYRIXIII || MELAN || MK6 || M586MMX || M586TSC || M586 || M486 || MVIAC3_2 >> 373 default y >> 374 >> 375 config X86_GOOD_APIC >> 376 bool >> 377 depends on MK7 || MPENTIUM4 || MPENTIUMIII || MPENTIUMII || M686 || M586MMX || MK8 >> 378 default y >> 379 >> 380 config X86_INTEL_USERCOPY >> 381 bool >> 382 depends on MPENTIUM4 || MPENTIUMIII || MPENTIUMII || M586MMX || X86_GENERIC || MK8 || MK7 >> 383 default y >> 384 >> 385 config X86_USE_PPRO_CHECKSUM >> 386 bool >> 387 depends on MWINCHIP3D || MWINCHIP2 || MWINCHIPC6 || MCYRIXIII || MK7 || MK6 || MPENTIUM4 || MPENTIUMIII || MPENTIUMII || M686 || MK8 || MVIAC3_2 >> 388 default y >> 389 >> 390 config X86_USE_3DNOW >> 391 bool >> 392 depends on MCYRIXIII || MK7 >> 393 default y >> 394 >> 395 config X86_OOSTORE >> 396 bool >> 397 depends on MWINCHIP3D || MWINCHIP2 || MWINCHIPC6 >> 398 default y >> 399 >> 400 config HPET_TIMER >> 401 bool "HPET Timer Support" >> 402 help >> 403 This enables the use of the HPET for the kernel's internal timer. >> 404 HPET is the next generation timer replacing legacy 8254s. >> 405 You can safely choose Y here. However, HPET will only be >> 406 activated if the platform and the BIOS support this feature. >> 407 Otherwise the 8254 will be used for timing services. >> 408 >> 409 Choose N to continue using the legacy 8254 timer. >> 410 >> 411 config HPET_EMULATE_RTC >> 412 def_bool HPET_TIMER && RTC=y 317 413 318 config SMP 414 config SMP 319 bool "Symmetric Multi-Processing (SMP) !! 415 bool "Symmetric multi-processing support" 320 depends on CPU_CK860 !! 416 ---help--- 321 default n !! 417 This enables support for systems with more than one CPU. If you have >> 418 a system with only one CPU, like most personal computers, say N. If >> 419 you have a system with more than one CPU, say Y. >> 420 >> 421 If you say N here, the kernel will run on single and multiprocessor >> 422 machines, but will use only one CPU of a multiprocessor machine. If >> 423 you say Y here, the kernel will run on many, but not all, >> 424 singleprocessor machines. On a singleprocessor machine, the kernel >> 425 will run faster if you say N here. >> 426 >> 427 Note that if you say Y here and choose architecture "586" or >> 428 "Pentium" under "Processor family", the kernel will not work on 486 >> 429 architectures. Similarly, multiprocessor kernels for the "PPro" >> 430 architecture may not work on all Pentium based boards. >> 431 >> 432 People using multiprocessor machines who say Y here should also say >> 433 Y to "Enhanced Real Time Clock Support", below. The "Advanced Power >> 434 Management" code will be disabled if you say Y here. >> 435 >> 436 See also the <file:Documentation/smp.tex>, >> 437 <file:Documentation/smp.txt>, <file:Documentation/i386/IO-APIC.txt>, >> 438 <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available at >> 439 <http://www.tldp.org/docs.html#howto>. >> 440 >> 441 If you don't know what to do here, say N. 322 442 323 config NR_CPUS 443 config NR_CPUS 324 int "Maximum number of CPUs (2-32)" !! 444 int "Maximum number of CPUs (2-255)" 325 range 2 32 << 326 depends on SMP 445 depends on SMP 327 default "4" !! 446 default "32" if X86_NUMAQ || X86_SUMMIT || X86_BIGSMP || X86_ES7000 >> 447 default "8" >> 448 help >> 449 This allows you to specify the maximum number of CPUs which this >> 450 kernel will support. The maximum supported value is 255 and the >> 451 minimum value which makes sense is 2. >> 452 >> 453 This is purely to save memory - each supported CPU adds >> 454 approximately eight kilobytes to the kernel image. >> 455 >> 456 config PREEMPT >> 457 bool "Preemptible Kernel" >> 458 help >> 459 This option reduces the latency of the kernel when reacting to >> 460 real-time or interactive events by allowing a low priority process to >> 461 be preempted even if it is in kernel mode executing a system call. >> 462 This allows applications to run more reliably even when the system is >> 463 under load. >> 464 >> 465 Say Y here if you are building a kernel for a desktop, embedded >> 466 or real-time system. Say N if you are unsure. >> 467 >> 468 config X86_UP_APIC >> 469 bool "Local APIC support on uniprocessors" if !SMP >> 470 depends on !(X86_VISWS || X86_VOYAGER) >> 471 ---help--- >> 472 A local APIC (Advanced Programmable Interrupt Controller) is an >> 473 integrated interrupt controller in the CPU. If you have a single-CPU >> 474 system which has a processor with a local APIC, you can say Y here to >> 475 enable and use it. If you say Y here even though your machine doesn't >> 476 have a local APIC, then the kernel will still run with no slowdown at >> 477 all. The local APIC supports CPU-generated self-interrupts (timer, >> 478 performance counters), and the NMI watchdog which detects hard >> 479 lockups. >> 480 >> 481 If you have a system with several CPUs, you do not need to say Y >> 482 here: the local APIC will be used automatically. >> 483 >> 484 config X86_UP_IOAPIC >> 485 bool "IO-APIC support on uniprocessors" >> 486 depends on !SMP && X86_UP_APIC >> 487 help >> 488 An IO-APIC (I/O Advanced Programmable Interrupt Controller) is an >> 489 SMP-capable replacement for PC-style interrupt controllers. Most >> 490 SMP systems and a small number of uniprocessor systems have one. >> 491 If you have a single-CPU system with an IO-APIC, you can say Y here >> 492 to use it. If you say Y here even though your machine doesn't have >> 493 an IO-APIC, then the kernel will still run with no slowdown at all. >> 494 >> 495 If you have a system with several CPUs, you do not need to say Y >> 496 here: the IO-APIC will be used automatically. >> 497 >> 498 config X86_LOCAL_APIC >> 499 bool >> 500 depends on !SMP && X86_UP_APIC >> 501 default y >> 502 >> 503 config X86_IO_APIC >> 504 bool >> 505 depends on !SMP && X86_UP_IOAPIC >> 506 default y >> 507 >> 508 config X86_TSC >> 509 bool >> 510 depends on (MWINCHIP3D || MWINCHIP2 || MCRUSOE || MCYRIXIII || MK7 || MK6 || MPENTIUM4 || MPENTIUMIII || MPENTIUMII || M686 || M586MMX || M586TSC || MK8 || MVIAC3_2) && !X86_NUMAQ >> 511 default y >> 512 >> 513 config X86_MCE >> 514 bool "Machine Check Exception" >> 515 ---help--- >> 516 Machine Check Exception support allows the processor to notify the >> 517 kernel if it detects a problem (e.g. overheating, component failure). >> 518 The action the kernel takes depends on the severity of the problem, >> 519 ranging from a warning message on the console, to halting the machine. >> 520 Your processor must be a Pentium or newer to support this - check the >> 521 flags in /proc/cpuinfo for mce. Note that some older Pentium systems >> 522 have a design flaw which leads to false MCE events - hence MCE is >> 523 disabled on all P5 processors, unless explicitly enabled with "mce" >> 524 as a boot argument. Similarly, if MCE is built in and creates a >> 525 problem on some new non-standard machine, you can boot with "nomce" >> 526 to disable it. MCE support simply ignores non-MCE processors like >> 527 the 386 and 486, so nearly everyone can say Y here. >> 528 >> 529 config X86_MCE_NONFATAL >> 530 bool "Check for non-fatal errors on AMD Athlon/Duron / Intel Pentium 4" >> 531 depends on X86_MCE >> 532 help >> 533 Enabling this feature starts a timer that triggers every 5 seconds which >> 534 will look at the machine check registers to see if anything happened. >> 535 Non-fatal problems automatically get corrected (but still logged). >> 536 Disable this if you don't want to see these messages. >> 537 Seeing the messages this option prints out may be indicative of dying hardware, >> 538 or out-of-spec (ie, overclocked) hardware. >> 539 This option only does something on certain CPUs. >> 540 (AMD Athlon/Duron and Intel Pentium 4) >> 541 >> 542 config X86_MCE_P4THERMAL >> 543 bool "check for P4 thermal throttling interrupt." >> 544 depends on X86_MCE && (X86_UP_APIC || SMP) >> 545 help >> 546 Enabling this feature will cause a message to be printed when the P4 >> 547 enters thermal throttling. >> 548 >> 549 config TOSHIBA >> 550 tristate "Toshiba Laptop support" >> 551 ---help--- >> 552 This adds a driver to safely access the System Management Mode of >> 553 the CPU on Toshiba portables with a genuine Toshiba BIOS. It does >> 554 not work on models with a Phoenix BIOS. The System Management Mode >> 555 is used to set the BIOS and power saving options on Toshiba portables. >> 556 >> 557 For information on utilities to make use of this driver see the >> 558 Toshiba Linux utilities web site at: >> 559 <http://www.buzzard.org.uk/toshiba/>. >> 560 >> 561 Say Y if you intend to run this kernel on a Toshiba portable. >> 562 Say N otherwise. >> 563 >> 564 config I8K >> 565 tristate "Dell laptop support" >> 566 ---help--- >> 567 This adds a driver to safely access the System Management Mode >> 568 of the CPU on the Dell Inspiron 8000. The System Management Mode >> 569 is used to read cpu temperature and cooling fan status and to >> 570 control the fans on the I8K portables. >> 571 >> 572 This driver has been tested only on the Inspiron 8000 but it may >> 573 also work with other Dell laptops. You can force loading on other >> 574 models by passing the parameter `force=1' to the module. Use at >> 575 your own risk. >> 576 >> 577 For information on utilities to make use of this driver see the >> 578 I8K Linux utilities web site at: >> 579 <http://www.debian.org/~dz/i8k/> >> 580 >> 581 Say Y if you intend to run this kernel on a Dell Inspiron 8000. >> 582 Say N otherwise. >> 583 >> 584 config MICROCODE >> 585 tristate "/dev/cpu/microcode - Intel IA32 CPU microcode support" >> 586 ---help--- >> 587 If you say Y here and also to "/dev file system support" in the >> 588 'File systems' section, you will be able to update the microcode on >> 589 Intel processors in the IA32 family, e.g. Pentium Pro, Pentium II, >> 590 Pentium III, Pentium 4, Xeon etc. You will obviously need the >> 591 actual microcode binary data itself which is not shipped with the >> 592 Linux kernel. >> 593 >> 594 For latest news and information on obtaining all the required >> 595 ingredients for this driver, check: >> 596 <http://www.urbanmyth.org/microcode/>. >> 597 >> 598 To compile this driver as a module, choose M here: the >> 599 module will be called microcode. >> 600 If you use modprobe or kmod you may also want to add the line >> 601 'alias char-major-10-184 microcode' to your /etc/modules.conf file. >> 602 >> 603 config X86_MSR >> 604 tristate "/dev/cpu/*/msr - Model-specific register support" >> 605 help >> 606 This device gives privileged processes access to the x86 >> 607 Model-Specific Registers (MSRs). It is a character device with >> 608 major 202 and minors 0 to 31 for /dev/cpu/0/msr to /dev/cpu/31/msr. >> 609 MSR accesses are directed to a specific CPU on multi-processor >> 610 systems. >> 611 >> 612 config X86_CPUID >> 613 tristate "/dev/cpu/*/cpuid - CPU information support" >> 614 help >> 615 This device gives processes access to the x86 CPUID instruction to >> 616 be executed on a specific processor. It is a character device >> 617 with major 203 and minors 0 to 31 for /dev/cpu/0/cpuid to >> 618 /dev/cpu/31/cpuid. >> 619 >> 620 config EDD >> 621 tristate "BIOS Enhanced Disk Drive calls determine boot disk (EXPERIMENTAL)" >> 622 depends on EXPERIMENTAL >> 623 help >> 624 Say Y or M here if you want to enable BIOS Enhanced Disk Drive >> 625 Services real mode BIOS calls to determine which disk >> 626 BIOS tries boot from. This information is then exported via driverfs. >> 627 >> 628 This option is experimental, but believed to be safe, >> 629 and most disk controller BIOS vendors do not yet implement this feature. >> 630 >> 631 choice >> 632 prompt "High Memory Support" >> 633 default NOHIGHMEM >> 634 >> 635 config NOHIGHMEM >> 636 bool "off" >> 637 ---help--- >> 638 Linux can use up to 64 Gigabytes of physical memory on x86 systems. >> 639 However, the address space of 32-bit x86 processors is only 4 >> 640 Gigabytes large. That means that, if you have a large amount of >> 641 physical memory, not all of it can be "permanently mapped" by the >> 642 kernel. The physical memory that's not permanently mapped is called >> 643 "high memory". >> 644 >> 645 If you are compiling a kernel which will never run on a machine with >> 646 more than 1 Gigabyte total physical RAM, answer "off" here (default >> 647 choice and suitable for most users). This will result in a "3GB/1GB" >> 648 split: 3GB are mapped so that each process sees a 3GB virtual memory >> 649 space and the remaining part of the 4GB virtual memory space is used >> 650 by the kernel to permanently map as much physical memory as >> 651 possible. >> 652 >> 653 If the machine has between 1 and 4 Gigabytes physical RAM, then >> 654 answer "4GB" here. >> 655 >> 656 If more than 4 Gigabytes is used then answer "64GB" here. This >> 657 selection turns Intel PAE (Physical Address Extension) mode on. >> 658 PAE implements 3-level paging on IA32 processors. PAE is fully >> 659 supported by Linux, PAE mode is implemented on all recent Intel >> 660 processors (Pentium Pro and better). NOTE: If you say "64GB" here, >> 661 then the kernel will not boot on CPUs that don't support PAE! >> 662 >> 663 The actual amount of total physical memory will either be >> 664 auto detected or can be forced by using a kernel command line option >> 665 such as "mem=256M". (Try "man bootparam" or see the documentation of >> 666 your boot loader (lilo or loadlin) about how to pass options to the >> 667 kernel at boot time.) >> 668 >> 669 If unsure, say "off". >> 670 >> 671 config HIGHMEM4G >> 672 bool "4GB" >> 673 help >> 674 Select this if you have a 32-bit processor and between 1 and 4 >> 675 gigabytes of physical RAM. >> 676 >> 677 config HIGHMEM64G >> 678 bool "64GB" >> 679 help >> 680 Select this if you have a 32-bit processor and more than 4 >> 681 gigabytes of physical RAM. >> 682 >> 683 endchoice 328 684 329 config HIGHMEM 685 config HIGHMEM 330 bool "High Memory Support" !! 686 bool 331 depends on !CPU_CK610 !! 687 depends on HIGHMEM64G || HIGHMEM4G 332 select KMAP_LOCAL << 333 default y 688 default y 334 689 335 config DRAM_BASE !! 690 config X86_PAE 336 hex "DRAM start addr (the same with me !! 691 bool 337 default 0x0 !! 692 depends on HIGHMEM64G 338 !! 693 default y 339 config HOTPLUG_CPU !! 694 340 bool "Support for hot-pluggable CPUs" !! 695 # Common NUMA Features 341 select GENERIC_IRQ_MIGRATION !! 696 config NUMA 342 depends on SMP !! 697 bool "Numa Memory Allocation Support" >> 698 depends on SMP && HIGHMEM64G && (X86_PC || X86_NUMAQ || X86_GENERICARCH || (X86_SUMMIT && ACPI && !ACPI_HT_ONLY)) >> 699 default n if X86_PC >> 700 default y if (X86_NUMAQ || X86_SUMMIT) >> 701 >> 702 # Need comments to help the hapless user trying to turn on NUMA support >> 703 comment "NUMA (NUMA-Q) requires SMP, 64GB highmem support" >> 704 depends on X86_NUMAQ && (!HIGHMEM64G || !SMP) >> 705 >> 706 comment "NUMA (Summit) requires SMP, 64GB highmem support, full ACPI" >> 707 depends on X86_SUMMIT && (!HIGHMEM64G || !ACPI || ACPI_HT_ONLY) >> 708 >> 709 config DISCONTIGMEM >> 710 bool >> 711 depends on NUMA >> 712 default y >> 713 >> 714 config HAVE_ARCH_BOOTMEM_NODE >> 715 bool >> 716 depends on NUMA >> 717 default y >> 718 >> 719 config HIGHPTE >> 720 bool "Allocate 3rd-level pagetables from highmem" >> 721 depends on HIGHMEM4G || HIGHMEM64G >> 722 help >> 723 The VM uses one page table entry for each page of physical memory. >> 724 For systems with a lot of RAM, this can be wasteful of precious >> 725 low memory. Setting this option will put user-space page table >> 726 entries in high memory. >> 727 >> 728 config MATH_EMULATION >> 729 bool "Math emulation" >> 730 ---help--- >> 731 Linux can emulate a math coprocessor (used for floating point >> 732 operations) if you don't have one. 486DX and Pentium processors have >> 733 a math coprocessor built in, 486SX and 386 do not, unless you added >> 734 a 487DX or 387, respectively. (The messages during boot time can >> 735 give you some hints here ["man dmesg"].) Everyone needs either a >> 736 coprocessor or this emulation. >> 737 >> 738 If you don't have a math coprocessor, you need to say Y here; if you >> 739 say Y here even though you have a coprocessor, the coprocessor will >> 740 be used nevertheless. (This behavior can be changed with the kernel >> 741 command line option "no387", which comes handy if your coprocessor >> 742 is broken. Try "man bootparam" or see the documentation of your boot >> 743 loader (lilo or loadlin) about how to pass options to the kernel at >> 744 boot time.) This means that it is a good idea to say Y here if you >> 745 intend to use this kernel on different machines. >> 746 >> 747 More information about the internals of the Linux math coprocessor >> 748 emulation can be found in <file:arch/i386/math-emu/README>. >> 749 >> 750 If you are not sure, say Y; apart from resulting in a 66 KB bigger >> 751 kernel, it won't hurt. >> 752 >> 753 config MTRR >> 754 bool "MTRR (Memory Type Range Register) support" >> 755 ---help--- >> 756 On Intel P6 family processors (Pentium Pro, Pentium II and later) >> 757 the Memory Type Range Registers (MTRRs) may be used to control >> 758 processor access to memory ranges. This is most useful if you have >> 759 a video (VGA) card on a PCI or AGP bus. Enabling write-combining >> 760 allows bus write transfers to be combined into a larger transfer >> 761 before bursting over the PCI/AGP bus. This can increase performance >> 762 of image write operations 2.5 times or more. Saying Y here creates a >> 763 /proc/mtrr file which may be used to manipulate your processor's >> 764 MTRRs. Typically the X server should use this. >> 765 >> 766 This code has a reasonably generic interface so that similar >> 767 control registers on other processors can be easily supported >> 768 as well: >> 769 >> 770 The Cyrix 6x86, 6x86MX and M II processors have Address Range >> 771 Registers (ARRs) which provide a similar functionality to MTRRs. For >> 772 these, the ARRs are used to emulate the MTRRs. >> 773 The AMD K6-2 (stepping 8 and above) and K6-3 processors have two >> 774 MTRRs. The Centaur C6 (WinChip) has 8 MCRs, allowing >> 775 write-combining. All of these processors are supported by this code >> 776 and it makes sense to say Y here if you have one of them. >> 777 >> 778 Saying Y here also fixes a problem with buggy SMP BIOSes which only >> 779 set the MTRRs for the boot CPU and not for the secondary CPUs. This >> 780 can lead to all sorts of problems, so it's good to say Y here. >> 781 >> 782 You can safely say Y even if your machine doesn't have MTRRs, you'll >> 783 just add about 9 KB to your kernel. >> 784 >> 785 See <file:Documentation/mtrr.txt> for more information. >> 786 >> 787 config HAVE_DEC_LOCK >> 788 bool >> 789 depends on (SMP || PREEMPT) && X86_CMPXCHG >> 790 default y >> 791 >> 792 # turning this on wastes a bunch of space. >> 793 # Summit needs it only when NUMA is on >> 794 config BOOT_IOREMAP >> 795 bool >> 796 depends on ((X86_SUMMIT || X86_GENERICARCH) && NUMA) >> 797 default y >> 798 >> 799 endmenu >> 800 >> 801 >> 802 menu "Power management options (ACPI, APM)" >> 803 depends on !X86_VOYAGER >> 804 >> 805 source kernel/power/Kconfig >> 806 >> 807 source "drivers/acpi/Kconfig" >> 808 >> 809 menu "APM (Advanced Power Management) BIOS Support" >> 810 depends on PM >> 811 >> 812 config APM >> 813 tristate "APM (Advanced Power Management) BIOS support" >> 814 depends on PM >> 815 ---help--- >> 816 APM is a BIOS specification for saving power using several different >> 817 techniques. This is mostly useful for battery powered laptops with >> 818 APM compliant BIOSes. If you say Y here, the system time will be >> 819 reset after a RESUME operation, the /proc/apm device will provide >> 820 battery status information, and user-space programs will receive >> 821 notification of APM "events" (e.g. battery status change). >> 822 >> 823 If you select "Y" here, you can disable actual use of the APM >> 824 BIOS by passing the "apm=off" option to the kernel at boot time. >> 825 >> 826 Note that the APM support is almost completely disabled for >> 827 machines with more than one CPU. >> 828 >> 829 In order to use APM, you will need supporting software. For location >> 830 and more information, read <file:Documentation/pm.txt> and the >> 831 Battery Powered Linux mini-HOWTO, available from >> 832 <http://www.tldp.org/docs.html#howto>. >> 833 >> 834 This driver does not spin down disk drives (see the hdparm(8) >> 835 manpage ("man 8 hdparm") for that), and it doesn't turn off >> 836 VESA-compliant "green" monitors. >> 837 >> 838 This driver does not support the TI 4000M TravelMate and the ACER >> 839 486/DX4/75 because they don't have compliant BIOSes. Many "green" >> 840 desktop machines also don't have compliant BIOSes, and this driver >> 841 may cause those machines to panic during the boot phase. >> 842 >> 843 Generally, if you don't have a battery in your machine, there isn't >> 844 much point in using this driver and you should say N. If you get >> 845 random kernel OOPSes or reboots that don't seem to be related to >> 846 anything, try disabling/enabling this option (or disabling/enabling >> 847 APM in your BIOS). >> 848 >> 849 Some other things you should try when experiencing seemingly random, >> 850 "weird" problems: >> 851 >> 852 1) make sure that you have enough swap space and that it is >> 853 enabled. >> 854 2) pass the "no-hlt" option to the kernel >> 855 3) switch on floating point emulation in the kernel and pass >> 856 the "no387" option to the kernel >> 857 4) pass the "floppy=nodma" option to the kernel >> 858 5) pass the "mem=4M" option to the kernel (thereby disabling >> 859 all but the first 4 MB of RAM) >> 860 6) make sure that the CPU is not over clocked. >> 861 7) read the sig11 FAQ at <http://www.bitwizard.nl/sig11/> >> 862 8) disable the cache from your BIOS settings >> 863 9) install a fan for the video card or exchange video RAM >> 864 10) install a better fan for the CPU >> 865 11) exchange RAM chips >> 866 12) exchange the motherboard. >> 867 >> 868 To compile this driver as a module, choose M here: the >> 869 module will be called apm. >> 870 >> 871 config APM_IGNORE_USER_SUSPEND >> 872 bool "Ignore USER SUSPEND" >> 873 depends on APM >> 874 help >> 875 This option will ignore USER SUSPEND requests. On machines with a >> 876 compliant APM BIOS, you want to say N. However, on the NEC Versa M >> 877 series notebooks, it is necessary to say Y because of a BIOS bug. >> 878 >> 879 config APM_DO_ENABLE >> 880 bool "Enable PM at boot time" >> 881 depends on APM >> 882 ---help--- >> 883 Enable APM features at boot time. From page 36 of the APM BIOS >> 884 specification: "When disabled, the APM BIOS does not automatically >> 885 power manage devices, enter the Standby State, enter the Suspend >> 886 State, or take power saving steps in response to CPU Idle calls." >> 887 This driver will make CPU Idle calls when Linux is idle (unless this >> 888 feature is turned off -- see "Do CPU IDLE calls", below). This >> 889 should always save battery power, but more complicated APM features >> 890 will be dependent on your BIOS implementation. You may need to turn >> 891 this option off if your computer hangs at boot time when using APM >> 892 support, or if it beeps continuously instead of suspending. Turn >> 893 this off if you have a NEC UltraLite Versa 33/C or a Toshiba >> 894 T400CDT. This is off by default since most machines do fine without >> 895 this feature. >> 896 >> 897 config APM_CPU_IDLE >> 898 bool "Make CPU Idle calls when idle" >> 899 depends on APM >> 900 help >> 901 Enable calls to APM CPU Idle/CPU Busy inside the kernel's idle loop. >> 902 On some machines, this can activate improved power savings, such as >> 903 a slowed CPU clock rate, when the machine is idle. These idle calls >> 904 are made after the idle loop has run for some length of time (e.g., >> 905 333 mS). On some machines, this will cause a hang at boot time or >> 906 whenever the CPU becomes idle. (On machines with more than one CPU, >> 907 this option does nothing.) >> 908 >> 909 config APM_DISPLAY_BLANK >> 910 bool "Enable console blanking using APM" >> 911 depends on APM >> 912 help >> 913 Enable console blanking using the APM. Some laptops can use this to >> 914 turn off the LCD backlight when the screen blanker of the Linux >> 915 virtual console blanks the screen. Note that this is only used by >> 916 the virtual console screen blanker, and won't turn off the backlight >> 917 when using the X Window system. This also doesn't have anything to >> 918 do with your VESA-compliant power-saving monitor. Further, this >> 919 option doesn't work for all laptops -- it might not turn off your >> 920 backlight at all, or it might print a lot of errors to the console, >> 921 especially if you are using gpm. >> 922 >> 923 config APM_RTC_IS_GMT >> 924 bool "RTC stores time in GMT" >> 925 depends on APM >> 926 help >> 927 Say Y here if your RTC (Real Time Clock a.k.a. hardware clock) >> 928 stores the time in GMT (Greenwich Mean Time). Say N if your RTC >> 929 stores localtime. >> 930 >> 931 It is in fact recommended to store GMT in your RTC, because then you >> 932 don't have to worry about daylight savings time changes. The only >> 933 reason not to use GMT in your RTC is if you also run a broken OS >> 934 that doesn't understand GMT. >> 935 >> 936 config APM_ALLOW_INTS >> 937 bool "Allow interrupts during APM BIOS calls" >> 938 depends on APM >> 939 help >> 940 Normally we disable external interrupts while we are making calls to >> 941 the APM BIOS as a measure to lessen the effects of a badly behaving >> 942 BIOS implementation. The BIOS should reenable interrupts if it >> 943 needs to. Unfortunately, some BIOSes do not -- especially those in >> 944 many of the newer IBM Thinkpads. If you experience hangs when you >> 945 suspend, try setting this to Y. Otherwise, say N. >> 946 >> 947 config APM_REAL_MODE_POWER_OFF >> 948 bool "Use real mode APM BIOS call to power off" >> 949 depends on APM >> 950 help >> 951 Use real mode APM BIOS calls to switch off the computer. This is >> 952 a work-around for a number of buggy BIOSes. Switch this option on if >> 953 your computer crashes instead of powering off properly. >> 954 >> 955 endmenu >> 956 >> 957 source "arch/i386/kernel/cpu/cpufreq/Kconfig" >> 958 >> 959 endmenu >> 960 >> 961 >> 962 menu "Bus options (PCI, PCMCIA, EISA, MCA, ISA)" >> 963 >> 964 config X86_VISWS_APIC >> 965 bool >> 966 depends on X86_VISWS >> 967 default y >> 968 >> 969 config X86_LOCAL_APIC >> 970 bool >> 971 depends on (X86_VISWS || SMP) && !X86_VOYAGER >> 972 default y >> 973 >> 974 config X86_IO_APIC >> 975 bool >> 976 depends on SMP && !(X86_VISWS || X86_VOYAGER) >> 977 default y >> 978 >> 979 config PCI >> 980 bool "PCI support" if !X86_VISWS >> 981 depends on !X86_VOYAGER >> 982 default y if X86_VISWS 343 help 983 help 344 Say Y here to allow turning CPUs off !! 984 Find out whether you have a PCI motherboard. PCI is the name of a 345 controlled through /sys/devices/syst !! 985 bus system, i.e. the way the CPU talks to the other stuff inside >> 986 your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or >> 987 VESA. If you have PCI, say Y, otherwise N. >> 988 >> 989 The PCI-HOWTO, available from >> 990 <http://www.tldp.org/docs.html#howto>, contains valuable >> 991 information about which PCI hardware does work under Linux and which >> 992 doesn't. >> 993 >> 994 choice >> 995 prompt "PCI access mode" >> 996 depends on PCI && !X86_VISWS >> 997 default PCI_GOANY >> 998 >> 999 config PCI_GOBIOS >> 1000 bool "BIOS" >> 1001 ---help--- >> 1002 On PCI systems, the BIOS can be used to detect the PCI devices and >> 1003 determine their configuration. However, some old PCI motherboards >> 1004 have BIOS bugs and may crash if this is done. Also, some embedded >> 1005 PCI-based systems don't have any BIOS at all. Linux can also try to >> 1006 detect the PCI hardware directly without using the BIOS. >> 1007 >> 1008 With this option, you can specify how Linux should detect the PCI >> 1009 devices. If you choose "BIOS", the BIOS will be used, if you choose >> 1010 "Direct", the BIOS won't be used, and if you choose "Any", the >> 1011 kernel will try the direct access method and falls back to the BIOS >> 1012 if that doesn't work. If unsure, go with the default, which is >> 1013 "Any". >> 1014 >> 1015 config PCI_GODIRECT >> 1016 bool "Direct" >> 1017 >> 1018 config PCI_GOANY >> 1019 bool "Any" >> 1020 >> 1021 endchoice >> 1022 >> 1023 config PCI_BIOS >> 1024 bool >> 1025 depends on !X86_VISWS && PCI && (PCI_GOBIOS || PCI_GOANY) >> 1026 default y 346 1027 347 Say N if you want to disable CPU hot !! 1028 config PCI_DIRECT >> 1029 bool >> 1030 depends on PCI && ((PCI_GODIRECT || PCI_GOANY) || X86_VISWS) >> 1031 default y 348 1032 349 config HAVE_EFFICIENT_UNALIGNED_STRING_OPS !! 1033 source "drivers/pci/Kconfig" 350 bool "Enable EFFICIENT_UNALIGNED_STRIN !! 1034 351 depends on CPU_CK807 || CPU_CK810 || C !! 1035 config ISA >> 1036 bool "ISA support" >> 1037 depends on !(X86_VOYAGER || X86_VISWS) >> 1038 help >> 1039 Find out whether you have ISA slots on your motherboard. ISA is the >> 1040 name of a bus system, i.e. the way the CPU talks to the other stuff >> 1041 inside your box. Other bus systems are PCI, EISA, MicroChannel >> 1042 (MCA) or VESA. ISA is an older system, now being displaced by PCI; >> 1043 newer boards don't support it. If you have ISA, say Y, otherwise N. >> 1044 >> 1045 config EISA >> 1046 bool "EISA support" >> 1047 depends on ISA >> 1048 ---help--- >> 1049 The Extended Industry Standard Architecture (EISA) bus was >> 1050 developed as an open alternative to the IBM MicroChannel bus. >> 1051 >> 1052 The EISA bus provided some of the features of the IBM MicroChannel >> 1053 bus while maintaining backward compatibility with cards made for >> 1054 the older ISA bus. The EISA bus saw limited use between 1988 and >> 1055 1995 when it was made obsolete by the PCI bus. >> 1056 >> 1057 Say Y here if you are building a kernel for an EISA-based machine. >> 1058 >> 1059 Otherwise, say N. >> 1060 >> 1061 source "drivers/eisa/Kconfig" >> 1062 >> 1063 config MCA >> 1064 bool "MCA support" >> 1065 depends on !(X86_VISWS || X86_VOYAGER) 352 help 1066 help 353 Say Y here to enable EFFICIENT_UNALI !! 1067 MicroChannel Architecture is found in some IBM PS/2 machines and 354 deal with unaligned access by hardwa !! 1068 laptops. It is a bus system similar to PCI or ISA. See >> 1069 <file:Documentation/mca.txt> (and especially the web page given >> 1070 there) before attempting to build an MCA bus kernel. >> 1071 >> 1072 config MCA >> 1073 depends on X86_VOYAGER >> 1074 default y if X86_VOYAGER >> 1075 >> 1076 source "drivers/mca/Kconfig" >> 1077 >> 1078 config SCx200 >> 1079 tristate "NatSemi SCx200 support" >> 1080 depends on !X86_VOYAGER >> 1081 help >> 1082 This provides basic support for the National Semiconductor SCx200 >> 1083 processor. Right now this is just a driver for the GPIO pins. >> 1084 >> 1085 If you don't know what to do here, say N. >> 1086 >> 1087 This support is also available as a module. If compiled as a >> 1088 module, it will be called scx200. >> 1089 >> 1090 config HOTPLUG >> 1091 bool "Support for hot-pluggable devices" >> 1092 ---help--- >> 1093 Say Y here if you want to plug devices into your computer while >> 1094 the system is running, and be able to use them quickly. In many >> 1095 cases, the devices can likewise be unplugged at any time too. >> 1096 >> 1097 One well known example of this is PCMCIA- or PC-cards, credit-card >> 1098 size devices such as network cards, modems or hard drives which are >> 1099 plugged into slots found on all modern laptop computers. Another >> 1100 example, used on modern desktops as well as laptops, is USB. >> 1101 >> 1102 Enable HOTPLUG and KMOD, and build a modular kernel. Get agent >> 1103 software (at <http://linux-hotplug.sourceforge.net/>) and install it. >> 1104 Then your kernel will automatically call out to a user mode "policy >> 1105 agent" (/sbin/hotplug) to load modules and set up software needed >> 1106 to use devices as you hotplug them. >> 1107 >> 1108 source "drivers/pcmcia/Kconfig" >> 1109 >> 1110 source "drivers/pci/hotplug/Kconfig" 355 1111 356 endmenu 1112 endmenu 357 1113 358 source "arch/csky/Kconfig.platforms" << 359 1114 360 source "kernel/Kconfig.hz" !! 1115 menu "Executable file formats" >> 1116 >> 1117 source "fs/Kconfig.binfmt" >> 1118 >> 1119 endmenu >> 1120 >> 1121 source "drivers/Kconfig" >> 1122 >> 1123 source "fs/Kconfig" >> 1124 >> 1125 source "arch/i386/oprofile/Kconfig" >> 1126 >> 1127 >> 1128 menu "Kernel hacking" >> 1129 >> 1130 config DEBUG_KERNEL >> 1131 bool "Kernel debugging" >> 1132 help >> 1133 Say Y here if you are developing drivers or trying to debug and >> 1134 identify kernel problems. >> 1135 >> 1136 config DEBUG_STACKOVERFLOW >> 1137 bool "Check for stack overflows" >> 1138 depends on DEBUG_KERNEL >> 1139 >> 1140 config DEBUG_SLAB >> 1141 bool "Debug memory allocations" >> 1142 depends on DEBUG_KERNEL >> 1143 help >> 1144 Say Y here to have the kernel do limited verification on memory >> 1145 allocation as well as poisoning memory on free to catch use of freed >> 1146 memory. >> 1147 >> 1148 config DEBUG_IOVIRT >> 1149 bool "Memory mapped I/O debugging" >> 1150 depends on DEBUG_KERNEL >> 1151 help >> 1152 Say Y here to get warned whenever an attempt is made to do I/O on >> 1153 obviously invalid addresses such as those generated when ioremap() >> 1154 calls are forgotten. Memory mapped I/O will go through an extra >> 1155 check to catch access to unmapped ISA addresses, an access method >> 1156 that can still be used by old drivers that are being ported from >> 1157 2.0/2.2. >> 1158 >> 1159 config MAGIC_SYSRQ >> 1160 bool "Magic SysRq key" >> 1161 depends on DEBUG_KERNEL >> 1162 help >> 1163 If you say Y here, you will have some control over the system even >> 1164 if the system crashes for example during kernel debugging (e.g., you >> 1165 will be able to flush the buffer cache to disk, reboot the system >> 1166 immediately or dump some status information). This is accomplished >> 1167 by pressing various keys while holding SysRq (Alt+PrintScreen). It >> 1168 also works on a serial console (on PC hardware at least), if you >> 1169 send a BREAK and then within 5 seconds a command keypress. The >> 1170 keys are documented in <file:Documentation/sysrq.txt>. Don't say Y >> 1171 unless you really know what this hack does. >> 1172 >> 1173 config DEBUG_SPINLOCK >> 1174 bool "Spinlock debugging" >> 1175 depends on DEBUG_KERNEL >> 1176 help >> 1177 Say Y here and build SMP to catch missing spinlock initialization >> 1178 and certain other kinds of spinlock errors commonly made. This is >> 1179 best used in conjunction with the NMI watchdog so that spinlock >> 1180 deadlocks are also debuggable. >> 1181 >> 1182 config DEBUG_PAGEALLOC >> 1183 bool "Page alloc debugging" >> 1184 depends on DEBUG_KERNEL >> 1185 help >> 1186 Unmap pages from the kernel linear mapping after free_pages(). >> 1187 This results in a large slowdown, but helps to find certain types >> 1188 of memory corruptions. >> 1189 >> 1190 config DEBUG_HIGHMEM >> 1191 bool "Highmem debugging" >> 1192 depends on DEBUG_KERNEL && HIGHMEM >> 1193 help >> 1194 This options enables addition error checking for high memory systems. >> 1195 Disable for production systems. >> 1196 >> 1197 config DEBUG_INFO >> 1198 bool "Compile the kernel with debug info" >> 1199 depends on DEBUG_KERNEL >> 1200 help >> 1201 If you say Y here the resulting kernel image will include >> 1202 debugging info resulting in a larger kernel image. >> 1203 Say Y here only if you plan to use gdb to debug the kernel. >> 1204 If you don't debug the kernel, you can say N. >> 1205 >> 1206 config DEBUG_SPINLOCK_SLEEP >> 1207 bool "Sleep-inside-spinlock checking" >> 1208 help >> 1209 If you say Y here, various routines which may sleep will become very >> 1210 noisy if they are called with a spinlock held. >> 1211 >> 1212 config FRAME_POINTER >> 1213 bool "Compile the kernel with frame pointers" >> 1214 help >> 1215 If you say Y here the resulting kernel image will be slightly larger >> 1216 and slower, but it will give very useful debugging information. >> 1217 If you don't debug the kernel, you can say N, but we may not be able >> 1218 to solve problems without frame pointers. >> 1219 >> 1220 config X86_EXTRA_IRQS >> 1221 bool >> 1222 depends on X86_LOCAL_APIC || X86_VOYAGER >> 1223 default y >> 1224 >> 1225 config X86_FIND_SMP_CONFIG >> 1226 bool >> 1227 depends on X86_LOCAL_APIC || X86_VOYAGER >> 1228 default y >> 1229 >> 1230 config X86_MPPARSE >> 1231 bool >> 1232 depends on X86_LOCAL_APIC && !X86_VISWS >> 1233 default y >> 1234 >> 1235 endmenu >> 1236 >> 1237 source "security/Kconfig" >> 1238 >> 1239 source "crypto/Kconfig" >> 1240 >> 1241 source "lib/Kconfig" >> 1242 >> 1243 config X86_SMP >> 1244 bool >> 1245 depends on SMP && !X86_VOYAGER >> 1246 default y >> 1247 >> 1248 config X86_HT >> 1249 bool >> 1250 depends on SMP && !(X86_VISWS || X86_VOYAGER) >> 1251 default y >> 1252 >> 1253 config X86_BIOS_REBOOT >> 1254 bool >> 1255 depends on !(X86_VISWS || X86_VOYAGER) >> 1256 default y >> 1257 >> 1258 config X86_TRAMPOLINE >> 1259 bool >> 1260 depends on SMP || X86_VISWS >> 1261 default y >> 1262 >> 1263 config PC >> 1264 bool >> 1265 depends on X86 && !EMBEDDED >> 1266 default y
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.