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