Kconfig 19.2 KB
Newer Older
Linus Torvalds's avatar
Linus Torvalds committed
1 2 3 4 5 6 7 8
#
# For a description of the syntax of this configuration file,
# see Documentation/kbuild/kconfig-language.txt.
#

mainmenu "Linux/SuperH Kernel Configuration"

config SUPERH
9
	def_bool y
Paul Mundt's avatar
Paul Mundt committed
10
	select EMBEDDED
11
	select HAVE_CLK
Sam Ravnborg's avatar
Sam Ravnborg committed
12
	select HAVE_IDE
Matt Fleming's avatar
Matt Fleming committed
13
	select HAVE_LMB
Mathieu Desnoyers's avatar
Mathieu Desnoyers committed
14
	select HAVE_OPROFILE
15
	select HAVE_GENERIC_DMA_COHERENT
16
	select HAVE_IOREMAP_PROT if MMU
17
	select HAVE_ARCH_TRACEHOOK
18
	select HAVE_DMA_API_DEBUG
19
	select HAVE_PERF_EVENTS
20
	select HAVE_KERNEL_GZIP
Paul Mundt's avatar
Paul Mundt committed
21 22
	select HAVE_KERNEL_BZIP2
	select HAVE_KERNEL_LZMA
23
	select HAVE_SYSCALL_TRACEPOINTS
24
	select RTC_LIB
25
	select GENERIC_ATOMIC64
Linus Torvalds's avatar
Linus Torvalds committed
26 27 28 29 30 31
	help
	  The SuperH is a RISC processor targeted for use in embedded systems
	  and consumer electronics; it was also used in the Sega Dreamcast
	  gaming console.  The SuperH port has a home page at
	  <http://www.linux-sh.org/>.

32
config SUPERH32
33
	def_bool ARCH = "sh"
Chris Smith's avatar
Chris Smith committed
34 35
	select HAVE_KPROBES
	select HAVE_KRETPROBES
36
	select HAVE_FUNCTION_TRACER
Matt Fleming's avatar
Matt Fleming committed
37 38
	select HAVE_FTRACE_MCOUNT_RECORD
	select HAVE_DYNAMIC_FTRACE
39
	select HAVE_FUNCTION_TRACE_MCOUNT_TEST
40
	select HAVE_FUNCTION_GRAPH_TRACER
Paul Mundt's avatar
Paul Mundt committed
41
	select HAVE_ARCH_KGDB
42
	select ARCH_HIBERNATION_POSSIBLE if MMU
43 44

config SUPERH64
45
	def_bool ARCH = "sh64"
46

47 48 49 50 51
config ARCH_DEFCONFIG
	string
	default "arch/sh/configs/shx3_defconfig" if SUPERH32
	default "arch/sh/configs/cayman_defconfig" if SUPERH64

Linus Torvalds's avatar
Linus Torvalds committed
52
config RWSEM_GENERIC_SPINLOCK
53
	def_bool y
Linus Torvalds's avatar
Linus Torvalds committed
54 55 56 57

config RWSEM_XCHGADD_ALGORITHM
	bool

Paul Mundt's avatar
Paul Mundt committed
58 59
config GENERIC_BUG
	def_bool y
60
	depends on BUG && SUPERH32
Paul Mundt's avatar
Paul Mundt committed
61

62 63 64 65
config GENERIC_CSUM
	def_bool y
	depends on SUPERH64

66
config GENERIC_FIND_NEXT_BIT
67
	def_bool y
68 69

config GENERIC_HWEIGHT
70
	def_bool y
71

Linus Torvalds's avatar
Linus Torvalds committed
72
config GENERIC_HARDIRQS
73
	def_bool y
Linus Torvalds's avatar
Linus Torvalds committed
74

75 76 77
config GENERIC_HARDIRQS_NO__DO_IRQ
	def_bool y

Linus Torvalds's avatar
Linus Torvalds committed
78
config GENERIC_IRQ_PROBE
79
	def_bool y
Linus Torvalds's avatar
Linus Torvalds committed
80

Paul Mundt's avatar
Paul Mundt committed
81 82 83
config IRQ_PER_CPU
	def_bool y

Magnus Damm's avatar
Magnus Damm committed
84 85 86
config GENERIC_GPIO
	def_bool n

Linus Torvalds's avatar
Linus Torvalds committed
87
config GENERIC_CALIBRATE_DELAY
88
	bool
