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