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/>.
141 Select EC3104 if configuring for a system with an Eclipse
142 International EC3104 chip, e.g. the Harris AD2000.
146 select CPU_SUBTYPE_SH7604
148 Select Saturn if configuring for a SEGA Saturn.
152 select CPU_SUBTYPE_SH7091
154 Select Dreamcast if configuring for a SEGA Dreamcast.
156 <http://www.m17n.org/linux-sh/dreamcast/>. There is a
157 Dreamcast project is at <http://linuxdc.sourceforge.net/>.
163 bool "Interface MPC1211"
165 CTP/PCI-SH02 is a CPU module computer that is produced
166 by Interface Corporation.
167 More information at <http://www.interface.co.jp>
170 bool "Interface CTP/PCI-SH03"
172 CTP/PCI-SH03 is a CPU module computer that is produced
173 by Interface Corporation.
174 More information at <http://www.interface.co.jp>
176 config SH_SECUREEDGE5410
177 bool "SecureEdge5410"
178 select CPU_SUBTYPE_SH7751R
180 Select SecureEdge5410 if configuring for a SnapGear SH board.
181 This includes both the OEM SecureEdge products as well as the
184 config SH_HS7751RVOIP
186 select CPU_SUBTYPE_SH7751R
188 Select HS7751RVOIP if configuring for a Renesas Technology
192 bool "SH7710-VOIP-GW"
193 select CPU_SUBTYPE_SH7710
195 Select this option to build a kernel for the SH7710 based
200 select CPU_SUBTYPE_SH7751R
202 Select RTS7751R2D if configuring for a Renesas Technology
203 Sales SH-Graphics board.
207 select CPU_SUBTYPE_SH7780
209 Select R7780RP-1 if configuring for a Renesas Solutions
214 select CPU_SUBTYPE_SH7705
216 config SH_SH4202_MICRODEV
217 bool "SH4-202 MicroDev"
218 select CPU_SUBTYPE_SH4_202
220 Select SH4-202 MicroDev if configuring for a SuperH MicroDev board
225 select CPU_SUBTYPE_SH7751R
227 I-O DATA DEVICE, INC. "LANDISK Series" support.
231 select CPU_SUBTYPE_SH7751R
233 Select Titan if you are configuring for a Nimble Microsystems
238 select CPU_SUBTYPE_SH7706
240 Select SHMIN if configuring for the SHMIN board.
242 config SH_7206_SOLUTION_ENGINE
243 bool "SolutionEngine7206"
244 select CPU_SUBTYPE_SH7206
246 Select 7206 SolutionEngine if configuring for a Hitachi SH7206
249 config SH_7619_SOLUTION_ENGINE
250 bool "SolutionEngine7619"
251 select CPU_SUBTYPE_SH7619
253 Select 7619 SolutionEngine if configuring for a Hitachi SH7619
259 "Bare CPU" aka "unknown" means an SH-based system which is not one
260 of the specific ones mentioned above, which means you need to enter
261 all sorts of stuff like CONFIG_MEMORY_START because the config
262 system doesn't already know what it is. You get a machine vector
263 without any platform-specific code in it, so things like the RTC may
266 This option is for the early stages of porting to a new machine.
270 source "arch/sh/mm/Kconfig"
273 bool "Compact Flash Enabler support"
274 depends on SH_SOLUTION_ENGINE || SH_UNKNOWN || SH_SH03
276 Compact Flash is a small, removable mass storage device introduced
277 in 1994 originally as a PCMCIA device. If you say `Y' here, you
278 compile in support for Compact Flash devices directly connected to
279 a SuperH processor. A Compact Flash FAQ is available at
280 <http://www.compactflash.org/faqs/faq.htm>.
282 If your board has "Directly Connected" CompactFlash at area 5 or 6,
283 you may want to enable this option. Then, you can use CF as
284 primary IDE drive (only tested for SanDisk).
286 If in doubt, select 'N'.
289 prompt "Compact Flash Connection Area"
290 depends on CF_ENABLER
296 If your board has "Directly Connected" CompactFlash, You should
297 select the area where your CF is connected to.
299 - "Area5" if CompactFlash is connected to Area 5 (0x14000000)
300 - "Area6" if it is connected to Area 6 (0x18000000)
302 "Area6" will work for most boards.
311 depends on CF_ENABLER
312 default "0xb8000000" if CF_AREA6
313 default "0xb4000000" if CF_AREA5
315 menu "Processor features"
318 prompt "Endianess selection"
319 default CPU_LITTLE_ENDIAN
321 Some SuperH machines can be configured for either little or big
322 endian byte order. These modes require different kernels.
324 config CPU_LITTLE_ENDIAN
327 config CPU_BIG_ENDIAN
337 Selecting this option will enable support for SH processors that
338 have FPU units (ie, SH77xx).
340 This option must be set in order to enable the FPU.
343 bool "FPU emulation support"
344 depends on !SH_FPU && EXPERIMENTAL
347 Selecting this option will enable support for software FPU emulation.
348 Most SH-3 users will want to say Y here, whereas most SH-4 users will
353 default y if SH4AL_DSP || !CPU_SH4
356 Selecting this option will enable support for SH processors that
357 have DSP units (ie, SH2-DSP, SH3-DSP, and SH4AL-DSP).
359 This option must be set in order to enable the DSP.
366 Selecting this option will allow the Linux kernel to use SH3 on-chip
371 config SH_STORE_QUEUES
372 bool "Support for Store Queues"
375 Selecting this option will enable an in-kernel API for manipulating
376 the store queues integrated in the SH-4 processors.
378 config CPU_HAS_INTEVT
381 config CPU_HAS_PINT_IRQ
384 config CPU_HAS_MASKREG_IRQ
387 config CPU_HAS_INTC2_IRQ
390 config CPU_HAS_IPR_IRQ
395 depends on CPU_SH3 || CPU_SH4
398 This will enable the use of SR.RB register bank usage. Processors
399 that are lacking this bit must have another method in place for
400 accomplishing what is taken care of by the banked registers.
402 See <file:Documentation/sh/register-banks.txt> for further
403 information on SR.RB and register banking in the kernel in general.
411 depends on !GENERIC_TIME
414 bool "TMU timer support"
415 depends on CPU_SH3 || CPU_SH4
418 This enables the use of the TMU as the system timer.
421 bool "CMT timer support"
425 This enables the use of the CMT as the system timer.
428 bool "MTU2 timer support"
432 This enables the use of the MTU2 as the system timer.
436 source "arch/sh/boards/renesas/hs7751rvoip/Kconfig"
438 source "arch/sh/boards/renesas/rts7751r2d/Kconfig"
440 source "arch/sh/boards/renesas/r7780rp/Kconfig"
444 default "28" if CPU_SUBTYPE_SH7780
445 default "86" if CPU_SUBTYPE_SH7619
446 default "140" if CPU_SUBTYPE_SH7206
450 bool "Dynamic tick timer"
452 Select this option if you want to disable continuous timer ticks
453 and have them programmed to occur as required. This option saves
454 power as the system can remain in idle state for longer.
456 By default dynamic tick is disabled during the boot, and can be
457 manually enabled with:
459 echo 1 > /sys/devices/system/timer/timer0/dyn_tick
461 Alternatively, if you want dynamic tick automatically enabled
462 during boot, pass "dyntick=enable" via the kernel command string.
464 Please note that dynamic tick may affect the accuracy of
465 timekeeping on some platforms depending on the implementation.
468 int "Peripheral clock frequency (in Hz)"
469 default "27000000" if CPU_SUBTYPE_SH73180 || CPU_SUBTYPE_SH7343
470 default "31250000" if CPU_SUBTYPE_SH7619
471 default "33333333" if CPU_SUBTYPE_SH7300 || CPU_SUBTYPE_SH7770 || \
472 CPU_SUBTYPE_SH7760 || CPU_SUBTYPE_SH7705 || \
474 default "50000000" if CPU_SUBTYPE_SH7750 || CPU_SUBTYPE_SH7780
475 default "60000000" if CPU_SUBTYPE_SH7751
476 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 menu "CPU Frequency scaling"
491 source "drivers/cpufreq/Kconfig"
494 tristate "SuperH CPU Frequency driver"
496 select CPU_FREQ_TABLE
498 This adds the cpufreq driver for SuperH. At present, only
499 the SH-4 is supported.
501 For details, take a look at <file:Documentation/cpu-freq>.
507 source "arch/sh/drivers/dma/Kconfig"
509 source "arch/sh/cchips/Kconfig"
513 depends on SH_MPC1211 || SH_SH03 || \
514 SH_BIGSUR || SOLUTION_ENGINE || \
515 SH_RTS7751R2D || SH_SH4202_MICRODEV || SH_LANDISK || \
518 Use the power-on LED on your machine as a load meter. The exact
519 behavior is platform-dependent, but normally the flash frequency is
520 a hyperbolic function of the 5-minute load average.
522 source "arch/sh/drivers/Kconfig"
528 depends on SH_MPC1211
531 menu "Kernel features"
533 source kernel/Kconfig.hz
536 bool "kexec system call (EXPERIMENTAL)"
537 depends on EXPERIMENTAL
539 kexec is a system call that implements the ability to shutdown your
540 current kernel, and to start another kernel. It is like a reboot
541 but it is independent of the system firmware. And like a reboot
542 you can start any kernel with it, not just Linux.
544 The name comes from the similarity to the exec system call.
546 It is an ongoing process to be certain the hardware in a machine
547 is properly shutdown, so do not be surprised if this code does not
548 initially work for you. It may help to enable device hotplugging
549 support. As of this writing the exact hardware interface is
550 strongly in flux, so no good recommendation can be made.
553 bool "Symmetric multi-processing support"
555 This enables support for systems with more than one CPU. If you have
556 a system with only one CPU, like most personal computers, say N. If
557 you have a system with more than one CPU, say Y.
559 If you say N here, the kernel will run on single and multiprocessor
560 machines, but will use only one CPU of a multiprocessor machine. If
561 you say Y here, the kernel will run on many, but not all,
562 singleprocessor machines. On a singleprocessor machine, the kernel
563 will run faster if you say N here.
565 People using multiprocessor machines who say Y here should also say
566 Y to "Enhanced Real Time Clock Support", below.
568 See also the <file:Documentation/smp.txt>,
569 <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available
570 at <http://www.tldp.org/docs.html#howto>.
572 If you don't know what to do here, say N.
575 int "Maximum number of CPUs (2-32)"
580 This allows you to specify the maximum number of CPUs which this
581 kernel will support. The maximum supported value is 32 and the
582 minimum value which makes sense is 2.
584 This is purely to save memory - each supported CPU adds
585 approximately eight kilobytes to the kernel image.
587 source "kernel/Kconfig.preempt"
592 depends on NEED_MULTIPLE_NODES
598 config ZERO_PAGE_OFFSET
599 hex "Zero page offset"
600 default "0x00004000" if SH_MPC1211 || SH_SH03
601 default "0x00010000" if PAGE_SIZE_64KB
602 default "0x00002000" if PAGE_SIZE_8KB
605 This sets the default offset of zero page.
607 config BOOT_LINK_OFFSET
608 hex "Link address offset for booting"
611 This option allows you to set the link address offset of the zImage.
612 This can be useful if you are on a board which has a small amount of
616 bool "Wakeup UBC on startup"
618 Selecting this option will wakeup the User Break Controller (UBC) on
619 startup. Although the UBC is left in an awake state when the processor
620 comes up, some boot loaders misbehave by putting the UBC to sleep in a
621 power saving state, which causes issues with things like ptrace().
626 bool "Default bootloader kernel arguments"
629 string "Initial kernel command string"
630 depends on CMDLINE_BOOL
631 default "console=ttySC1,115200"
637 # Even on SuperH devices which don't have an ISA bus,
638 # this variable helps the PCMCIA modules handle
639 # IRQ requesting properly -- Greg Banks.
641 # Though we're generally not interested in it when
642 # we're not using PCMCIA, so we make it dependent on
643 # PCMCIA outright. -- PFM.
648 Find out whether you have ISA slots on your motherboard. ISA is the
649 name of a bus system, i.e. the way the CPU talks to the other stuff
650 inside your box. Other bus systems are PCI, EISA, MicroChannel
651 (MCA) or VESA. ISA is an older system, now being displaced by PCI;
652 newer boards don't support it. If you have ISA, say Y, otherwise N.
657 The Extended Industry Standard Architecture (EISA) bus was
658 developed as an open alternative to the IBM MicroChannel bus.
660 The EISA bus provided some of the features of the IBM MicroChannel
661 bus while maintaining backward compatibility with cards made for
662 the older ISA bus. The EISA bus saw limited use between 1988 and
663 1995 when it was made obsolete by the PCI bus.
665 Say Y here if you are building a kernel for an EISA-based machine.
672 MicroChannel Architecture is found in some IBM PS/2 machines and
673 laptops. It is a bus system similar to PCI or ISA. See
674 <file:Documentation/mca.txt> (and especially the web page given
675 there) before attempting to build an MCA bus kernel.
681 tristate "SuperHyway Bus support"
682 depends on CPU_SUBTYPE_SH4_202
684 source "arch/sh/drivers/pci/Kconfig"
686 source "drivers/pci/Kconfig"
688 source "drivers/pcmcia/Kconfig"
690 source "drivers/pci/hotplug/Kconfig"
694 menu "Executable file formats"
696 source "fs/Kconfig.binfmt"
700 menu "Power management options (EXPERIMENTAL)"
701 depends on EXPERIMENTAL
703 source kernel/power/Kconfig
709 source "drivers/Kconfig"
713 source "arch/sh/oprofile/Kconfig"
715 source "arch/sh/Kconfig.debug"
717 source "security/Kconfig"
719 source "crypto/Kconfig"