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