Linus Torvalds's avatar
Linus Torvalds committed
89

90 91 92
config GENERIC_IOMAP
	bool

93
config GENERIC_TIME
94
	def_bool y
95

96
config GENERIC_CLOCKEVENTS
97
	def_bool y
98

99 100 101
config GENERIC_CLOCKEVENTS_BROADCAST
	bool

102 103 104 105
config GENERIC_CMOS_UPDATE
	def_bool y
	depends on SH_SH03 || SH_DREAMCAST

Paul Mundt's avatar
Paul Mundt committed
106 107 108 109
config GENERIC_LOCKBREAK
	def_bool y
	depends on SMP && PREEMPT

110 111
config SYS_SUPPORTS_PM
	bool
Magnus Damm's avatar
Magnus Damm committed
112 113 114 115 116 117 118
	depends on !SMP

config ARCH_SUSPEND_POSSIBLE
	def_bool n

config ARCH_HIBERNATION_POSSIBLE
	def_bool n
119

120 121
config SYS_SUPPORTS_APM_EMULATION
	bool
Magnus Damm's avatar
Magnus Damm committed
122
	select ARCH_SUSPEND_POSSIBLE
123

124 125 126
config SYS_SUPPORTS_HUGETLBFS
	bool

127 128 129 130 131 132 133 134
config SYS_SUPPORTS_SMP
	bool

config SYS_SUPPORTS_NUMA
	bool

config SYS_SUPPORTS_PCI
	bool
135

136 137 138
config SYS_SUPPORTS_CMT
	bool

139 140 141
config SYS_SUPPORTS_MTU2
	bool

142 143 144
config SYS_SUPPORTS_TMU
	bool

145
config STACKTRACE_SUPPORT
146
	def_bool y
147 148

config LOCKDEP_SUPPORT
149
	def_bool y
150

Paul Mundt's avatar
Paul Mundt committed
151 152 153 154
config HAVE_LATENCYTOP_SUPPORT
	def_bool y
	depends on !SMP

155
config ARCH_HAS_ILOG2_U32
156
	def_bool n
157 158

config ARCH_HAS_ILOG2_U64
159
	def_bool n
160

161 162 163
config ARCH_NO_VIRT_TO_BUS
	def_bool y

164 165 166
config ARCH_HAS_DEFAULT_IDLE
	def_bool y

167 168 169
config ARCH_HAS_CPU_IDLE_WAIT
	def_bool y

Magnus Damm's avatar
Magnus Damm committed
170 171 172
config IO_TRAPPED
	bool

Linus Torvalds's avatar
Linus Torvalds committed
173 174
source "init/Kconfig"

175 176
source "kernel/Kconfig.freezer"

Linus Torvalds's avatar
Linus Torvalds committed
177 178
menu "System type"

179 180 181 182 183 184 185 186 187 188 189 190 191 192
#
# Processor families
#
config CPU_SH2
	bool

config CPU_SH2A
	bool
	select CPU_SH2

config CPU_SH3
	bool
	select CPU_HAS_INTEVT
	select CPU_HAS_SR_RB
193
	select SYS_SUPPORTS_TMU
194 195 196 197 198 199

config CPU_SH4
	bool
	select CPU_HAS_INTEVT
	select CPU_HAS_SR_RB
	select CPU_HAS_FPU if !CPU_SH4AL_DSP
200
	select SYS_SUPPORTS_TMU
201
	select SYS_SUPPORTS_HUGETLBFS if MMU
202 203 204 205 206 207 208 209 210 211

config CPU_SH4A
	bool
	select CPU_SH4

config CPU_SH4AL_DSP
	bool
	select CPU_SH4A
	select CPU_HAS_DSP

212 213 214
config CPU_SH5
	bool
	select CPU_HAS_FPU
215
	select SYS_SUPPORTS_TMU
216
	select SYS_SUPPORTS_HUGETLBFS if MMU
217

218 219 220 221 222 223
config CPU_SHX2
	bool

config CPU_SHX3
	bool

224 225
config ARCH_SHMOBILE
	bool
226
	select ARCH_SUSPEND_POSSIBLE
227 228
	select PM
	select PM_RUNTIME
229

230 231
if SUPERH32

232 233 234 235 236 237 238 239 240 241 242 243
choice
	prompt "Processor sub-type selection"

