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