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
25 config GENERIC_FIND_NEXT_BIT
29 config GENERIC_HWEIGHT
33 config GENERIC_HARDIRQS
37 config GENERIC_IRQ_PROBE
41 config GENERIC_CALIBRATE_DELAY
51 config SYS_SUPPORTS_APM_EMULATION
54 config ARCH_MAY_HAVE_PC_FDC
57 config STACKTRACE_SUPPORT
61 config LOCKDEP_SUPPORT
65 config ARCH_HAS_ILOG2_U32
69 config ARCH_HAS_ILOG2_U64
77 config SOLUTION_ENGINE
81 prompt "SuperH system type"
84 config SH_SOLUTION_ENGINE
86 select SOLUTION_ENGINE
88 Select SolutionEngine if configuring for a Hitachi SH7709
89 or SH7750 evaluation board.
91 config SH_7751_SOLUTION_ENGINE
92 bool "SolutionEngine7751"
93 select SOLUTION_ENGINE
94 select CPU_SUBTYPE_SH7751
96 Select 7751 SolutionEngine if configuring for a Hitachi SH7751
99 config SH_7300_SOLUTION_ENGINE
100 bool "SolutionEngine7300"
101 select SOLUTION_ENGINE
102 select CPU_SUBTYPE_SH7300
104 Select 7300 SolutionEngine if configuring for a Hitachi
105 SH7300(SH-Mobile V) evaluation board.
107 config SH_7343_SOLUTION_ENGINE
108 bool "SolutionEngine7343"
109 select SOLUTION_ENGINE
110 select CPU_SUBTYPE_SH7343
112 Select 7343 SolutionEngine if configuring for a Hitachi
113 SH7343 (SH-Mobile 3AS) evaluation board.
115 config SH_73180_SOLUTION_ENGINE
116 bool "SolutionEngine73180"
117 select SOLUTION_ENGINE
118 select CPU_SUBTYPE_SH73180
120 Select 73180 SolutionEngine if configuring for a Hitachi
121 SH73180(SH-Mobile 3) evaluation board.
123 config SH_7751_SYSTEMH
125 select CPU_SUBTYPE_SH7751R
127 Select SystemH if you are configuring for a Renesas SystemH
128 7751R evaluation board.
132 select SYS_SUPPORTS_APM_EMULATION
134 Select HP6XX if configuring for a HP jornada HP6xx.
135 More information (hardware only) at
136 <http://www.hp.com/jornada/>.
140 select CPU_SUBTYPE_SH7604
142 Select Saturn if configuring for a SEGA Saturn.
146 select CPU_SUBTYPE_SH7091
148 Select Dreamcast if configuring for a SEGA Dreamcast.
150 <http://www.m17n.org/linux-sh/dreamcast/>. There is a
151 Dreamcast project is at <http://linuxdc.sourceforge.net/>.
154 bool "Interface MPC1211"
156 CTP/PCI-SH02 is a CPU module computer that is produced
157 by Interface Corporation.
158 More information at <http://www.interface.co.jp>
161 bool "Interface CTP/PCI-SH03"
163 CTP/PCI-SH03 is a CPU module computer that is produced
164 by Interface Corporation.
165 More information at <http://www.interface.co.jp>
167 config SH_SECUREEDGE5410
168 bool "SecureEdge5410"
169 select CPU_SUBTYPE_SH7751R
171 Select SecureEdge5410 if configuring for a SnapGear SH board.
172 This includes both the OEM SecureEdge products as well as the
175 config SH_HS7751RVOIP
177 select CPU_SUBTYPE_SH7751R
179 Select HS7751RVOIP if configuring for a Renesas Technology
183 bool "SH7710-VOIP-GW"
184 select CPU_SUBTYPE_SH7710
186 Select this option to build a kernel for the SH7710 based
191 select CPU_SUBTYPE_SH7751R
193 Select RTS7751R2D if configuring for a Renesas Technology
194 Sales SH-Graphics board.
198 select CPU_SUBTYPE_SH7780
200 Select R7780RP-1 if configuring for a Renesas Solutions
205 select CPU_SUBTYPE_SH7705
207 config SH_SH4202_MICRODEV
208 bool "SH4-202 MicroDev"
209 select CPU_SUBTYPE_SH4_202
211 Select SH4-202 MicroDev if configuring for a SuperH MicroDev board
216 select CPU_SUBTYPE_SH7751R
218 I-O DATA DEVICE, INC. "LANDISK Series" support.
222 select CPU_SUBTYPE_SH7751R
224 Select Titan if you are configuring for a Nimble Microsystems
229 select CPU_SUBTYPE_SH7706
231 Select SHMIN if configuring for the SHMIN board.
233 config SH_7206_SOLUTION_ENGINE
234 bool "SolutionEngine7206"
235 select CPU_SUBTYPE_SH7206
237 Select 7206 SolutionEngine if configuring for a Hitachi SH7206
240 config SH_7619_SOLUTION_ENGINE
241 bool "SolutionEngine7619"
242 select CPU_SUBTYPE_SH7619
244 Select 7619 SolutionEngine if configuring for a Hitachi SH7619
250 "Bare CPU" aka "unknown" means an SH-based system which is not one
251 of the specific ones mentioned above, which means you need to enter
252 all sorts of stuff like CONFIG_MEMORY_START because the config
253 system doesn't already know what it is. You get a machine vector
254 without any platform-specific code in it, so things like the RTC may
257 This option is for the early stages of porting to a new machine.
261 source "arch/sh/mm/Kconfig"
264 bool "Compact Flash Enabler support"
265 depends on SH_SOLUTION_ENGINE || SH_UNKNOWN || SH_SH03
267 Compact Flash is a small, removable mass storage device introduced
268 in 1994 originally as a PCMCIA device. If you say `Y' here, you
269 compile in support for Compact Flash devices directly connected to
270 a SuperH processor. A Compact Flash FAQ is available at
271 <http://www.compactflash.org/faqs/faq.htm>.
273 If your board has "Directly Connected" CompactFlash at area 5 or 6,
274 you may want to enable this option. Then, you can use CF as
275 primary IDE drive (only tested for SanDisk).
277 If in doubt, select 'N'.
280 prompt "Compact Flash Connection Area"
281 depends on CF_ENABLER
287 If your board has "Directly Connected" CompactFlash, You should
288 select the area where your CF is connected to.
290 - "Area5" if CompactFlash is connected to Area 5 (0x14000000)
291 - "Area6" if it is connected to Area 6 (0x18000000)
293 "Area6" will work for most boards.
302 depends on CF_ENABLER
303 default "0xb8000000" if CF_AREA6
304 default "0xb4000000" if CF_AREA5
306 menu "Processor features"
309 prompt "Endianess selection"
310 default CPU_LITTLE_ENDIAN
312 Some SuperH machines can be configured for either little or big
313 endian byte order. These modes require different kernels.
315 config CPU_LITTLE_ENDIAN
318 config CPU_BIG_ENDIAN
328 Selecting this option will enable support for SH processors that
329 have FPU units (ie, SH77xx).
331 This option must be set in order to enable the FPU.
334 bool "FPU emulation support"
335 depends on !SH_FPU && EXPERIMENTAL
338 Selecting this option will enable support for software FPU emulation.
339 Most SH-3 users will want to say Y here, whereas most SH-4 users will
344 default y if SH4AL_DSP || !CPU_SH4
347 Selecting this option will enable support for SH processors that
348 have DSP units (ie, SH2-DSP, SH3-DSP, and SH4AL-DSP).
350 This option must be set in order to enable the DSP.
357 Selecting this option will allow the Linux kernel to use SH3 on-chip
362 config SH_STORE_QUEUES
363 bool "Support for Store Queues"
366 Selecting this option will enable an in-kernel API for manipulating
367 the store queues integrated in the SH-4 processors.
369 config SPECULATIVE_EXECUTION
370 bool "Speculative subroutine return"
371 depends on CPU_SUBTYPE_SH7780 && EXPERIMENTAL
373 This enables support for a speculative instruction fetch for
374 subroutine return. There are various pitfalls associated with
375 this, as outlined in the SH7780 hardware manual.
379 config CPU_HAS_INTEVT
382 config CPU_HAS_PINT_IRQ
385 config CPU_HAS_MASKREG_IRQ
388 config CPU_HAS_INTC2_IRQ
391 config CPU_HAS_IPR_IRQ
396 depends on CPU_SH3 || CPU_SH4
399 This will enable the use of SR.RB register bank usage. Processors
400 that are lacking this bit must have another method in place for
401 accomplishing what is taken care of by the banked registers.
403 See <file:Documentation/sh/register-banks.txt> for further
404 information on SR.RB and register banking in the kernel in general.
412 depends on !GENERIC_TIME
415 bool "TMU timer support"
416 depends on CPU_SH3 || CPU_SH4
419 This enables the use of the TMU as the system timer.
422 bool "CMT timer support"
426 This enables the use of the CMT as the system timer.
429 bool "MTU2 timer support"
433 This enables the use of the MTU2 as the system timer.
437 source "arch/sh/boards/renesas/hs7751rvoip/Kconfig"
439 source "arch/sh/boards/renesas/rts7751r2d/Kconfig"
441 source "arch/sh/boards/renesas/r7780rp/Kconfig"
445 default "28" if CPU_SUBTYPE_SH7780
446 default "86" if CPU_SUBTYPE_SH7619
447 default "140" if CPU_SUBTYPE_SH7206
451 bool "Dynamic tick timer"
453 Select this option if you want to disable continuous timer ticks
454 and have them programmed to occur as required. This option saves
455 power as the system can remain in idle state for longer.
457 By default dynamic tick is disabled during the boot, and can be
458 manually enabled with:
460 echo 1 > /sys/devices/system/timer/timer0/dyn_tick
462 Alternatively, if you want dynamic tick automatically enabled
463 during boot, pass "dyntick=enable" via the kernel command string.
465 Please note that dynamic tick may affect the accuracy of
466 timekeeping on some platforms depending on the implementation.
469 int "Peripheral clock frequency (in Hz)"
470 default "27000000" if CPU_SUBTYPE_SH73180 || CPU_SUBTYPE_SH7343
471 default "31250000" if CPU_SUBTYPE_SH7619
472 default "33333333" if CPU_SUBTYPE_SH7300 || CPU_SUBTYPE_SH7770 || \
473 CPU_SUBTYPE_SH7760 || CPU_SUBTYPE_SH7705 || \
475 default "50000000" if CPU_SUBTYPE_SH7750 || CPU_SUBTYPE_SH7780
476 default "60000000" if CPU_SUBTYPE_SH7751
477 default "66000000" if CPU_SUBTYPE_SH4_202
479 This option is used to specify the peripheral clock frequency.
480 This is necessary for determining the reference clock value on
481 platforms lacking an RTC.
484 int "CPU Mode Pin Setting"
486 depends on CPU_SUBTYPE_SH7619 || CPU_SUBTYPE_SH7206
488 MD2 - MD0 pin setting.
490 menu "CPU Frequency scaling"
492 source "drivers/cpufreq/Kconfig"
495 tristate "SuperH CPU Frequency driver"
497 select CPU_FREQ_TABLE
499 This adds the cpufreq driver for SuperH. At present, only
500 the SH-4 is supported.
502 For details, take a look at <file:Documentation/cpu-freq>.
508 source "arch/sh/drivers/dma/Kconfig"
510 source "arch/sh/cchips/Kconfig"
514 depends on SH_MPC1211 || SH_SH03 || \
516 SH_RTS7751R2D || SH_SH4202_MICRODEV || SH_LANDISK || \
519 Use the power-on LED on your machine as a load meter. The exact
520 behavior is platform-dependent, but normally the flash frequency is
521 a hyperbolic function of the 5-minute load average.
523 source "arch/sh/drivers/Kconfig"
529 depends on SH_MPC1211
532 menu "Kernel features"
534 source kernel/Kconfig.hz
537 bool "kexec system call (EXPERIMENTAL)"
538 depends on EXPERIMENTAL
540 kexec is a system call that implements the ability to shutdown your
541 current kernel, and to start another kernel. It is like a reboot
542 but it is independent of the system firmware. And like a reboot
543 you can start any kernel with it, not just Linux.
545 The name comes from the similarity to the exec system call.
547 It is an ongoing process to be certain the hardware in a machine
548 is properly shutdown, so do not be surprised if this code does not
549 initially work for you. It may help to enable device hotplugging
550 support. As of this writing the exact hardware interface is
551 strongly in flux, so no good recommendation can be made.
554 bool "Symmetric multi-processing support"
556 This enables support for systems with more than one CPU. If you have
557 a system with only one CPU, like most personal computers, say N. If
558 you have a system with more than one CPU, say Y.
560 If you say N here, the kernel will run on single and multiprocessor
561 machines, but will use only one CPU of a multiprocessor machine. If
562 you say Y here, the kernel will run on many, but not all,
563 singleprocessor machines. On a singleprocessor machine, the kernel
564 will run faster if you say N here.
566 People using multiprocessor machines who say Y here should also say
567 Y to "Enhanced Real Time Clock Support", below.
569 See also the <file:Documentation/smp.txt>,
570 <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available
571 at <http://www.tldp.org/docs.html#howto>.
573 If you don't know what to do here, say N.
576 int "Maximum number of CPUs (2-32)"
581 This allows you to specify the maximum number of CPUs which this
582 kernel will support. The maximum supported value is 32 and the
583 minimum value which makes sense is 2.
585 This is purely to save memory - each supported CPU adds
586 approximately eight kilobytes to the kernel image.
588 source "kernel/Kconfig.preempt"
593 depends on NEED_MULTIPLE_NODES
599 config ZERO_PAGE_OFFSET
600 hex "Zero page offset"
601 default "0x00004000" if SH_MPC1211 || SH_SH03
602 default "0x00010000" if PAGE_SIZE_64KB
603 default "0x00002000" if PAGE_SIZE_8KB
606 This sets the default offset of zero page.
608 config BOOT_LINK_OFFSET
609 hex "Link address offset for booting"
612 This option allows you to set the link address offset of the zImage.
613 This can be useful if you are on a board which has a small amount of
617 bool "Wakeup UBC on startup"
619 Selecting this option will wakeup the User Break Controller (UBC) on
620 startup. Although the UBC is left in an awake state when the processor
621 comes up, some boot loaders misbehave by putting the UBC to sleep in a
622 power saving state, which causes issues with things like ptrace().
627 bool "Default bootloader kernel arguments"
630 string "Initial kernel command string"
631 depends on CMDLINE_BOOL
632 default "console=ttySC1,115200"
638 # Even on SuperH devices which don't have an ISA bus,
639 # this variable helps the PCMCIA modules handle
640 # IRQ requesting properly -- Greg Banks.
642 # Though we're generally not interested in it when
643 # we're not using PCMCIA, so we make it dependent on
644 # PCMCIA outright. -- PFM.
649 Find out whether you have ISA slots on your motherboard. ISA is the
650 name of a bus system, i.e. the way the CPU talks to the other stuff
651 inside your box. Other bus systems are PCI, EISA, MicroChannel
652 (MCA) or VESA. ISA is an older system, now being displaced by PCI;
653 newer boards don't support it. If you have ISA, say Y, otherwise N.
658 The Extended Industry Standard Architecture (EISA) bus was
659 developed as an open alternative to the IBM MicroChannel bus.
661 The EISA bus provided some of the features of the IBM MicroChannel
662 bus while maintaining backward compatibility with cards made for
663 the older ISA bus. The EISA bus saw limited use between 1988 and
664 1995 when it was made obsolete by the PCI bus.
666 Say Y here if you are building a kernel for an EISA-based machine.
673 MicroChannel Architecture is found in some IBM PS/2 machines and
674 laptops. It is a bus system similar to PCI or ISA. See
675 <file:Documentation/mca.txt> (and especially the web page given
676 there) before attempting to build an MCA bus kernel.
682 tristate "SuperHyway Bus support"
683 depends on CPU_SUBTYPE_SH4_202
685 source "arch/sh/drivers/pci/Kconfig"
687 source "drivers/pci/Kconfig"
689 source "drivers/pcmcia/Kconfig"
691 source "drivers/pci/hotplug/Kconfig"
695 menu "Executable file formats"
697 source "fs/Kconfig.binfmt"
701 menu "Power management options (EXPERIMENTAL)"
702 depends on EXPERIMENTAL
704 source kernel/power/Kconfig
710 source "drivers/Kconfig"
714 source "arch/sh/oprofile/Kconfig"
716 source "arch/sh/Kconfig.debug"
718 source "security/Kconfig"
720 source "crypto/Kconfig"