#
# Processor subtypes
#

# SH-2 Processor Support

config CPU_SUBTYPE_SH7619
	bool "Support SH7619 processor"
	select CPU_SH2
244
	select SYS_SUPPORTS_CMT
245 246 247

# SH-2A Processor Support

248 249 250 251
config CPU_SUBTYPE_SH7201
	bool "Support SH7201 processor"
	select CPU_SH2A
	select CPU_HAS_FPU
Magnus Damm's avatar
Magnus Damm committed
252
	select SYS_SUPPORTS_MTU2
253
 
Paul Mundt's avatar
Paul Mundt committed
254 255 256
config CPU_SUBTYPE_SH7203
	bool "Support SH7203 processor"
	select CPU_SH2A
Paul Mundt's avatar
Paul Mundt committed
257
	select CPU_HAS_FPU
258
	select SYS_SUPPORTS_CMT
Magnus Damm's avatar
Magnus Damm committed
259
	select SYS_SUPPORTS_MTU2
Paul Mundt's avatar
Paul Mundt committed
260

261 262 263
config CPU_SUBTYPE_SH7206
	bool "Support SH7206 processor"
	select CPU_SH2A
264
	select SYS_SUPPORTS_CMT
Magnus Damm's avatar
Magnus Damm committed
265
	select SYS_SUPPORTS_MTU2
266

Paul Mundt's avatar
Paul Mundt committed
267 268 269
config CPU_SUBTYPE_SH7263
	bool "Support SH7263 processor"
	select CPU_SH2A
Paul Mundt's avatar
Paul Mundt committed
270
	select CPU_HAS_FPU
271
	select SYS_SUPPORTS_CMT
Magnus Damm's avatar
Magnus Damm committed
272
	select SYS_SUPPORTS_MTU2
Paul Mundt's avatar
Paul Mundt committed
273

274 275 276
config CPU_SUBTYPE_MXG
	bool "Support MX-G processor"
	select CPU_SH2A
Magnus Damm's avatar
Magnus Damm committed
277
	select SYS_SUPPORTS_MTU2
278 279 280
	help
	  Select MX-G if running on an R8A03022BG part.

281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329
# SH-3 Processor Support

config CPU_SUBTYPE_SH7705
	bool "Support SH7705 processor"
	select CPU_SH3

config CPU_SUBTYPE_SH7706
	bool "Support SH7706 processor"
	select CPU_SH3
	help
	  Select SH7706 if you have a 133 Mhz SH-3 HD6417706 CPU.

config CPU_SUBTYPE_SH7707
	bool "Support SH7707 processor"
	select CPU_SH3
	help
	  Select SH7707 if you have a  60 Mhz SH-3 HD6417707 CPU.

config CPU_SUBTYPE_SH7708
	bool "Support SH7708 processor"
	select CPU_SH3
	help
	  Select SH7708 if you have a  60 Mhz SH-3 HD6417708S or
	  if you have a 100 Mhz SH-3 HD6417708R CPU.

config CPU_SUBTYPE_SH7709
	bool "Support SH7709 processor"
	select CPU_SH3
	help
	  Select SH7709 if you have a  80 Mhz SH-3 HD6417709 CPU.

config CPU_SUBTYPE_SH7710
	bool "Support SH7710 processor"
	select CPU_SH3
	select CPU_HAS_DSP
	help
	  Select SH7710 if you have a SH3-DSP SH7710 CPU.

config CPU_SUBTYPE_SH7712
	bool "Support SH7712 processor"
	select CPU_SH3
	select CPU_HAS_DSP
	help
	  Select SH7712 if you have a SH3-DSP SH7712 CPU.

config CPU_SUBTYPE_SH7720
	bool "Support SH7720 processor"
	select CPU_SH3
	select CPU_HAS_DSP
330
	select SYS_SUPPORTS_CMT
331 332 333
	help
	  Select SH7720 if you have a SH3-DSP SH7720 CPU.

334 335 336 337
config CPU_SUBTYPE_SH7721
	bool "Support SH7721 processor"
	select CPU_SH3
	select CPU_HAS_DSP
338
	select SYS_SUPPORTS_CMT
339 340 341
	help
	  Select SH7721 if you have a SH3-DSP SH7721 CPU.

342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385
# SH-4 Processor Support

