ARM: 6483/1: arm & sh: factorised duplicated clkdev.c
[linux-2.6-block.git] / arch / sh / Kconfig
CommitLineData
1da177e4 1config SUPERH
ea0e1a9a 2 def_bool y
7a440c95 3 select EMBEDDED
6d803ba7 4 select CLKDEV_LOOKUP
86e4dd5a 5 select HAVE_IDE if HAS_IOPORT
95f72d1e 6 select HAVE_MEMBLOCK
42d4b839 7 select HAVE_OPROFILE
9de90ac2 8 select HAVE_GENERIC_DMA_COHERENT
d7b01f78 9 select HAVE_ARCH_TRACEHOOK
f802d969 10 select HAVE_DMA_API_DEBUG
73c926be 11 select HAVE_DMA_ATTRS
e360adbe 12 select HAVE_IRQ_WORK
cdd6c482 13 select HAVE_PERF_EVENTS
72f0c137 14 select PERF_USE_VMALLOC
df8ce259 15 select HAVE_KERNEL_GZIP
07e88e1b
PM
16 select HAVE_KERNEL_BZIP2
17 select HAVE_KERNEL_LZMA
c7b16efb 18 select HAVE_KERNEL_LZO
a74f7e04 19 select HAVE_SYSCALL_TRACEPOINTS
eaaaeef3 20 select HAVE_REGS_AND_STACK_ACCESS_API
57b81330
PM
21 select HAVE_GENERIC_HARDIRQS
22 select HAVE_SPARSE_IRQ
6eac1af0 23 select RTC_LIB
f01789c6 24 select GENERIC_ATOMIC64
1e5cefd0 25 select GENERIC_HARDIRQS_NO_DEPRECATED
1da177e4
LT
26 help
27 The SuperH is a RISC processor targeted for use in embedded systems
28 and consumer electronics; it was also used in the Sega Dreamcast
29 gaming console. The SuperH port has a home page at
30 <http://www.linux-sh.org/>.
31
39d28a2d 32config SUPERH32
3cc000b5 33 def_bool ARCH = "sh"
d39f5450
CS
34 select HAVE_KPROBES
35 select HAVE_KRETPROBES
6d63e73d 36 select HAVE_IOREMAP_PROT if MMU && !X2TLB
694f94f2 37 select HAVE_FUNCTION_TRACER
fad57feb
MF
38 select HAVE_FTRACE_MCOUNT_RECORD
39 select HAVE_DYNAMIC_FTRACE
c1340c05 40 select HAVE_FUNCTION_TRACE_MCOUNT_TEST
e4b053d9 41 select HAVE_FTRACE_NMI_ENTER if DYNAMIC_FTRACE
327933f5 42 select HAVE_FUNCTION_GRAPH_TRACER
ab6e570b 43 select HAVE_ARCH_KGDB
6fbfe8d7 44 select HAVE_HW_BREAKPOINT
0102752e 45 select HAVE_MIXED_BREAKPOINTS_REGS
e583d6b3 46 select PERF_EVENTS
8dafc346 47 select ARCH_HIBERNATION_POSSIBLE if MMU
57b81330 48 select SPARSE_IRQ
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
2eb2a436
PM
78config IRQ_PER_CPU
79 def_bool y
80
2967dab1
MD
81config GENERIC_GPIO
82 def_bool n
83
1da177e4 84config GENERIC_CALIBRATE_DELAY
cf204fa7 85 bool
1da177e4 86
cad82448
PM
87config GENERIC_IOMAP
88 bool
89
57be2b48 90config GENERIC_CLOCKEVENTS
938edae1 91 def_bool y
57be2b48 92
8c24594d
PM
93config GENERIC_CLOCKEVENTS_BROADCAST
94 bool
95
6d134b9e
PM
96config GENERIC_CMOS_UPDATE
97 def_bool y
98 depends on SH_SH03 || SH_DREAMCAST
99
bdcab87b
PM
100config GENERIC_LOCKBREAK
101 def_bool y
102 depends on SMP && PREEMPT
103
357d5946
PM
104config SYS_SUPPORTS_PM
105 bool
af998a9a
MD
106 depends on !SMP
107
108config ARCH_SUSPEND_POSSIBLE
109 def_bool n
110
111config ARCH_HIBERNATION_POSSIBLE
112 def_bool n
357d5946 113
0a9b0db1
PM
114config SYS_SUPPORTS_APM_EMULATION
115 bool
af998a9a 116 select ARCH_SUSPEND_POSSIBLE
357d5946 117
ffb4a73d
PM
118config SYS_SUPPORTS_HUGETLBFS
119 bool
120
357d5946
PM
121config SYS_SUPPORTS_SMP
122 bool
123
124config SYS_SUPPORTS_NUMA
125 bool
126
127config SYS_SUPPORTS_PCI
128 bool
0a9b0db1 129
f5ad881b
PM
130config SYS_SUPPORTS_CMT
131 bool
132
d5ed4c2e
MD
133config SYS_SUPPORTS_MTU2
134 bool
135
9570ef20
MD
136config SYS_SUPPORTS_TMU
137 bool
138
afbfb52e 139config STACKTRACE_SUPPORT
d7ef4fb3 140 def_bool y
afbfb52e
PM
141
142config LOCKDEP_SUPPORT
d7ef4fb3 143 def_bool y
afbfb52e 144
5a89f1ad
PM
145config HAVE_LATENCYTOP_SUPPORT
146 def_bool y
5a89f1ad 147
f0d1b0b3 148config ARCH_HAS_ILOG2_U32
d7ef4fb3 149 def_bool n
f0d1b0b3
DH
150
151config ARCH_HAS_ILOG2_U64
d7ef4fb3 152 def_bool n
f0d1b0b3 153
e257ad06
PM
154config ARCH_NO_VIRT_TO_BUS
155 def_bool y
156
e869a90e
PM
157config ARCH_HAS_DEFAULT_IDLE
158 def_bool y
159
2e046b94
PM
160config ARCH_HAS_CPU_IDLE_WAIT
161 def_bool y
162
86e4dd5a
PM
163config NO_IOPORT
164 bool
165
e7cc9a73
MD
166config IO_TRAPPED
167 bool
168
01be5d63
PM
169config DMA_COHERENT
170 bool
171
172config DMA_NONCOHERENT
173 def_bool !DMA_COHERENT
174
5cabbb62
FT
175config NEED_DMA_MAP_STATE
176 def_bool DMA_NONCOHERENT
177
18e98307
FT
178config NEED_SG_DMA_LENGTH
179 def_bool y
180
1da177e4
LT
181source "init/Kconfig"
182
dc52ddc0
MH
183source "kernel/Kconfig.freezer"
184
1da177e4
LT
185menu "System type"
186
b5f42db0
PM
187#
188# Processor families
189#
190config CPU_SH2
191 bool
192
193config CPU_SH2A
194 bool
195 select CPU_SH2
196
197config CPU_SH3
198 bool
199 select CPU_HAS_INTEVT
200 select CPU_HAS_SR_RB
4fa48e17 201 select SYS_SUPPORTS_TMU
b5f42db0
PM
202
203config CPU_SH4
204 bool
205 select CPU_HAS_INTEVT
206 select CPU_HAS_SR_RB
b5f42db0 207 select CPU_HAS_FPU if !CPU_SH4AL_DSP
4fa48e17 208 select SYS_SUPPORTS_TMU
ffb4a73d 209 select SYS_SUPPORTS_HUGETLBFS if MMU
b5f42db0
PM
210
211config CPU_SH4A
212 bool
213 select CPU_SH4
214
215config CPU_SH4AL_DSP
216 bool
217 select CPU_SH4A
218 select CPU_HAS_DSP
219
ea0e1a9a
PM
220config CPU_SH5
221 bool
222 select CPU_HAS_FPU
add47067 223 select SYS_SUPPORTS_TMU
ffb4a73d 224 select SYS_SUPPORTS_HUGETLBFS if MMU
ea0e1a9a 225
b5f42db0
PM
226config CPU_SHX2
227 bool
228
229config CPU_SHX3
230 bool
01be5d63 231 select DMA_COHERENT
4b478ee2
PM
232 select SYS_SUPPORTS_SMP
233 select SYS_SUPPORTS_NUMA
b5f42db0 234
dc65a977
PM
235config ARCH_SHMOBILE
236 bool
77594912 237 select ARCH_SUSPEND_POSSIBLE
ac2c596b
MD
238 select PM
239 select PM_RUNTIME
dc65a977 240
86c8c047
MF
241config CPU_HAS_PMU
242 depends on CPU_SH4 || CPU_SH4A
243 default y
244 bool
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
2eb2a436 455 select GENERIC_CLOCKEVENTS_BROADCAST if SMP
b5f42db0
PM
456
457config CPU_SUBTYPE_SHX3
458 bool "Support SH-X3 processor"
459 select CPU_SH4A
460 select CPU_SHX3
5840263e 461 select GENERIC_CLOCKEVENTS_BROADCAST if SMP
742759ea 462 select ARCH_REQUIRE_GPIOLIB
b5f42db0
PM
463
464# SH4AL-DSP Processor Support
465
466config CPU_SUBTYPE_SH7343
467 bool "Support SH7343 processor"
468 select CPU_SH4AL_DSP
dc65a977 469 select ARCH_SHMOBILE
f5ad881b 470 select SYS_SUPPORTS_CMT
b5f42db0
PM
471
472config CPU_SUBTYPE_SH7722
473 bool "Support SH7722 processor"
474 select CPU_SH4AL_DSP
475 select CPU_SHX2
dc65a977 476 select ARCH_SHMOBILE
b5f42db0
PM
477 select ARCH_SPARSEMEM_ENABLE
478 select SYS_SUPPORTS_NUMA
f5ad881b 479 select SYS_SUPPORTS_CMT
9109a30e
MD
480
481config CPU_SUBTYPE_SH7366
482 bool "Support SH7366 processor"
483 select CPU_SH4AL_DSP
484 select CPU_SHX2
dc65a977 485 select ARCH_SHMOBILE
9109a30e
MD
486 select ARCH_SPARSEMEM_ENABLE
487 select SYS_SUPPORTS_NUMA
f5ad881b 488 select SYS_SUPPORTS_CMT
b5f42db0 489
3cc000b5
PM
490endchoice
491
492endif
493
494if SUPERH64
495
496choice
497 prompt "Processor sub-type selection"
498
ea0e1a9a
PM
499# SH-5 Processor Support
500
501config CPU_SUBTYPE_SH5_101
502 bool "Support SH5-101 processor"
503 select CPU_SH5
504
505config CPU_SUBTYPE_SH5_103
506 bool "Support SH5-103 processor"
8ef97dd7 507 select CPU_SH5
ea0e1a9a 508
b5f42db0
PM
509endchoice
510
3cc000b5
PM
511endif
512
f3d22298 513source "arch/sh/mm/Kconfig"
939a24a6 514
4690bdc7 515source "arch/sh/Kconfig.cpu"
f3d22298 516
939a24a6 517source "arch/sh/boards/Kconfig"
32351a28 518
32351a28
PM
519menu "Timer and clock configuration"
520
9570ef20
MD
521config SH_TIMER_TMU
522 bool "TMU timer driver"
f19900b2 523 depends on SYS_SUPPORTS_TMU
9570ef20 524 default y
9570ef20
MD
525 help
526 This enables the build of the TMU timer driver.
527
f5ad881b 528config SH_TIMER_CMT
f425752f
MD
529 bool "CMT timer driver"
530 depends on SYS_SUPPORTS_CMT
531 default y
f425752f
MD
532 help
533 This enables build of the CMT timer driver.
f5ad881b 534
d5ed4c2e
MD
535config SH_TIMER_MTU2
536 bool "MTU2 timer driver"
3280c886 537 depends on SYS_SUPPORTS_MTU2
d5ed4c2e 538 default y
d5ed4c2e
MD
539 help
540 This enables build of the MTU2 timer driver.
541
cad82448
PM
542config SH_PCLK_FREQ
543 int "Peripheral clock frequency (in Hz)"
8152a74b 544 depends on SH_CLK_CPG_LEGACY
9d4436a6 545 default "31250000" if CPU_SUBTYPE_SH7619
8152a74b
PM
546 default "33333333" if CPU_SUBTYPE_SH7770 || \
547 CPU_SUBTYPE_SH7760 || \
548 CPU_SUBTYPE_SH7705 || \
549 CPU_SUBTYPE_SH7203 || \
550 CPU_SUBTYPE_SH7206 || \
551 CPU_SUBTYPE_SH7263 || \
43a1839c 552 CPU_SUBTYPE_MXG
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
43a1839c 566 def_bool y if !CPU_SUBTYPE_SH7785 && !ARCH_SHMOBILE && \
5924ad0d 567 !CPU_SHX3 && !CPU_SUBTYPE_SH7757
253b0887 568
9d4436a6
YS
569config SH_CLK_MD
570 int "CPU Mode Pin Setting"
6d01f510 571 depends on CPU_SH2
357d5946
PM
572 default 6 if CPU_SUBTYPE_SH7206
573 default 5 if CPU_SUBTYPE_SH7619
574 default 0
9d4436a6 575 help
11cbb70e 576 MD2 - MD0 pin setting.
9d4436a6 577
57be2b48
PM
578source "kernel/time/Kconfig"
579
32351a28
PM
580endmenu
581
cad82448
PM
582menu "CPU Frequency scaling"
583
584source "drivers/cpufreq/Kconfig"
1da177e4 585
cad82448
PM
586config SH_CPU_FREQ
587 tristate "SuperH CPU Frequency driver"
cb5ec75b 588 depends on CPU_FREQ
cad82448 589 select CPU_FREQ_TABLE
1da177e4 590 help
8a655053
PM
591 This adds the cpufreq driver for SuperH. Any CPU that supports
592 clock rate rounding through the clock framework can use this
593 driver. While it will make the kernel slightly larger, this is
594 harmless for CPUs that don't support rate rounding. The driver
595 will also generate a notice in the boot log before disabling
596 itself if the CPU in question is not capable of rate rounding.
1da177e4 597
cad82448 598 For details, take a look at <file:Documentation/cpu-freq>.
1da177e4
LT
599
600 If unsure, say N.
601
cad82448
PM
602endmenu
603
9f5e8eee
PM
604source "arch/sh/drivers/Kconfig"
605
cad82448 606endmenu
1da177e4 607
cad82448
PM
608menu "Kernel features"
609
91b91d01
PM
610source kernel/Kconfig.hz
611
cad82448
PM
612config KEXEC
613 bool "kexec system call (EXPERIMENTAL)"
f36b59d1 614 depends on SUPERH32 && EXPERIMENTAL && MMU
1da177e4 615 help
cad82448
PM
616 kexec is a system call that implements the ability to shutdown your
617 current kernel, and to start another kernel. It is like a reboot
1f1332f7 618 but it is independent of the system firmware. And like a reboot
cad82448
PM
619 you can start any kernel with it, not just Linux.
620
1f1332f7 621 The name comes from the similarity to the exec system call.
cad82448
PM
622
623 It is an ongoing process to be certain the hardware in a machine
624 is properly shutdown, so do not be surprised if this code does not
625 initially work for you. It may help to enable device hotplugging
626 support. As of this writing the exact hardware interface is
627 strongly in flux, so no good recommendation can be made.
628
4d5ade5b
PM
629config CRASH_DUMP
630 bool "kernel crash dumps (EXPERIMENTAL)"
d523e1ae 631 depends on SUPERH32 && EXPERIMENTAL && BROKEN_ON_SMP
4d5ade5b
PM
632 help
633 Generate crash dump after being started by kexec.
634 This should be normally only set in special crash dump kernels
635 which are loaded in the main kernel with kexec-tools into
636 a specially reserved region and then later executed after
637 a crash by kdump/kexec. The crash dump kernel must be compiled
638 to a memory address not used by the main kernel using
639 MEMORY_START.
640
641 For more details see Documentation/kdump/kdump.txt
642
b7cf6ddc
MD
643config KEXEC_JUMP
644 bool "kexec jump (EXPERIMENTAL)"
645 depends on SUPERH32 && KEXEC && HIBERNATION && EXPERIMENTAL
646 help
647 Jump between original kernel and kexeced kernel and invoke
648 code via KEXEC
649
c4637d47
PM
650config SECCOMP
651 bool "Enable seccomp to safely compute untrusted bytecode"
652 depends on PROC_FS
c4637d47
PM
653 help
654 This kernel feature is useful for number crunching applications
655 that may need to compute untrusted bytecode during their
656 execution. By using pipes or other transports made available to
657 the process as file descriptors supporting the read/write
658 syscalls, it's possible to isolate those applications in
659 their own address space using seccomp. Once seccomp is
660 enabled via prctl, it cannot be disabled and the task is only
661 allowed to execute a few safe syscalls defined by each seccomp
662 mode.
663
664 If unsure, say N.
665
1da177e4
LT
666config SMP
667 bool "Symmetric multi-processing support"
357d5946 668 depends on SYS_SUPPORTS_SMP
490f5de5 669 select USE_GENERIC_SMP_HELPERS
1da177e4
LT
670 ---help---
671 This enables support for systems with more than one CPU. If you have
672 a system with only one CPU, like most personal computers, say N. If
673 you have a system with more than one CPU, say Y.
674
675 If you say N here, the kernel will run on single and multiprocessor
676 machines, but will use only one CPU of a multiprocessor machine. If
677 you say Y here, the kernel will run on many, but not all,
678 singleprocessor machines. On a singleprocessor machine, the kernel
679 will run faster if you say N here.
680
681 People using multiprocessor machines who say Y here should also say
682 Y to "Enhanced Real Time Clock Support", below.
683
03502faa
AB
684 See also <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO
685 available at <http://www.tldp.org/docs.html#howto>.
1da177e4
LT
686
687 If you don't know what to do here, say N.
688
689config NR_CPUS
690 int "Maximum number of CPUs (2-32)"
691 range 2 32
692 depends on SMP
2eb2a436 693 default "4" if CPU_SUBTYPE_SHX3
1da177e4
LT
694 default "2"
695 help
696 This allows you to specify the maximum number of CPUs which this
697 kernel will support. The maximum supported value is 32 and the
698 minimum value which makes sense is 2.
699
700 This is purely to save memory - each supported CPU adds
701 approximately eight kilobytes to the kernel image.
702
763142d1
PM
703config HOTPLUG_CPU
704 bool "Support for hot-pluggable CPUs (EXPERIMENTAL)"
705 depends on SMP && HOTPLUG && EXPERIMENTAL
706 help
707 Say Y here to experiment with turning CPUs off and on. CPUs
708 can be controlled through /sys/devices/system/cpu.
709
91b91d01
PM
710source "kernel/Kconfig.preempt"
711
83662461
PM
712config GUSA
713 def_bool y
1efe4ce3 714 depends on !SMP && SUPERH32
83662461
PM
715 help
716 This enables support for gUSA (general UserSpace Atomicity).
717 This is the default implementation for both UP and non-ll/sc
718 CPUs, and is used by the libc, amongst others.
719
720 For additional information, design information can be found
721 in <http://lc.linux.or.jp/lc2002/papers/niibe0919p.pdf>.
722
723 This should only be disabled for special cases where alternate
724 atomicity implementations exist.
725
1efe4ce3
SM
726config GUSA_RB
727 bool "Implement atomic operations by roll-back (gRB) (EXPERIMENTAL)"
728 depends on GUSA && CPU_SH3 || (CPU_SH4 && !CPU_SH4A)
729 help
730 Enabling this option will allow the kernel to implement some
692105b8 731 atomic operations using a software implementation of load-locked/
1efe4ce3
SM
732 store-conditional (LLSC). On machines which do not have hardware
733 LLSC, this should be more efficient than the other alternative of
692105b8 734 disabling interrupts around the atomic sequence.
1efe4ce3 735
86c8c047
MF
736config HW_PERF_EVENTS
737 bool "Enable hardware performance counter support for perf events"
738 depends on PERF_EVENTS && CPU_HAS_PMU
739 default y
740 help
741 Enable hardware performance counter support for perf events. If
742 disabled, perf events will use software events only.
743
43b8774d
PM
744source "drivers/sh/Kconfig"
745
cad82448 746endmenu
1da177e4 747
cad82448 748menu "Boot options"
1da177e4 749
cad82448 750config ZERO_PAGE_OFFSET
b412a49a
PM
751 hex
752 default "0x00010000" if PAGE_SIZE_64KB || SH_RTS7751R2D || \
753 SH_7751_SOLUTION_ENGINE
754 default "0x00004000" if PAGE_SIZE_16KB || SH_SH03
7a847f81 755 default "0x00002000" if PAGE_SIZE_8KB
cad82448 756 default "0x00001000"
1da177e4 757 help
cad82448 758 This sets the default offset of zero page.
1da177e4 759
cad82448 760config BOOT_LINK_OFFSET
b412a49a
PM
761 hex
762 default "0x00210000" if SH_SHMIN
a2e76c80 763 default "0x00400000" if SH_CAYMAN
b412a49a
PM
764 default "0x00810000" if SH_7780_SOLUTION_ENGINE
765 default "0x009e0000" if SH_TITAN
766 default "0x01800000" if SH_SDK7780
767 default "0x02000000" if SH_EDOSK7760
cad82448
PM
768 default "0x00800000"
769 help
770 This option allows you to set the link address offset of the zImage.
771 This can be useful if you are on a board which has a small amount of
772 memory.
1da177e4 773
b412a49a
PM
774config ENTRY_OFFSET
775 hex
776 default "0x00001000" if PAGE_SIZE_4KB
777 default "0x00002000" if PAGE_SIZE_8KB
778 default "0x00004000" if PAGE_SIZE_16KB
779 default "0x00010000" if PAGE_SIZE_64KB
780 default "0x00000000"
781
4705b2e8
MD
782config ROMIMAGE_MMCIF
783 bool "Include MMCIF loader in romImage (EXPERIMENTAL)"
784 depends on CPU_SUBTYPE_SH7724 && EXPERIMENTAL
785 help
786 Say Y here to include experimental MMCIF loading code in
787 romImage. With this enabled it is possible to write the romImage
788 kernel image to an MMC card and boot the kernel straight from
789 the reset vector. At reset the processor Mask ROM will load the
790 first part of the romImage which in turn loads the rest the kernel
791 image to RAM using the MMCIF hardware block.
792
d724a9c9
PM
793choice
794 prompt "Kernel command line"
795 optional
796 default CMDLINE_OVERWRITE
797 help
798 Setting this option allows the kernel command line arguments
799 to be set.
800
801config CMDLINE_OVERWRITE
802 bool "Overwrite bootloader kernel arguments"
803 help
804 Given string will overwrite any arguments passed in by
805 a bootloader.
806
807config CMDLINE_EXTEND
808 bool "Extend bootloader kernel arguments"
809 help
810 Given string will be concatenated with arguments passed in
811 by a bootloader.
812
813endchoice
1da177e4 814
cad82448 815config CMDLINE
d724a9c9
PM
816 string "Kernel command line arguments string"
817 depends on CMDLINE_OVERWRITE || CMDLINE_EXTEND
cad82448 818 default "console=ttySC1,115200"
1da177e4
LT
819
820endmenu
821
cad82448 822menu "Bus options"
1da177e4 823
cad82448
PM
824config SUPERHYWAY
825 tristate "SuperHyway Bus support"
826 depends on CPU_SUBTYPE_SH4_202
1da177e4 827
17be2d2b 828config MAPLE
e16038ab
PM
829 bool "Maple Bus support"
830 depends on SH_DREAMCAST
831 help
832 The Maple Bus is SEGA's serial communication bus for peripherals
833 on the Dreamcast. Without this bus support you won't be able to
834 get your Dreamcast keyboard etc to work, so most users
835 probably want to say 'Y' here, unless you are only using the
836 Dreamcast with a serial line terminal or a remote network
837 connection.
17be2d2b 838
7693465d
PM
839config PCI
840 bool "PCI support"
841 depends on SYS_SUPPORTS_PCI
320e68da 842 select PCI_DOMAINS
7693465d
PM
843 help
844 Find out whether you have a PCI motherboard. PCI is the name of a
845 bus system, i.e. the way the CPU talks to the other stuff inside
846 your box. If you have PCI, say Y, otherwise N.
1da177e4 847
320e68da
PM
848config PCI_DOMAINS
849 bool
850
e16038ab
PM
851source "drivers/pci/pcie/Kconfig"
852
1da177e4
LT
853source "drivers/pci/Kconfig"
854
855source "drivers/pcmcia/Kconfig"
856
857source "drivers/pci/hotplug/Kconfig"
858
859endmenu
860
861menu "Executable file formats"
862
863source "fs/Kconfig.binfmt"
864
865endmenu
866
3aa770e7 867menu "Power management options (EXPERIMENTAL)"
af998a9a 868depends on EXPERIMENTAL
f4cb5700 869
c6f17cb2
MD
870source "kernel/power/Kconfig"
871
872source "drivers/cpuidle/Kconfig"
3aa770e7 873
3aa770e7
AS
874endmenu
875
d5950b43
SR
876source "net/Kconfig"
877
1da177e4
LT
878source "drivers/Kconfig"
879
880source "fs/Kconfig"
881
1da177e4
LT
882source "arch/sh/Kconfig.debug"
883
884source "security/Kconfig"
885
886source "crypto/Kconfig"
887
5f737b39
MD
888menuconfig VIRTUALIZATION
889 bool "Virtualization"
890 default n
891 ---help---
892 Say Y here to get to see options for using your Linux host to run other
893 operating systems inside virtual machines (guests).
894 This option alone does not add any kernel code.
895
896 If you say N, all options in this submenu will be skipped and disabled.
897
898if VIRTUALIZATION
899
900source drivers/virtio/Kconfig
901
902endif # VIRTUALIZATION
903
1da177e4 904source "lib/Kconfig"