sh: switch sh7724 to clkdev
[linux-2.6-block.git] / arch / sh / Kconfig
CommitLineData
1da177e4
LT
1#
2# For a description of the syntax of this configuration file,
3# see Documentation/kbuild/kconfig-language.txt.
4#
5
6mainmenu "Linux/SuperH Kernel Configuration"
7
8config SUPERH
ea0e1a9a 9 def_bool y
7a440c95 10 select EMBEDDED
9483a578 11 select HAVE_CLK
ec7748b5 12 select HAVE_IDE
c601a51a 13 select HAVE_LMB
42d4b839 14 select HAVE_OPROFILE
9de90ac2 15 select HAVE_GENERIC_DMA_COHERENT
d7b01f78 16 select HAVE_ARCH_TRACEHOOK
f802d969 17 select HAVE_DMA_API_DEBUG
73c926be 18 select HAVE_DMA_ATTRS
cdd6c482 19 select HAVE_PERF_EVENTS
72f0c137 20 select PERF_USE_VMALLOC
df8ce259 21 select HAVE_KERNEL_GZIP
07e88e1b
PM
22 select HAVE_KERNEL_BZIP2
23 select HAVE_KERNEL_LZMA
c7b16efb 24 select HAVE_KERNEL_LZO
a74f7e04 25 select HAVE_SYSCALL_TRACEPOINTS
6eac1af0 26 select RTC_LIB
f01789c6 27 select GENERIC_ATOMIC64
1da177e4
LT
28 help
29 The SuperH is a RISC processor targeted for use in embedded systems
30 and consumer electronics; it was also used in the Sega Dreamcast
31 gaming console. The SuperH port has a home page at
32 <http://www.linux-sh.org/>.
33
39d28a2d 34config SUPERH32
3cc000b5 35 def_bool ARCH = "sh"
d39f5450
CS
36 select HAVE_KPROBES
37 select HAVE_KRETPROBES
6d63e73d 38 select HAVE_IOREMAP_PROT if MMU && !X2TLB
694f94f2 39 select HAVE_FUNCTION_TRACER
fad57feb
MF
40 select HAVE_FTRACE_MCOUNT_RECORD
41 select HAVE_DYNAMIC_FTRACE
c1340c05 42 select HAVE_FUNCTION_TRACE_MCOUNT_TEST
e4b053d9 43 select HAVE_FTRACE_NMI_ENTER if DYNAMIC_FTRACE
327933f5 44 select HAVE_FUNCTION_GRAPH_TRACER
ab6e570b 45 select HAVE_ARCH_KGDB
6fbfe8d7 46 select HAVE_HW_BREAKPOINT
6c0ee6a4 47 select PERF_EVENTS if HAVE_HW_BREAKPOINT
8dafc346 48 select ARCH_HIBERNATION_POSSIBLE if MMU
ea0e1a9a
PM
49
50config SUPERH64
3cc000b5 51 def_bool ARCH = "sh64"
39d28a2d 52
f42b7e3d
PM
53config ARCH_DEFCONFIG
54 string
55 default "arch/sh/configs/shx3_defconfig" if SUPERH32
56 default "arch/sh/configs/cayman_defconfig" if SUPERH64
57
1da177e4 58config RWSEM_GENERIC_SPINLOCK
d7ef4fb3 59 def_bool y
1da177e4
LT
60
61config RWSEM_XCHGADD_ALGORITHM
62 bool
63
fa691511
PM
64config GENERIC_BUG
65 def_bool y
a82d53ec 66 depends on BUG && SUPERH32
fa691511 67
3767f3f1
PM
68config GENERIC_CSUM
69 def_bool y
70 depends on SUPERH64
71
e2268c71 72config GENERIC_FIND_NEXT_BIT
d7ef4fb3 73 def_bool y
e2268c71
AM
74
75config GENERIC_HWEIGHT
d7ef4fb3 76 def_bool y
e2268c71 77
1da177e4 78config GENERIC_HARDIRQS
d7ef4fb3 79 def_bool y
1da177e4 80
5093c9a4
PM
81config GENERIC_HARDIRQS_NO__DO_IRQ
82 def_bool y
83
2eb2a436
PM
84config IRQ_PER_CPU
85 def_bool y
86
4b842c85
PM
87config SPARSE_IRQ
88 def_bool y
89 depends on SUPERH32
90
2967dab1
MD
91config GENERIC_GPIO
92 def_bool n
93
1da177e4 94config GENERIC_CALIBRATE_DELAY
cf204fa7 95 bool
1da177e4 96
cad82448
PM
97config GENERIC_IOMAP
98 bool
99
45882145 100config GENERIC_TIME
75634311 101 def_bool y
45882145 102
57be2b48 103config GENERIC_CLOCKEVENTS
938edae1 104 def_bool y
57be2b48 105
8c24594d
PM
106config GENERIC_CLOCKEVENTS_BROADCAST
107 bool
108
6d134b9e
PM
109config GENERIC_CMOS_UPDATE
110 def_bool y
111 depends on SH_SH03 || SH_DREAMCAST
112
bdcab87b
PM
113config GENERIC_LOCKBREAK
114 def_bool y
115 depends on SMP && PREEMPT
116
357d5946
PM
117config SYS_SUPPORTS_PM
118 bool
af998a9a
MD
119 depends on !SMP
120
121config ARCH_SUSPEND_POSSIBLE
122 def_bool n
123
124config ARCH_HIBERNATION_POSSIBLE
125 def_bool n
357d5946 126
0a9b0db1
PM
127config SYS_SUPPORTS_APM_EMULATION
128 bool
af998a9a 129 select ARCH_SUSPEND_POSSIBLE
357d5946 130
ffb4a73d
PM
131config SYS_SUPPORTS_HUGETLBFS
132 bool
133
357d5946
PM
134config SYS_SUPPORTS_SMP
135 bool
136
137config SYS_SUPPORTS_NUMA
138 bool
139
140config SYS_SUPPORTS_PCI
141 bool
0a9b0db1 142
f5ad881b
PM
143config SYS_SUPPORTS_CMT
144 bool
145
d5ed4c2e
MD
146config SYS_SUPPORTS_MTU2
147 bool
148
9570ef20
MD
149config SYS_SUPPORTS_TMU
150 bool
151
afbfb52e 152config STACKTRACE_SUPPORT
d7ef4fb3 153 def_bool y
afbfb52e
PM
154
155config LOCKDEP_SUPPORT
d7ef4fb3 156 def_bool y
afbfb52e 157
5a89f1ad
PM
158config HAVE_LATENCYTOP_SUPPORT
159 def_bool y
5a89f1ad 160
f0d1b0b3 161config ARCH_HAS_ILOG2_U32
d7ef4fb3 162 def_bool n
f0d1b0b3
DH
163
164config ARCH_HAS_ILOG2_U64
d7ef4fb3 165 def_bool n
f0d1b0b3 166
e257ad06
PM
167config ARCH_NO_VIRT_TO_BUS
168 def_bool y
169
e869a90e
PM
170config ARCH_HAS_DEFAULT_IDLE
171 def_bool y
172
2e046b94
PM
173config ARCH_HAS_CPU_IDLE_WAIT
174 def_bool y
175
e7cc9a73
MD
176config IO_TRAPPED
177 bool
178
01be5d63
PM
179config DMA_COHERENT
180 bool
181
182config DMA_NONCOHERENT
183 def_bool !DMA_COHERENT
184
5cabbb62
FT
185config NEED_DMA_MAP_STATE
186 def_bool DMA_NONCOHERENT
187
1da177e4
LT
188source "init/Kconfig"
189
dc52ddc0
MH
190source "kernel/Kconfig.freezer"
191
1da177e4
LT
192menu "System type"
193
b5f42db0
PM
194#
195# Processor families
196#
197config CPU_SH2
198 bool
199
200config CPU_SH2A
201 bool
202 select CPU_SH2
203
204config CPU_SH3
205 bool
206 select CPU_HAS_INTEVT
207 select CPU_HAS_SR_RB
4fa48e17 208 select SYS_SUPPORTS_TMU
b5f42db0
PM
209
210config CPU_SH4
211 bool
212 select CPU_HAS_INTEVT
213 select CPU_HAS_SR_RB
b5f42db0 214 select CPU_HAS_FPU if !CPU_SH4AL_DSP
4fa48e17 215 select SYS_SUPPORTS_TMU
ffb4a73d 216 select SYS_SUPPORTS_HUGETLBFS if MMU
b5f42db0
PM
217
218config CPU_SH4A
219 bool
220 select CPU_SH4
221
222config CPU_SH4AL_DSP
223 bool
224 select CPU_SH4A
225 select CPU_HAS_DSP
226
ea0e1a9a
PM
227config CPU_SH5
228 bool
229 select CPU_HAS_FPU
add47067 230 select SYS_SUPPORTS_TMU
ffb4a73d 231 select SYS_SUPPORTS_HUGETLBFS if MMU
ea0e1a9a 232
b5f42db0
PM
233config CPU_SHX2
234 bool
235
236config CPU_SHX3
237 bool
01be5d63 238 select DMA_COHERENT
b5f42db0 239
dc65a977
PM
240config ARCH_SHMOBILE
241 bool
77594912 242 select ARCH_SUSPEND_POSSIBLE
ac2c596b
MD
243 select PM
244 select PM_RUNTIME
dc65a977 245
3cc000b5
PM
246if SUPERH32
247
b5f42db0
PM
248choice
249 prompt "Processor sub-type selection"
250
251#
252# Processor subtypes
253#
254
255# SH-2 Processor Support
256
257config CPU_SUBTYPE_SH7619
258 bool "Support SH7619 processor"
259 select CPU_SH2
f5ad881b 260 select SYS_SUPPORTS_CMT
b5f42db0
PM
261
262# SH-2A Processor Support
263
2825999e
PG
264config CPU_SUBTYPE_SH7201
265 bool "Support SH7201 processor"
266 select CPU_SH2A
267 select CPU_HAS_FPU
da107c6e 268 select SYS_SUPPORTS_MTU2
2825999e 269
6d01f510
PM
270config CPU_SUBTYPE_SH7203
271 bool "Support SH7203 processor"
272 select CPU_SH2A
74d99a5e 273 select CPU_HAS_FPU
f5ad881b 274 select SYS_SUPPORTS_CMT
da107c6e 275 select SYS_SUPPORTS_MTU2
6d01f510 276
b5f42db0
PM
277config CPU_SUBTYPE_SH7206
278 bool "Support SH7206 processor"
279 select CPU_SH2A
f5ad881b 280 select SYS_SUPPORTS_CMT
da107c6e 281 select SYS_SUPPORTS_MTU2
b5f42db0 282
a8f67f4b
PM
283config CPU_SUBTYPE_SH7263
284 bool "Support SH7263 processor"
285 select CPU_SH2A
74d99a5e 286 select CPU_HAS_FPU
f5ad881b 287 select SYS_SUPPORTS_CMT
da107c6e 288 select SYS_SUPPORTS_MTU2
a8f67f4b 289
2ad69908
PM
290config CPU_SUBTYPE_MXG
291 bool "Support MX-G processor"
292 select CPU_SH2A
da107c6e 293 select SYS_SUPPORTS_MTU2
2ad69908
PM
294 help
295 Select MX-G if running on an R8A03022BG part.
296
b5f42db0
PM
297# SH-3 Processor Support
298
299config CPU_SUBTYPE_SH7705
300 bool "Support SH7705 processor"
301 select CPU_SH3
302
303config CPU_SUBTYPE_SH7706
304 bool "Support SH7706 processor"
305 select CPU_SH3
306 help
307 Select SH7706 if you have a 133 Mhz SH-3 HD6417706 CPU.
308
309config CPU_SUBTYPE_SH7707
310 bool "Support SH7707 processor"
311 select CPU_SH3
312 help
313 Select SH7707 if you have a 60 Mhz SH-3 HD6417707 CPU.
314
315config CPU_SUBTYPE_SH7708
316 bool "Support SH7708 processor"
317 select CPU_SH3
318 help
319 Select SH7708 if you have a 60 Mhz SH-3 HD6417708S or
320 if you have a 100 Mhz SH-3 HD6417708R CPU.
321
322config CPU_SUBTYPE_SH7709
323 bool "Support SH7709 processor"
324 select CPU_SH3
325 help
326 Select SH7709 if you have a 80 Mhz SH-3 HD6417709 CPU.
327
328config CPU_SUBTYPE_SH7710
329 bool "Support SH7710 processor"
330 select CPU_SH3
331 select CPU_HAS_DSP
332 help
333 Select SH7710 if you have a SH3-DSP SH7710 CPU.
334
335config CPU_SUBTYPE_SH7712
336 bool "Support SH7712 processor"
337 select CPU_SH3
338 select CPU_HAS_DSP
339 help
340 Select SH7712 if you have a SH3-DSP SH7712 CPU.
341
342config CPU_SUBTYPE_SH7720
343 bool "Support SH7720 processor"
344 select CPU_SH3
345 select CPU_HAS_DSP
2b23a882 346 select SYS_SUPPORTS_CMT
b5f42db0
PM
347 help
348 Select SH7720 if you have a SH3-DSP SH7720 CPU.
349
31a49c4b
YS
350config CPU_SUBTYPE_SH7721
351 bool "Support SH7721 processor"
352 select CPU_SH3
353 select CPU_HAS_DSP
2b23a882 354 select SYS_SUPPORTS_CMT
31a49c4b
YS
355 help
356 Select SH7721 if you have a SH3-DSP SH7721 CPU.
357
b5f42db0
PM
358# SH-4 Processor Support
359
360config CPU_SUBTYPE_SH7750
361 bool "Support SH7750 processor"
362 select CPU_SH4
363 help
364 Select SH7750 if you have a 200 Mhz SH-4 HD6417750 CPU.
365
366config CPU_SUBTYPE_SH7091
367 bool "Support SH7091 processor"
368 select CPU_SH4
369 help
370 Select SH7091 if you have an SH-4 based Sega device (such as
371 the Dreamcast, Naomi, and Naomi 2).
372
373config CPU_SUBTYPE_SH7750R
374 bool "Support SH7750R processor"
375 select CPU_SH4
376
377config CPU_SUBTYPE_SH7750S
378 bool "Support SH7750S processor"
379 select CPU_SH4
380
381config CPU_SUBTYPE_SH7751
382 bool "Support SH7751 processor"
383 select CPU_SH4
384 help
385 Select SH7751 if you have a 166 Mhz SH-4 HD6417751 CPU,
386 or if you have a HD6417751R CPU.
387
388config CPU_SUBTYPE_SH7751R
389 bool "Support SH7751R processor"
390 select CPU_SH4
391
392config CPU_SUBTYPE_SH7760
393 bool "Support SH7760 processor"
394 select CPU_SH4
395
396config CPU_SUBTYPE_SH4_202
397 bool "Support SH4-202 processor"
398 select CPU_SH4
399
400# SH-4A Processor Support
401
178dd0cd
PM
402config CPU_SUBTYPE_SH7723
403 bool "Support SH7723 processor"
404 select CPU_SH4A
405 select CPU_SHX2
dc65a977 406 select ARCH_SHMOBILE
178dd0cd 407 select ARCH_SPARSEMEM_ENABLE
f5ad881b 408 select SYS_SUPPORTS_CMT
178dd0cd
PM
409 help
410 Select SH7723 if you have an SH-MobileR2 CPU.
411
0207a2ef
KM
412config CPU_SUBTYPE_SH7724
413 bool "Support SH7724 processor"
414 select CPU_SH4A
415 select CPU_SHX2
59fe700d 416 select ARCH_SHMOBILE
0207a2ef
KM
417 select ARCH_SPARSEMEM_ENABLE
418 select SYS_SUPPORTS_CMT
419 help
420 Select SH7724 if you have an SH-MobileR2R CPU.
421
c01f0f1a
YS
422config CPU_SUBTYPE_SH7757
423 bool "Support SH7757 processor"
424 select CPU_SH4A
425 select CPU_SHX2
426 help
427 Select SH7757 if you have a SH4A SH7757 CPU.
428
7d740a06
YS
429config CPU_SUBTYPE_SH7763
430 bool "Support SH7763 processor"
431 select CPU_SH4A
432 help
433 Select SH7763 if you have a SH4A SH7763(R5S77631) CPU.
434
b5f42db0
PM
435config CPU_SUBTYPE_SH7770
436 bool "Support SH7770 processor"
437 select CPU_SH4A
438
439config CPU_SUBTYPE_SH7780
440 bool "Support SH7780 processor"
441 select CPU_SH4A
442
443config CPU_SUBTYPE_SH7785
444 bool "Support SH7785 processor"
445 select CPU_SH4A
446 select CPU_SHX2
55ba99eb
KM
447 select ARCH_SPARSEMEM_ENABLE
448 select SYS_SUPPORTS_NUMA
449
450config CPU_SUBTYPE_SH7786
451 bool "Support SH7786 processor"
452 select CPU_SH4A
37042fbd 453 select CPU_SHX3
8263a67e 454 select CPU_HAS_PTEAEX
b5f42db0
PM
455 select ARCH_SPARSEMEM_ENABLE
456 select SYS_SUPPORTS_NUMA
2eb2a436
PM
457 select SYS_SUPPORTS_SMP
458 select GENERIC_CLOCKEVENTS_BROADCAST if SMP
b5f42db0
PM
459
460config CPU_SUBTYPE_SHX3
461 bool "Support SH-X3 processor"
462 select CPU_SH4A
463 select CPU_SHX3
464 select ARCH_SPARSEMEM_ENABLE
465 select SYS_SUPPORTS_NUMA
466 select SYS_SUPPORTS_SMP
5840263e 467 select GENERIC_CLOCKEVENTS_BROADCAST if SMP
b5f42db0
PM
468
469# SH4AL-DSP Processor Support
470
471config CPU_SUBTYPE_SH7343
472 bool "Support SH7343 processor"
473 select CPU_SH4AL_DSP
dc65a977 474 select ARCH_SHMOBILE
f5ad881b 475 select SYS_SUPPORTS_CMT
b5f42db0
PM
476
477config CPU_SUBTYPE_SH7722
478 bool "Support SH7722 processor"
479 select CPU_SH4AL_DSP
480 select CPU_SHX2
dc65a977 481 select ARCH_SHMOBILE
b5f42db0
PM
482 select ARCH_SPARSEMEM_ENABLE
483 select SYS_SUPPORTS_NUMA
f5ad881b 484 select SYS_SUPPORTS_CMT
9109a30e
MD
485
486config CPU_SUBTYPE_SH7366
487 bool "Support SH7366 processor"
488 select CPU_SH4AL_DSP
489 select CPU_SHX2
dc65a977 490 select ARCH_SHMOBILE
9109a30e
MD
491 select ARCH_SPARSEMEM_ENABLE
492 select SYS_SUPPORTS_NUMA
f5ad881b 493 select SYS_SUPPORTS_CMT
b5f42db0 494
3cc000b5
PM
495endchoice
496
497endif
498
499if SUPERH64
500
501choice
502 prompt "Processor sub-type selection"
503
ea0e1a9a
PM
504# SH-5 Processor Support
505
506config CPU_SUBTYPE_SH5_101
507 bool "Support SH5-101 processor"
508 select CPU_SH5
509
510config CPU_SUBTYPE_SH5_103
511 bool "Support SH5-103 processor"
8ef97dd7 512 select CPU_SH5
ea0e1a9a 513
b5f42db0
PM
514endchoice
515
3cc000b5
PM
516endif
517
f3d22298 518source "arch/sh/mm/Kconfig"
939a24a6 519
4690bdc7 520source "arch/sh/Kconfig.cpu"
f3d22298 521
939a24a6 522source "arch/sh/boards/Kconfig"
32351a28 523
32351a28
PM
524menu "Timer and clock configuration"
525
9570ef20
MD
526config SH_TIMER_TMU
527 bool "TMU timer driver"
f19900b2 528 depends on SYS_SUPPORTS_TMU
9570ef20 529 default y
9570ef20
MD
530 help
531 This enables the build of the TMU timer driver.
532
f5ad881b 533config SH_TIMER_CMT
f425752f
MD
534 bool "CMT timer driver"
535 depends on SYS_SUPPORTS_CMT
536 default y
f425752f
MD
537 help
538 This enables build of the CMT timer driver.
f5ad881b 539
d5ed4c2e
MD
540config SH_TIMER_MTU2
541 bool "MTU2 timer driver"
3280c886 542 depends on SYS_SUPPORTS_MTU2
d5ed4c2e 543 default y
d5ed4c2e
MD
544 help
545 This enables build of the MTU2 timer driver.
546
cad82448
PM
547config SH_PCLK_FREQ
548 int "Peripheral clock frequency (in Hz)"
8152a74b 549 depends on SH_CLK_CPG_LEGACY
9d4436a6 550 default "31250000" if CPU_SUBTYPE_SH7619
8152a74b
PM
551 default "33333333" if CPU_SUBTYPE_SH7770 || \
552 CPU_SUBTYPE_SH7760 || \
553 CPU_SUBTYPE_SH7705 || \
554 CPU_SUBTYPE_SH7203 || \
555 CPU_SUBTYPE_SH7206 || \
556 CPU_SUBTYPE_SH7263 || \
43a1839c 557 CPU_SUBTYPE_MXG
05627486 558 default "60000000" if CPU_SUBTYPE_SH7751 || CPU_SUBTYPE_SH7751R
cad82448 559 default "66000000" if CPU_SUBTYPE_SH4_202
05627486 560 default "50000000"
1da177e4 561 help
cad82448
PM
562 This option is used to specify the peripheral clock frequency.
563 This is necessary for determining the reference clock value on
564 platforms lacking an RTC.
1da177e4 565
36aa1e32
PM
566config SH_CLK_CPG
567 def_bool y
568
253b0887 569config SH_CLK_CPG_LEGACY
36aa1e32 570 depends on SH_CLK_CPG
43a1839c
PM
571 def_bool y if !CPU_SUBTYPE_SH7785 && !ARCH_SHMOBILE && \
572 !CPU_SUBTYPE_SH7786
253b0887 573
9d4436a6
YS
574config SH_CLK_MD
575 int "CPU Mode Pin Setting"
6d01f510 576 depends on CPU_SH2
357d5946
PM
577 default 6 if CPU_SUBTYPE_SH7206
578 default 5 if CPU_SUBTYPE_SH7619
579 default 0
9d4436a6 580 help
11cbb70e 581 MD2 - MD0 pin setting.
9d4436a6 582
57be2b48
PM
583source "kernel/time/Kconfig"
584
32351a28
PM
585endmenu
586
cad82448
PM
587menu "CPU Frequency scaling"
588
589source "drivers/cpufreq/Kconfig"
1da177e4 590
cad82448
PM
591config SH_CPU_FREQ
592 tristate "SuperH CPU Frequency driver"
cb5ec75b 593 depends on CPU_FREQ
cad82448 594 select CPU_FREQ_TABLE
1da177e4 595 help
8a655053
PM
596 This adds the cpufreq driver for SuperH. Any CPU that supports
597 clock rate rounding through the clock framework can use this
598 driver. While it will make the kernel slightly larger, this is
599 harmless for CPUs that don't support rate rounding. The driver
600 will also generate a notice in the boot log before disabling
601 itself if the CPU in question is not capable of rate rounding.
1da177e4 602
cad82448 603 For details, take a look at <file:Documentation/cpu-freq>.
1da177e4
LT
604
605 If unsure, say N.
606
cad82448
PM
607endmenu
608
9f5e8eee
PM
609source "arch/sh/drivers/Kconfig"
610
cad82448 611endmenu
1da177e4 612
cad82448
PM
613menu "Kernel features"
614
91b91d01
PM
615source kernel/Kconfig.hz
616
cad82448
PM
617config KEXEC
618 bool "kexec system call (EXPERIMENTAL)"
f36b59d1 619 depends on SUPERH32 && EXPERIMENTAL && MMU
1da177e4 620 help
cad82448
PM
621 kexec is a system call that implements the ability to shutdown your
622 current kernel, and to start another kernel. It is like a reboot
1f1332f7 623 but it is independent of the system firmware. And like a reboot
cad82448
PM
624 you can start any kernel with it, not just Linux.
625
1f1332f7 626 The name comes from the similarity to the exec system call.
cad82448
PM
627
628 It is an ongoing process to be certain the hardware in a machine
629 is properly shutdown, so do not be surprised if this code does not
630 initially work for you. It may help to enable device hotplugging
631 support. As of this writing the exact hardware interface is
632 strongly in flux, so no good recommendation can be made.
633
4d5ade5b
PM
634config CRASH_DUMP
635 bool "kernel crash dumps (EXPERIMENTAL)"
640f7487 636 depends on SUPERH32 && EXPERIMENTAL
4d5ade5b
PM
637 help
638 Generate crash dump after being started by kexec.
639 This should be normally only set in special crash dump kernels
640 which are loaded in the main kernel with kexec-tools into
641 a specially reserved region and then later executed after
642 a crash by kdump/kexec. The crash dump kernel must be compiled
643 to a memory address not used by the main kernel using
644 MEMORY_START.
645
646 For more details see Documentation/kdump/kdump.txt
647
b7cf6ddc
MD
648config KEXEC_JUMP
649 bool "kexec jump (EXPERIMENTAL)"
650 depends on SUPERH32 && KEXEC && HIBERNATION && EXPERIMENTAL
651 help
652 Jump between original kernel and kexeced kernel and invoke
653 code via KEXEC
654
c4637d47
PM
655config SECCOMP
656 bool "Enable seccomp to safely compute untrusted bytecode"
657 depends on PROC_FS
c4637d47
PM
658 help
659 This kernel feature is useful for number crunching applications
660 that may need to compute untrusted bytecode during their
661 execution. By using pipes or other transports made available to
662 the process as file descriptors supporting the read/write
663 syscalls, it's possible to isolate those applications in
664 their own address space using seccomp. Once seccomp is
665 enabled via prctl, it cannot be disabled and the task is only
666 allowed to execute a few safe syscalls defined by each seccomp
667 mode.
668
669 If unsure, say N.
670
1da177e4
LT
671config SMP
672 bool "Symmetric multi-processing support"
357d5946 673 depends on SYS_SUPPORTS_SMP
490f5de5 674 select USE_GENERIC_SMP_HELPERS
1da177e4
LT
675 ---help---
676 This enables support for systems with more than one CPU. If you have
677 a system with only one CPU, like most personal computers, say N. If
678 you have a system with more than one CPU, say Y.
679
680 If you say N here, the kernel will run on single and multiprocessor
681 machines, but will use only one CPU of a multiprocessor machine. If
682 you say Y here, the kernel will run on many, but not all,
683 singleprocessor machines. On a singleprocessor machine, the kernel
684 will run faster if you say N here.
685
686 People using multiprocessor machines who say Y here should also say
687 Y to "Enhanced Real Time Clock Support", below.
688
03502faa
AB
689 See also <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO
690 available at <http://www.tldp.org/docs.html#howto>.
1da177e4
LT
691
692 If you don't know what to do here, say N.
693
694config NR_CPUS
695 int "Maximum number of CPUs (2-32)"
696 range 2 32
697 depends on SMP
2eb2a436 698 default "4" if CPU_SUBTYPE_SHX3
1da177e4
LT
699 default "2"
700 help
701 This allows you to specify the maximum number of CPUs which this
702 kernel will support. The maximum supported value is 32 and the
703 minimum value which makes sense is 2.
704
705 This is purely to save memory - each supported CPU adds
706 approximately eight kilobytes to the kernel image.
707
763142d1
PM
708config HOTPLUG_CPU
709 bool "Support for hot-pluggable CPUs (EXPERIMENTAL)"
710 depends on SMP && HOTPLUG && EXPERIMENTAL
711 help
712 Say Y here to experiment with turning CPUs off and on. CPUs
713 can be controlled through /sys/devices/system/cpu.
714
91b91d01
PM
715source "kernel/Kconfig.preempt"
716
83662461
PM
717config GUSA
718 def_bool y
1efe4ce3 719 depends on !SMP && SUPERH32
83662461
PM
720 help
721 This enables support for gUSA (general UserSpace Atomicity).
722 This is the default implementation for both UP and non-ll/sc
723 CPUs, and is used by the libc, amongst others.
724
725 For additional information, design information can be found
726 in <http://lc.linux.or.jp/lc2002/papers/niibe0919p.pdf>.
727
728 This should only be disabled for special cases where alternate
729 atomicity implementations exist.
730
1efe4ce3
SM
731config GUSA_RB
732 bool "Implement atomic operations by roll-back (gRB) (EXPERIMENTAL)"
733 depends on GUSA && CPU_SH3 || (CPU_SH4 && !CPU_SH4A)
734 help
735 Enabling this option will allow the kernel to implement some
692105b8 736 atomic operations using a software implementation of load-locked/
1efe4ce3
SM
737 store-conditional (LLSC). On machines which do not have hardware
738 LLSC, this should be more efficient than the other alternative of
692105b8 739 disabling interrupts around the atomic sequence.
1efe4ce3 740
43b8774d
PM
741source "drivers/sh/Kconfig"
742
cad82448 743endmenu
1da177e4 744
cad82448 745menu "Boot options"
1da177e4 746
cad82448 747config ZERO_PAGE_OFFSET
b412a49a
PM
748 hex
749 default "0x00010000" if PAGE_SIZE_64KB || SH_RTS7751R2D || \
750 SH_7751_SOLUTION_ENGINE
751 default "0x00004000" if PAGE_SIZE_16KB || SH_SH03
7a847f81 752 default "0x00002000" if PAGE_SIZE_8KB
cad82448 753 default "0x00001000"
1da177e4 754 help
cad82448 755 This sets the default offset of zero page.
1da177e4 756
cad82448 757config BOOT_LINK_OFFSET
b412a49a
PM
758 hex
759 default "0x00210000" if SH_SHMIN
a2e76c80 760 default "0x00400000" if SH_CAYMAN
b412a49a
PM
761 default "0x00810000" if SH_7780_SOLUTION_ENGINE
762 default "0x009e0000" if SH_TITAN
763 default "0x01800000" if SH_SDK7780
764 default "0x02000000" if SH_EDOSK7760
cad82448
PM
765 default "0x00800000"
766 help
767 This option allows you to set the link address offset of the zImage.
768 This can be useful if you are on a board which has a small amount of
769 memory.
1da177e4 770
b412a49a
PM
771config ENTRY_OFFSET
772 hex
773 default "0x00001000" if PAGE_SIZE_4KB
774 default "0x00002000" if PAGE_SIZE_8KB
775 default "0x00004000" if PAGE_SIZE_16KB
776 default "0x00010000" if PAGE_SIZE_64KB
777 default "0x00000000"
778
d724a9c9
PM
779choice
780 prompt "Kernel command line"
781 optional
782 default CMDLINE_OVERWRITE
783 help
784 Setting this option allows the kernel command line arguments
785 to be set.
786
787config CMDLINE_OVERWRITE
788 bool "Overwrite bootloader kernel arguments"
789 help
790 Given string will overwrite any arguments passed in by
791 a bootloader.
792
793config CMDLINE_EXTEND
794 bool "Extend bootloader kernel arguments"
795 help
796 Given string will be concatenated with arguments passed in
797 by a bootloader.
798
799endchoice
1da177e4 800
cad82448 801config CMDLINE
d724a9c9
PM
802 string "Kernel command line arguments string"
803 depends on CMDLINE_OVERWRITE || CMDLINE_EXTEND
cad82448 804 default "console=ttySC1,115200"
1da177e4
LT
805
806endmenu
807
cad82448 808menu "Bus options"
1da177e4 809
cad82448
PM
810config SUPERHYWAY
811 tristate "SuperHyway Bus support"
812 depends on CPU_SUBTYPE_SH4_202
1da177e4 813
17be2d2b 814config MAPLE
e16038ab
PM
815 bool "Maple Bus support"
816 depends on SH_DREAMCAST
817 help
818 The Maple Bus is SEGA's serial communication bus for peripherals
819 on the Dreamcast. Without this bus support you won't be able to
820 get your Dreamcast keyboard etc to work, so most users
821 probably want to say 'Y' here, unless you are only using the
822 Dreamcast with a serial line terminal or a remote network
823 connection.
17be2d2b 824
7693465d
PM
825config PCI
826 bool "PCI support"
827 depends on SYS_SUPPORTS_PCI
320e68da 828 select PCI_DOMAINS
7693465d
PM
829 help
830 Find out whether you have a PCI motherboard. PCI is the name of a
831 bus system, i.e. the way the CPU talks to the other stuff inside
832 your box. If you have PCI, say Y, otherwise N.
1da177e4 833
320e68da
PM
834config PCI_DOMAINS
835 bool
836
e16038ab
PM
837source "drivers/pci/pcie/Kconfig"
838
1da177e4
LT
839source "drivers/pci/Kconfig"
840
841source "drivers/pcmcia/Kconfig"
842
843source "drivers/pci/hotplug/Kconfig"
844
845endmenu
846
847menu "Executable file formats"
848
849source "fs/Kconfig.binfmt"
850
851endmenu
852
3aa770e7 853menu "Power management options (EXPERIMENTAL)"
af998a9a 854depends on EXPERIMENTAL
f4cb5700 855
c6f17cb2
MD
856source "kernel/power/Kconfig"
857
858source "drivers/cpuidle/Kconfig"
3aa770e7 859
3aa770e7
AS
860endmenu
861
d5950b43
SR
862source "net/Kconfig"
863
1da177e4
LT
864source "drivers/Kconfig"
865
866source "fs/Kconfig"
867
1da177e4
LT
868source "arch/sh/Kconfig.debug"
869
870source "security/Kconfig"
871
872source "crypto/Kconfig"
873
5f737b39
MD
874menuconfig VIRTUALIZATION
875 bool "Virtualization"
876 default n
877 ---help---
878 Say Y here to get to see options for using your Linux host to run other
879 operating systems inside virtual machines (guests).
880 This option alone does not add any kernel code.
881
882 If you say N, all options in this submenu will be skipped and disabled.
883
884if VIRTUALIZATION
885
886source drivers/virtio/Kconfig
887
888endif # VIRTUALIZATION
889
1da177e4 890source "lib/Kconfig"