config CPU_SUBTYPE_SH7750
	bool "Support SH7750 processor"
	select CPU_SH4
	help
	  Select SH7750 if you have a 200 Mhz SH-4 HD6417750 CPU.

config CPU_SUBTYPE_SH7091
	bool "Support SH7091 processor"
	select CPU_SH4
	help
	  Select SH7091 if you have an SH-4 based Sega device (such as
	  the Dreamcast, Naomi, and Naomi 2).

config CPU_SUBTYPE_SH7750R
	bool "Support SH7750R processor"
	select CPU_SH4

config CPU_SUBTYPE_SH7750S
	bool "Support SH7750S processor"
	select CPU_SH4

config CPU_SUBTYPE_SH7751
	bool "Support SH7751 processor"
	select CPU_SH4
	help
	  Select SH7751 if you have a 166 Mhz SH-4 HD6417751 CPU,
	  or if you have a HD6417751R CPU.

config CPU_SUBTYPE_SH7751R
	bool "Support SH7751R processor"
	select CPU_SH4

config CPU_SUBTYPE_SH7760
	bool "Support SH7760 processor"
	select CPU_SH4

config CPU_SUBTYPE_SH4_202
	bool "Support SH4-202 processor"
	select CPU_SH4

# SH-4A Processor Support

386 387 388 389
config CPU_SUBTYPE_SH7723
	bool "Support SH7723 processor"
	select CPU_SH4A
	select CPU_SHX2
390
	select ARCH_SHMOBILE
391
	select ARCH_SPARSEMEM_ENABLE
392
	select SYS_SUPPORTS_CMT
393 394 395
	help
	  Select SH7723 if you have an SH-MobileR2 CPU.

396 397 398 399
config CPU_SUBTYPE_SH7724
	bool "Support SH7724 processor"
	select CPU_SH4A
	select CPU_SHX2
400
	select ARCH_SHMOBILE
401 402 403 404 405
	select ARCH_SPARSEMEM_ENABLE
	select SYS_SUPPORTS_CMT
	help
	  Select SH7724 if you have an SH-MobileR2R CPU.

406 407 408 409 410 411 412
config CPU_SUBTYPE_SH7757
	bool "Support SH7757 processor"
	select CPU_SH4A
	select CPU_SHX2
	help
	  Select SH7757 if you have a SH4A SH7757 CPU.

413 414 415 416 417 418
config CPU_SUBTYPE_SH7763
	bool "Support SH7763 processor"
	select CPU_SH4A
	help
	  Select SH7763 if you have a SH4A SH7763(R5S77631) CPU.

419 420 421 422 423 424 425 426 427 428 429 430
config CPU_SUBTYPE_SH7770
	bool "Support SH7770 processor"
	select CPU_SH4A

config CPU_SUBTYPE_SH7780
	bool "Support SH7780 processor"
	select CPU_SH4A

config CPU_SUBTYPE_SH7785
	bool "Support SH7785 processor"
	select CPU_SH4A
	select CPU_SHX2
431 432 433 434 435 436
	select ARCH_SPARSEMEM_ENABLE
	select SYS_SUPPORTS_NUMA

config CPU_SUBTYPE_SH7786
	bool "Support SH7786 processor"
	select CPU_SH4A
437
	select CPU_SHX3
438
	select CPU_HAS_PTEAEX
439 440
	select ARCH_SPARSEMEM_ENABLE
	select SYS_SUPPORTS_NUMA
Paul Mundt's avatar
Paul Mundt committed
441 442
	select SYS_SUPPORTS_SMP
	select GENERIC_CLOCKEVENTS_BROADCAST if SMP
443 444 445 446 447 448 449 450

config CPU_SUBTYPE_SHX3
	bool "Support SH-X3 processor"
	select CPU_SH4A
	select CPU_SHX3
	select ARCH_SPARSEMEM_ENABLE
	select SYS_SUPPORTS_NUMA
	select SYS_SUPPORTS_SMP
451
	select GENERIC_CLOCKEVENTS_BROADCAST if SMP
452 453 454 455 456 457

# SH4AL-DSP Processor Support

config CPU_SUBTYPE_SH7343
	bool "Support SH7343 processor"
	select CPU_SH4AL_DSP
458
	select ARCH_SHMOBILE
459
	select SYS_SUPPORTS_CMT
460 461 462 463 464

