2 # For a description of the syntax of this configuration file,
3 # see Documentation/kbuild/kconfig-language.txt.
6 mainmenu "Linux/SuperH Kernel Configuration"
13 The SuperH is a RISC processor targeted for use in embedded systems
14 and consumer electronics; it was also used in the Sega Dreamcast
15 gaming console. The SuperH port has a home page at
16 <http://www.linux-sh.org/>.
18 config RWSEM_GENERIC_SPINLOCK
22 config RWSEM_XCHGADD_ALGORITHM
29 config GENERIC_FIND_NEXT_BIT
33 config GENERIC_HWEIGHT
37 config GENERIC_HARDIRQS
41 config GENERIC_IRQ_PROBE
45 config GENERIC_CALIBRATE_DELAY
55 config GENERIC_CLOCKEVENTS
58 config SYS_SUPPORTS_APM_EMULATION
61 config ARCH_MAY_HAVE_PC_FDC
64 config STACKTRACE_SUPPORT
68 config LOCKDEP_SUPPORT
72 config ARCH_HAS_ILOG2_U32
76 config ARCH_HAS_ILOG2_U64
84 source "arch/sh/mm/Kconfig"
86 menu "Processor features"
89 prompt "Endianess selection"
90 default CPU_LITTLE_ENDIAN
92 Some SuperH machines can be configured for either little or big
93 endian byte order. These modes require different kernels.
95 config CPU_LITTLE_ENDIAN
108 Selecting this option will enable support for SH processors that
109 have FPU units (ie, SH77xx).
111 This option must be set in order to enable the FPU.
114 bool "FPU emulation support"
115 depends on !SH_FPU && EXPERIMENTAL
118 Selecting this option will enable support for software FPU emulation.
119 Most SH-3 users will want to say Y here, whereas most SH-4 users will
124 default y if SH4AL_DSP || !CPU_SH4
127 Selecting this option will enable support for SH processors that
128 have DSP units (ie, SH2-DSP, SH3-DSP, and SH4AL-DSP).
130 This option must be set in order to enable the DSP.
137 Selecting this option will allow the Linux kernel to use SH3 on-chip
142 config SH_STORE_QUEUES
143 bool "Support for Store Queues"
146 Selecting this option will enable an in-kernel API for manipulating
147 the store queues integrated in the SH-4 processors.
149 config SPECULATIVE_EXECUTION
150 bool "Speculative subroutine return"
151 depends on CPU_SUBTYPE_SH7780 && EXPERIMENTAL
153 This enables support for a speculative instruction fetch for
154 subroutine return. There are various pitfalls associated with
155 this, as outlined in the SH7780 hardware manual.
159 config CPU_HAS_INTEVT
162 config CPU_HAS_PINT_IRQ
165 config CPU_HAS_MASKREG_IRQ
168 config CPU_HAS_INTC2_IRQ
171 config CPU_HAS_IPR_IRQ
176 depends on CPU_SH3 || CPU_SH4
179 This will enable the use of SR.RB register bank usage. Processors
180 that are lacking this bit must have another method in place for
181 accomplishing what is taken care of by the banked registers.
183 See <file:Documentation/sh/register-banks.txt> for further
184 information on SR.RB and register banking in the kernel in general.
193 config SOLUTION_ENGINE
196 config SH_SOLUTION_ENGINE
197 bool "SolutionEngine"
198 select SOLUTION_ENGINE
199 depends on CPU_SUBTYPE_SH7709 || CPU_SUBTYPE_SH7750
201 Select SolutionEngine if configuring for a Hitachi SH7709
202 or SH7750 evaluation board.
204 config SH_7206_SOLUTION_ENGINE
205 bool "SolutionEngine7206"
206 select SOLUTION_ENGINE
207 depends on CPU_SUBTYPE_SH7206
209 Select 7206 SolutionEngine if configuring for a Hitachi SH7206
212 config SH_7619_SOLUTION_ENGINE
213 bool "SolutionEngine7619"
214 select SOLUTION_ENGINE
215 depends on CPU_SUBTYPE_SH7619
217 Select 7619 SolutionEngine if configuring for a Hitachi SH7619
220 config SH_7722_SOLUTION_ENGINE
221 bool "SolutionEngine7722"
222 select SOLUTION_ENGINE
223 depends on CPU_SUBTYPE_SH7722
225 Select 7722 SolutionEngine if configuring for a Hitachi SH772
228 config SH_7751_SOLUTION_ENGINE
229 bool "SolutionEngine7751"
230 select SOLUTION_ENGINE
231 depends on CPU_SUBTYPE_SH7751
233 Select 7751 SolutionEngine if configuring for a Hitachi SH7751
236 config SH_7780_SOLUTION_ENGINE
237 bool "SolutionEngine7780"
238 select SOLUTION_ENGINE
239 depends on CPU_SUBTYPE_SH7780
241 Select 7780 SolutionEngine if configuring for a Renesas SH7780
244 config SH_7300_SOLUTION_ENGINE
245 bool "SolutionEngine7300"
246 select SOLUTION_ENGINE
247 depends on CPU_SUBTYPE_SH7300
249 Select 7300 SolutionEngine if configuring for a Hitachi
250 SH7300(SH-Mobile V) evaluation board.
252 config SH_7343_SOLUTION_ENGINE
253 bool "SolutionEngine7343"
254 select SOLUTION_ENGINE
255 depends on CPU_SUBTYPE_SH7343
257 Select 7343 SolutionEngine if configuring for a Hitachi
258 SH7343 (SH-Mobile 3AS) evaluation board.
260 config SH_73180_SOLUTION_ENGINE
261 bool "SolutionEngine73180"
262 select SOLUTION_ENGINE
263 depends on CPU_SUBTYPE_SH73180
265 Select 73180 SolutionEngine if configuring for a Hitachi
266 SH73180(SH-Mobile 3) evaluation board.
268 config SH_7751_SYSTEMH
270 depends on CPU_SUBTYPE_SH7751R
272 Select SystemH if you are configuring for a Renesas SystemH
273 7751R evaluation board.
277 select SYS_SUPPORTS_APM_EMULATION
278 depends on CPU_SUBTYPE_SH7709
280 Select HP6XX if configuring for a HP jornada HP6xx.
281 More information (hardware only) at
282 <http://www.hp.com/jornada/>.
286 depends on CPU_SUBTYPE_SH7604
288 Select Saturn if configuring for a SEGA Saturn.
292 depends on CPU_SUBTYPE_SH7091
294 Select Dreamcast if configuring for a SEGA Dreamcast.
296 <http://www.m17n.org/linux-sh/dreamcast/>. There is a
297 Dreamcast project is at <http://linuxdc.sourceforge.net/>.
300 bool "Interface MPC1211"
301 depends on CPU_SUBTYPE_SH7751 && BROKEN
303 CTP/PCI-SH02 is a CPU module computer that is produced
304 by Interface Corporation.
305 More information at <http://www.interface.co.jp>
308 bool "Interface CTP/PCI-SH03"
309 depends on CPU_SUBTYPE_SH7751 && BROKEN
311 CTP/PCI-SH03 is a CPU module computer that is produced
312 by Interface Corporation.
313 More information at <http://www.interface.co.jp>
315 config SH_SECUREEDGE5410
316 bool "SecureEdge5410"
317 depends on CPU_SUBTYPE_SH7751R
319 Select SecureEdge5410 if configuring for a SnapGear SH board.
320 This includes both the OEM SecureEdge products as well as the
323 config SH_HS7751RVOIP
325 depends on CPU_SUBTYPE_SH7751R
327 Select HS7751RVOIP if configuring for a Renesas Technology
331 bool "SH7710-VOIP-GW"
332 depends on CPU_SUBTYPE_SH7710
334 Select this option to build a kernel for the SH7710 based
339 depends on CPU_SUBTYPE_SH7751R
341 Select RTS7751R2D if configuring for a Renesas Technology
342 Sales SH-Graphics board.
346 depends on CPU_SUBTYPE_SH7780 || CPU_SUBTYPE_SH7785
350 depends on CPU_SUBTYPE_SH7705
352 config SH_SH4202_MICRODEV
353 bool "SH4-202 MicroDev"
354 depends on CPU_SUBTYPE_SH4_202
356 Select SH4-202 MicroDev if configuring for a SuperH MicroDev board
361 depends on CPU_SUBTYPE_SH7751R
363 I-O DATA DEVICE, INC. "LANDISK Series" support.
367 depends on CPU_SUBTYPE_SH7751R
369 Select Titan if you are configuring for a Nimble Microsystems
374 depends on CPU_SUBTYPE_SH7706
376 Select SHMIN if configuring for the SHMIN board.
380 depends on CPU_SUBTYPE_SH7751R
382 Select L-BOX RE2 if configuring for the NTT COMWARE L-BOX RE2.
386 source "arch/sh/boards/renesas/hs7751rvoip/Kconfig"
387 source "arch/sh/boards/renesas/rts7751r2d/Kconfig"
388 source "arch/sh/boards/renesas/r7780rp/Kconfig"
391 bool "Compact Flash Enabler support"
392 depends on SH_SOLUTION_ENGINE || SH_SH03
394 Compact Flash is a small, removable mass storage device introduced
395 in 1994 originally as a PCMCIA device. If you say `Y' here, you
396 compile in support for Compact Flash devices directly connected to
397 a SuperH processor. A Compact Flash FAQ is available at
398 <http://www.compactflash.org/faqs/faq.htm>.
400 If your board has "Directly Connected" CompactFlash at area 5 or 6,
401 you may want to enable this option. Then, you can use CF as
402 primary IDE drive (only tested for SanDisk).
404 If in doubt, select 'N'.
407 prompt "Compact Flash Connection Area"
408 depends on CF_ENABLER
414 If your board has "Directly Connected" CompactFlash, You should
415 select the area where your CF is connected to.
417 - "Area5" if CompactFlash is connected to Area 5 (0x14000000)
418 - "Area6" if it is connected to Area 6 (0x18000000)
420 "Area6" will work for most boards.
429 depends on CF_ENABLER
430 default "0xb8000000" if CF_AREA6
431 default "0xb4000000" if CF_AREA5
434 menu "Timer and clock configuration"
437 bool "TMU timer support"
438 depends on CPU_SH3 || CPU_SH4
440 select GENERIC_CLOCKEVENTS
443 This enables the use of the TMU as the system timer.
446 bool "CMT timer support"
450 This enables the use of the CMT as the system timer.
453 bool "MTU2 timer support"
457 This enables the use of the MTU2 as the system timer.
461 default "28" if CPU_SUBTYPE_SH7780 || CPU_SUBTYPE_SH7785
462 default "86" if CPU_SUBTYPE_SH7619
463 default "140" if CPU_SUBTYPE_SH7206
467 int "Peripheral clock frequency (in Hz)"
468 default "27000000" if CPU_SUBTYPE_SH73180 || CPU_SUBTYPE_SH7343
469 default "31250000" if CPU_SUBTYPE_SH7619
470 default "32000000" if CPU_SUBTYPE_SH7722
471 default "33333333" if CPU_SUBTYPE_SH7300 || CPU_SUBTYPE_SH7770 || \
472 CPU_SUBTYPE_SH7760 || CPU_SUBTYPE_SH7705 || \
474 default "60000000" if CPU_SUBTYPE_SH7751 || CPU_SUBTYPE_SH7751R
475 default "66000000" if CPU_SUBTYPE_SH4_202
478 This option is used to specify the peripheral clock frequency.
479 This is necessary for determining the reference clock value on
480 platforms lacking an RTC.
483 int "CPU Mode Pin Setting"
485 depends on CPU_SUBTYPE_SH7619 || CPU_SUBTYPE_SH7206
487 MD2 - MD0 pin setting.
489 source "kernel/time/Kconfig"
493 menu "CPU Frequency scaling"
495 source "drivers/cpufreq/Kconfig"
498 tristate "SuperH CPU Frequency driver"
500 select CPU_FREQ_TABLE
502 This adds the cpufreq driver for SuperH. At present, only
503 the SH-4 is supported.
505 For details, take a look at <file:Documentation/cpu-freq>.
511 source "arch/sh/drivers/Kconfig"
517 depends on SH_MPC1211
520 menu "Kernel features"
522 source kernel/Kconfig.hz
525 bool "kexec system call (EXPERIMENTAL)"
526 depends on EXPERIMENTAL
528 kexec is a system call that implements the ability to shutdown your
529 current kernel, and to start another kernel. It is like a reboot
530 but it is independent of the system firmware. And like a reboot
531 you can start any kernel with it, not just Linux.
533 The name comes from the similarity to the exec system call.
535 It is an ongoing process to be certain the hardware in a machine
536 is properly shutdown, so do not be surprised if this code does not
537 initially work for you. It may help to enable device hotplugging
538 support. As of this writing the exact hardware interface is
539 strongly in flux, so no good recommendation can be made.
542 bool "kernel crash dumps (EXPERIMENTAL)"
543 depends on EXPERIMENTAL
545 Generate crash dump after being started by kexec.
546 This should be normally only set in special crash dump kernels
547 which are loaded in the main kernel with kexec-tools into
548 a specially reserved region and then later executed after
549 a crash by kdump/kexec. The crash dump kernel must be compiled
550 to a memory address not used by the main kernel using
553 For more details see Documentation/kdump/kdump.txt
556 bool "Symmetric multi-processing support"
558 This enables support for systems with more than one CPU. If you have
559 a system with only one CPU, like most personal computers, say N. If
560 you have a system with more than one CPU, say Y.
562 If you say N here, the kernel will run on single and multiprocessor
563 machines, but will use only one CPU of a multiprocessor machine. If
564 you say Y here, the kernel will run on many, but not all,
565 singleprocessor machines. On a singleprocessor machine, the kernel
566 will run faster if you say N here.
568 People using multiprocessor machines who say Y here should also say
569 Y to "Enhanced Real Time Clock Support", below.
571 See also the <file:Documentation/smp.txt>,
572 <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available
573 at <http://www.tldp.org/docs.html#howto>.
575 If you don't know what to do here, say N.
578 int "Maximum number of CPUs (2-32)"
583 This allows you to specify the maximum number of CPUs which this
584 kernel will support. The maximum supported value is 32 and the
585 minimum value which makes sense is 2.
587 This is purely to save memory - each supported CPU adds
588 approximately eight kilobytes to the kernel image.
590 source "kernel/Kconfig.preempt"
595 depends on NEED_MULTIPLE_NODES
601 config ZERO_PAGE_OFFSET
602 hex "Zero page offset"
603 default "0x00004000" if SH_MPC1211 || SH_SH03
604 default "0x00010000" if PAGE_SIZE_64KB
605 default "0x00002000" if PAGE_SIZE_8KB
608 This sets the default offset of zero page.
610 config BOOT_LINK_OFFSET
611 hex "Link address offset for booting"
614 This option allows you to set the link address offset of the zImage.
615 This can be useful if you are on a board which has a small amount of
619 bool "Wakeup UBC on startup"
621 Selecting this option will wakeup the User Break Controller (UBC) on
622 startup. Although the UBC is left in an awake state when the processor
623 comes up, some boot loaders misbehave by putting the UBC to sleep in a
624 power saving state, which causes issues with things like ptrace().
629 bool "Default bootloader kernel arguments"
632 string "Initial kernel command string"
633 depends on CMDLINE_BOOL
634 default "console=ttySC1,115200"
640 # Even on SuperH devices which don't have an ISA bus,
641 # this variable helps the PCMCIA modules handle
642 # IRQ requesting properly -- Greg Banks.
644 # Though we're generally not interested in it when
645 # we're not using PCMCIA, so we make it dependent on
646 # PCMCIA outright. -- PFM.
651 Find out whether you have ISA slots on your motherboard. ISA is the
652 name of a bus system, i.e. the way the CPU talks to the other stuff
653 inside your box. Other bus systems are PCI, EISA, MicroChannel
654 (MCA) or VESA. ISA is an older system, now being displaced by PCI;
655 newer boards don't support it. If you have ISA, say Y, otherwise N.
660 The Extended Industry Standard Architecture (EISA) bus was
661 developed as an open alternative to the IBM MicroChannel bus.
663 The EISA bus provided some of the features of the IBM MicroChannel
664 bus while maintaining backward compatibility with cards made for
665 the older ISA bus. The EISA bus saw limited use between 1988 and
666 1995 when it was made obsolete by the PCI bus.
668 Say Y here if you are building a kernel for an EISA-based machine.
675 MicroChannel Architecture is found in some IBM PS/2 machines and
676 laptops. It is a bus system similar to PCI or ISA. See
677 <file:Documentation/mca.txt> (and especially the web page given
678 there) before attempting to build an MCA bus kernel.
684 tristate "SuperHyway Bus support"
685 depends on CPU_SUBTYPE_SH4_202
687 source "arch/sh/drivers/pci/Kconfig"
689 source "drivers/pci/Kconfig"
691 source "drivers/pcmcia/Kconfig"
693 source "drivers/pci/hotplug/Kconfig"
697 menu "Executable file formats"
699 source "fs/Kconfig.binfmt"
703 menu "Power management options (EXPERIMENTAL)"
704 depends on EXPERIMENTAL
706 source kernel/power/Kconfig
712 source "drivers/Kconfig"
716 source "arch/sh/oprofile/Kconfig"
718 source "arch/sh/Kconfig.debug"
720 source "security/Kconfig"
722 source "crypto/Kconfig"