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