config CPU_SUBTYPE_SH7722
	bool "Support SH7722 processor"
	select CPU_SH4AL_DSP
	select CPU_SHX2
465
	select ARCH_SHMOBILE
466 467
	select ARCH_SPARSEMEM_ENABLE
	select SYS_SUPPORTS_NUMA
468
	select SYS_SUPPORTS_CMT
469 470 471 472 473

config CPU_SUBTYPE_SH7366
	bool "Support SH7366 processor"
	select CPU_SH4AL_DSP
	select CPU_SHX2
474
	select ARCH_SHMOBILE
475 476
	select ARCH_SPARSEMEM_ENABLE
	select SYS_SUPPORTS_NUMA
477
	select SYS_SUPPORTS_CMT
478

479 480 481 482 483 484 485 486 487
endchoice

endif

if SUPERH64

choice
	prompt "Processor sub-type selection"

488 489 490 491 492 493 494 495
# SH-5 Processor Support

config CPU_SUBTYPE_SH5_101
	bool "Support SH5-101 processor"
	select CPU_SH5

config CPU_SUBTYPE_SH5_103
	bool "Support SH5-103 processor"
496
	select CPU_SH5
497

498 499
endchoice

500 501
endif

502
source "arch/sh/mm/Kconfig"
503
 
504
source "arch/sh/Kconfig.cpu"
505

506
source "arch/sh/boards/Kconfig"
507 508 509

menu "Timer and clock configuration"

510 511
config SH_TIMER_TMU
	bool "TMU timer driver"
Magnus Damm's avatar
Magnus Damm committed
512
	depends on SYS_SUPPORTS_TMU
513 514 515 516
	default y
	help
	  This enables the build of the TMU timer driver.

517
config SH_TIMER_CMT
Magnus Damm's avatar
Magnus Damm committed
518 519 520 521 522
	bool "CMT timer driver"
	depends on SYS_SUPPORTS_CMT
	default y
	help
	  This enables build of the CMT timer driver.
523

524 525
config SH_TIMER_MTU2
	bool "MTU2 timer driver"
Magnus Damm's avatar
Magnus Damm committed
526
	depends on SYS_SUPPORTS_MTU2
527 528 529 530
	default y
	help
	  This enables build of the MTU2 timer driver.

531 532
config SH_PCLK_FREQ
	int "Peripheral clock frequency (in Hz)"
533
	default "27000000" if CPU_SUBTYPE_SH7343
534
	default "31250000" if CPU_SUBTYPE_SH7619
Paul Mundt's avatar
Paul Mundt committed
535
	default "32000000" if CPU_SUBTYPE_SH7722
536
	default "33333333" if CPU_SUBTYPE_SH7770 || CPU_SUBTYPE_SH7723 || \
537
			      CPU_SUBTYPE_SH7760 || CPU_SUBTYPE_SH7705 || \
Paul Mundt's avatar
Paul Mundt committed
538
			      CPU_SUBTYPE_SH7203 || CPU_SUBTYPE_SH7206 || \
539
			      CPU_SUBTYPE_SH7263 || CPU_SUBTYPE_MXG    || \
540
			      CPU_SUBTYPE_SH7786 || CPU_SUBTYPE_SH7724
Paul Mundt's avatar
Paul Mundt committed
541
	default "60000000" if CPU_SUBTYPE_SH7751 || CPU_SUBTYPE_SH7751R
542
	default "66000000" if CPU_SUBTYPE_SH4_202
Paul Mundt's avatar
Paul Mundt committed
543
	default "50000000"
Linus Torvalds's avatar
Linus Torvalds committed
544
	help
545 546 547
	  This option is used to specify the peripheral clock frequency.
	  This is necessary for determining the reference clock value on
	  platforms lacking an RTC.
Linus Torvalds's avatar
Linus Torvalds committed
548

549 550 551
config SH_CLK_CPG
	def_bool y

552
config SH_CLK_CPG_LEGACY
553
	depends on SH_CLK_CPG
554
	def_bool y if !CPU_SUBTYPE_SH7785 && !ARCH_SHMOBILE
555

556 557
config SH_CLK_MD
	int "CPU Mode Pin Setting"
Paul Mundt's avatar
Paul Mundt committed
558
	depends on CPU_SH2
559 560 561
	default 6 if CPU_SUBTYPE_SH7206
	default 5 if CPU_SUBTYPE_SH7619
	default 0
562
	help
563
	  MD2 - MD0 pin setting.
564

565 566
source "kernel/time/Kconfig"

567 568
endmenu

569 570 571
menu "CPU Frequency scaling"

source "drivers/cpufreq/Kconfig"
Linus Torvalds's avatar
Linus Torvalds committed
572

573 574
config SH_CPU_FREQ
	tristate "SuperH CPU Frequency driver"
575
	depends on CPU_FREQ
576
	select CPU_FREQ_TABLE
Linus Torvalds's avatar
Linus Torvalds committed
577
	help
578 579 580 581 582 583
	  This adds the cpufreq driver for SuperH. Any CPU that supports
	  clock rate rounding through the clock framework can use this
	  driver. While it will make the kernel slightly larger, this is
	  harmless for CPUs that don't support rate rounding. The driver
	  will also generate a notice in the boot log before disabling
	  itself if the CPU in question is not capable of rate rounding.
Linus Torvalds's avatar
Linus Torvalds committed
584

585
	  For details, take a look at <file:Documentation/cpu-freq>.
Linus Torvalds's avatar
Linus Torvalds committed
586 587 588

	  If unsure, say N.

589 590
endmenu

591 592
source "arch/sh/drivers/Kconfig"

593
endmenu
Linus Torvalds's avatar
Linus Torvalds committed
594

595 596
menu "Kernel features"

Paul Mundt's avatar
Paul Mundt committed
597 598
source kernel/Kconfig.hz

599 600
config KEXEC
	bool "kexec system call (EXPERIMENTAL)"
601
	depends on SUPERH32 && EXPERIMENTAL && MMU
Linus Torvalds's avatar
Linus Torvalds committed
602
	help
603 604
	  kexec is a system call that implements the ability to shutdown your
	  current kernel, and to start another kernel.  It is like a reboot
605
	  but it is independent of the system firmware.  And like a reboot
606 607
	  you can start any kernel with it, not just Linux.

608
	  The name comes from the similarity to the exec system call.
609 610 611 612 613 614 615

	  It is an ongoing process to be certain the hardware in a machine
	  is properly shutdown, so do not be surprised if this code does not
	  initially work for you.  It may help to enable device hotplugging
	  support.  As of this writing the exact hardware interface is
	  strongly in flux, so no good recommendation can be made.

Paul Mundt's avatar
Paul Mundt committed
616 617
config CRASH_DUMP
	bool "kernel crash dumps (EXPERIMENTAL)"
618
	depends on SUPERH32 && EXPERIMENTAL
Paul Mundt's avatar
Paul Mundt committed
619 620 621 622 623 624 625 626 627 628 629
	help
	  Generate crash dump after being started by kexec.
	  This should be normally only set in special crash dump kernels
	  which are loaded in the main kernel with kexec-tools into
	  a specially reserved region and then later executed after
	  a crash by kdump/kexec. The crash dump kernel must be compiled
	  to a memory address not used by the main kernel using
	  MEMORY_START.

	  For more details see Documentation/kdump/kdump.txt

Magnus Damm's avatar
Magnus Damm committed
630 631 632 633 634 635 636
config KEXEC_JUMP
	bool "kexec jump (EXPERIMENTAL)"
	depends on SUPERH32 && KEXEC && HIBERNATION && EXPERIMENTAL
	help
	  Jump between original kernel and kexeced kernel and invoke
	  code via KEXEC

Paul Mundt's avatar
Paul Mundt committed
637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652
config SECCOMP
	bool "Enable seccomp to safely compute untrusted bytecode"
	depends on PROC_FS
	help
	  This kernel feature is useful for number crunching applications
	  that may need to compute untrusted bytecode during their
	  execution. By using pipes or other transports made available to
	  the process as file descriptors supporting the read/write
	  syscalls, it's possible to isolate those applications in
	  their own address space using seccomp. Once seccomp is
	  enabled via prctl, it cannot be disabled and the task is only
	  allowed to execute a few safe syscalls defined by each seccomp
	  mode.

	  If unsure, say N.

Linus Torvalds's avatar
Linus Torvalds committed
653 654
config SMP
	bool "Symmetric multi-processing support"
655
	depends on SYS_SUPPORTS_SMP
656
	select USE_GENERIC_SMP_HELPERS
Linus Torvalds's avatar
Linus Torvalds committed
657 658 659 660 661 662 663 664 665 666 667 668 669 670
	---help---
	  This enables support for systems with more than one CPU. If you have
	  a system with only one CPU, like most personal computers, say N. If
	  you have a system with more than one CPU, say Y.

	  If you say N here, the kernel will run on single and multiprocessor
	  machines, but will use only one CPU of a multiprocessor machine. If
	  you say Y here, the kernel will run on many, but not all,
	  singleprocessor machines. On a singleprocessor machine, the kernel
	  will run faster if you say N here.

	  People using multiprocessor machines who say Y here should also say
	  Y to "Enhanced Real Time Clock Support", below.

Adrian Bunk's avatar
Adrian Bunk committed
671 672
	  See also <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO
	  available at <http://www.tldp.org/docs.html#howto>.
Linus Torvalds's avatar
Linus Torvalds committed
673 674 675 676 677 678 679

	  If you don't know what to do here, say N.

config NR_CPUS
	int "Maximum number of CPUs (2-32)"
	range 2 32
	depends on SMP
Paul Mundt's avatar
Paul Mundt committed
680
	default "4" if CPU_SUBTYPE_SHX3
Linus Torvalds's avatar
Linus Torvalds committed
681 682 683 684 685 686 687 688 689
	default "2"
	help
	  This allows you to specify the maximum number of CPUs which this
	  kernel will support.  The maximum supported value is 32 and the
	  minimum value which makes sense is 2.

	  This is purely to save memory - each supported CPU adds
	  approximately eight kilobytes to the kernel image.

Paul Mundt's avatar
Paul Mundt committed
690 691
source "kernel/Kconfig.preempt"

692 693
config GUSA
	def_bool y
694
	depends on !SMP && SUPERH32
695 696 697 698 699 700 701 702 703 704 705
	help
	  This enables support for gUSA (general UserSpace Atomicity).
	  This is the default implementation for both UP and non-ll/sc
	  CPUs, and is used by the libc, amongst others.

	  For additional information, design information can be found 
	  in <http://lc.linux.or.jp/lc2002/papers/niibe0919p.pdf>.

	  This should only be disabled for special cases where alternate
	  atomicity implementations exist.

706 707 708 709 710
config GUSA_RB
	bool "Implement atomic operations by roll-back (gRB) (EXPERIMENTAL)"
	depends on GUSA && CPU_SH3 || (CPU_SH4 && !CPU_SH4A)
	help
	  Enabling this option will allow the kernel to implement some
711
	  atomic operations using a software implementation of load-locked/
712 713
	  store-conditional (LLSC). On machines which do not have hardware
	  LLSC, this should be more efficient than the other alternative of
714
	  disabling interrupts around the atomic sequence.
715

716 717 718 719 720 721 722 723 724 725 726 727
config SPARSE_IRQ
	bool "Support sparse irq numbering"
	depends on EXPERIMENTAL
	help
	  This enables support for sparse irqs. This is useful in general
	  as most CPUs have a fairly sparse array of IRQ vectors, which
	  the irq_desc then maps directly on to. Systems with a high
	  number of off-chip IRQs will want to treat this as
	  experimental until they have been independently verified.

	  If you don't know what to do here, say N.

728
endmenu
Linus Torvalds's avatar
Linus Torvalds committed
729

730
menu "Boot options"
Linus Torvalds's avatar
Linus Torvalds committed
731

732
config ZERO_PAGE_OFFSET
733 734 735 736
	hex
	default "0x00010000" if PAGE_SIZE_64KB || SH_RTS7751R2D || \
				SH_7751_SOLUTION_ENGINE
	default "0x00004000" if PAGE_SIZE_16KB || SH_SH03
737
	default "0x00002000" if PAGE_SIZE_8KB
738
	default "0x00001000"
Linus Torvalds's avatar
Linus Torvalds committed
739
	help
740
	  This sets the default offset of zero page.
Linus Torvalds's avatar
Linus Torvalds committed
741

742
config BOOT_LINK_OFFSET
743 744
	hex
	default "0x00210000" if SH_SHMIN
745
	default "0x00400000" if SH_CAYMAN
746 747 748 749
	default "0x00810000" if SH_7780_SOLUTION_ENGINE
	default "0x009e0000" if SH_TITAN
	default "0x01800000" if SH_SDK7780
	default "0x02000000" if SH_EDOSK7760
750 751 752 753 754
	default "0x00800000"
	help
	  This option allows you to set the link address offset of the zImage.
	  This can be useful if you are on a board which has a small amount of
	  memory.
Linus Torvalds's avatar
Linus Torvalds committed
755

756 757 758 759 760 761 762 763
config ENTRY_OFFSET
	hex
	default "0x00001000" if PAGE_SIZE_4KB
	default "0x00002000" if PAGE_SIZE_8KB
	default "0x00004000" if PAGE_SIZE_16KB
	default "0x00010000" if PAGE_SIZE_64KB
	default "0x00000000"

764 765
config UBC_WAKEUP
	bool "Wakeup UBC on startup"
Paul Mundt's avatar
Paul Mundt committed
766
	depends on CPU_SH4 && !CPU_SH4A
767 768 769 770 771
	help
	  Selecting this option will wakeup the User Break Controller (UBC) on
	  startup. Although the UBC is left in an awake state when the processor
	  comes up, some boot loaders misbehave by putting the UBC to sleep in a
	  power saving state, which causes issues with things like ptrace().
Linus Torvalds's avatar
Linus Torvalds committed
772

773
	  If unsure, say N.
Linus Torvalds's avatar
Linus Torvalds committed
774

775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795
choice
	prompt "Kernel command line"
	optional
	default CMDLINE_OVERWRITE
	help
	  Setting this option allows the kernel command line arguments
	  to be set.

config CMDLINE_OVERWRITE
	bool "Overwrite bootloader kernel arguments"
	help
	  Given string will overwrite any arguments passed in by
	  a bootloader.

config CMDLINE_EXTEND
	bool "Extend bootloader kernel arguments"
	help
	  Given string will be concatenated with arguments passed in
	  by a bootloader.

endchoice
Linus Torvalds's avatar
Linus Torvalds committed
796

797
config CMDLINE
798 799
	string "Kernel command line arguments string"
	depends on CMDLINE_OVERWRITE || CMDLINE_EXTEND
800
	default "console=ttySC1,115200"
Linus Torvalds's avatar
Linus Torvalds committed
801 802 803

endmenu

804
menu "Bus options"
Linus Torvalds's avatar
Linus Torvalds committed
805

806 807 808
config SUPERHYWAY
	tristate "SuperHyway Bus support"
	depends on CPU_SUBTYPE_SH4_202
Linus Torvalds's avatar
Linus Torvalds committed
809

810
config MAPLE
811 812 813 814 815 816 817 818 819
	bool "Maple Bus support"
	depends on SH_DREAMCAST
	help
	 The Maple Bus is SEGA's serial communication bus for peripherals
	 on the Dreamcast. Without this bus support you won't be able to
	 get your Dreamcast keyboard etc to work, so most users
	 probably want to say 'Y' here, unless you are only using the
	 Dreamcast with a serial line terminal or a remote network
	 connection.
820

Linus Torvalds's avatar
Linus Torvalds committed
821 822
source "arch/sh/drivers/pci/Kconfig"

823 824
source "drivers/pci/pcie/Kconfig"

Linus Torvalds's avatar
Linus Torvalds committed
825 826 827 828 829 830 831 832 833 834 835 836 837 838
source "drivers/pci/Kconfig"

source "drivers/pcmcia/Kconfig"

source "drivers/pci/hotplug/Kconfig"

endmenu

menu "Executable file formats"

source "fs/Kconfig.binfmt"

endmenu

Andriy Skulysh's avatar
Andriy Skulysh committed
839
menu "Power management options (EXPERIMENTAL)"
Magnus Damm's avatar
Magnus Damm committed
840
depends on EXPERIMENTAL
841

Magnus Damm's avatar
Magnus Damm committed
842 843 844
source "kernel/power/Kconfig"

source "drivers/cpuidle/Kconfig"
Andriy Skulysh's avatar
Andriy Skulysh committed
845 846 847

endmenu

848 849
source "net/Kconfig"

Linus Torvalds's avatar
Linus Torvalds committed
850 851 852 853 854 855 856 857 858 859 860
source "drivers/Kconfig"

source "fs/Kconfig"

source "arch/sh/Kconfig.debug"

source "security/Kconfig"

source "crypto/Kconfig"

source "lib/Kconfig"