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_PM
61 config SYS_SUPPORTS_APM_EMULATION
63 select SYS_SUPPORTS_PM
65 config SYS_SUPPORTS_SMP
68 config SYS_SUPPORTS_NUMA
71 config SYS_SUPPORTS_PCI
74 config ARCH_MAY_HAVE_PC_FDC
77 config STACKTRACE_SUPPORT
81 config LOCKDEP_SUPPORT
85 config ARCH_HAS_ILOG2_U32
89 config ARCH_HAS_ILOG2_U64
97 source "arch/sh/mm/Kconfig"
99 menu "Processor features"
102 prompt "Endianess selection"
103 default CPU_LITTLE_ENDIAN
105 Some SuperH machines can be configured for either little or big
106 endian byte order. These modes require different kernels.
108 config CPU_LITTLE_ENDIAN
111 config CPU_BIG_ENDIAN
121 Selecting this option will enable support for SH processors that
122 have FPU units (ie, SH77xx).
124 This option must be set in order to enable the FPU.
127 bool "FPU emulation support"
128 depends on !SH_FPU && EXPERIMENTAL
131 Selecting this option will enable support for software FPU emulation.
132 Most SH-3 users will want to say Y here, whereas most SH-4 users will
137 default y if SH4AL_DSP || !CPU_SH4
140 Selecting this option will enable support for SH processors that
141 have DSP units (ie, SH2-DSP, SH3-DSP, and SH4AL-DSP).
143 This option must be set in order to enable the DSP.
150 Selecting this option will allow the Linux kernel to use SH3 on-chip
155 config SH_STORE_QUEUES
156 bool "Support for Store Queues"
159 Selecting this option will enable an in-kernel API for manipulating
160 the store queues integrated in the SH-4 processors.
162 config SPECULATIVE_EXECUTION
163 bool "Speculative subroutine return"
164 depends on CPU_SUBTYPE_SH7780 && EXPERIMENTAL
166 This enables support for a speculative instruction fetch for
167 subroutine return. There are various pitfalls associated with
168 this, as outlined in the SH7780 hardware manual.
172 config CPU_HAS_INTEVT
175 config CPU_HAS_PINT_IRQ
178 config CPU_HAS_MASKREG_IRQ
181 config CPU_HAS_INTC2_IRQ
184 config CPU_HAS_IPR_IRQ
189 depends on CPU_SH3 || CPU_SH4
192 This will enable the use of SR.RB register bank usage. Processors
193 that are lacking this bit must have another method in place for
194 accomplishing what is taken care of by the banked registers.
196 See <file:Documentation/sh/register-banks.txt> for further
197 information on SR.RB and register banking in the kernel in general.
206 config SOLUTION_ENGINE
209 config SH_SOLUTION_ENGINE
210 bool "SolutionEngine"
211 select SOLUTION_ENGINE
212 depends on CPU_SUBTYPE_SH7709 || CPU_SUBTYPE_SH7750
214 Select SolutionEngine if configuring for a Hitachi SH7709
215 or SH7750 evaluation board.
217 config SH_7206_SOLUTION_ENGINE
218 bool "SolutionEngine7206"
219 select SOLUTION_ENGINE
220 depends on CPU_SUBTYPE_SH7206
222 Select 7206 SolutionEngine if configuring for a Hitachi SH7206
225 config SH_7619_SOLUTION_ENGINE
226 bool "SolutionEngine7619"
227 select SOLUTION_ENGINE
228 depends on CPU_SUBTYPE_SH7619
230 Select 7619 SolutionEngine if configuring for a Hitachi SH7619
233 config SH_7722_SOLUTION_ENGINE
234 bool "SolutionEngine7722"
235 select SOLUTION_ENGINE
236 depends on CPU_SUBTYPE_SH7722
238 Select 7722 SolutionEngine if configuring for a Hitachi SH772
241 config SH_7751_SOLUTION_ENGINE
242 bool "SolutionEngine7751"
243 select SOLUTION_ENGINE
244 depends on CPU_SUBTYPE_SH7751
246 Select 7751 SolutionEngine if configuring for a Hitachi SH7751
249 config SH_7780_SOLUTION_ENGINE
250 bool "SolutionEngine7780"
251 select SOLUTION_ENGINE
252 select SYS_SUPPORTS_PCI
253 depends on CPU_SUBTYPE_SH7780
255 Select 7780 SolutionEngine if configuring for a Renesas SH7780
258 config SH_7300_SOLUTION_ENGINE
259 bool "SolutionEngine7300"
260 select SOLUTION_ENGINE
261 depends on CPU_SUBTYPE_SH7300
263 Select 7300 SolutionEngine if configuring for a Hitachi
264 SH7300(SH-Mobile V) evaluation board.
266 config SH_7343_SOLUTION_ENGINE
267 bool "SolutionEngine7343"
268 select SOLUTION_ENGINE
269 depends on CPU_SUBTYPE_SH7343
271 Select 7343 SolutionEngine if configuring for a Hitachi
272 SH7343 (SH-Mobile 3AS) evaluation board.
274 config SH_73180_SOLUTION_ENGINE
275 bool "SolutionEngine73180"
276 select SOLUTION_ENGINE
277 depends on CPU_SUBTYPE_SH73180
279 Select 73180 SolutionEngine if configuring for a Hitachi
280 SH73180(SH-Mobile 3) evaluation board.
282 config SH_7751_SYSTEMH
284 depends on CPU_SUBTYPE_SH7751R
286 Select SystemH if you are configuring for a Renesas SystemH
287 7751R evaluation board.
291 select SYS_SUPPORTS_APM_EMULATION
292 select HD6446X_SERIES
293 depends on CPU_SUBTYPE_SH7709
295 Select HP6XX if configuring for a HP jornada HP6xx.
296 More information (hardware only) at
297 <http://www.hp.com/jornada/>.
301 select SYS_SUPPORTS_PCI
302 depends on CPU_SUBTYPE_SH7091
304 Select Dreamcast if configuring for a SEGA Dreamcast.
306 <http://www.m17n.org/linux-sh/dreamcast/>. There is a
307 Dreamcast project is at <http://linuxdc.sourceforge.net/>.
310 bool "Interface MPC1211"
311 depends on CPU_SUBTYPE_SH7751 && BROKEN
313 CTP/PCI-SH02 is a CPU module computer that is produced
314 by Interface Corporation.
315 More information at <http://www.interface.co.jp>
318 bool "Interface CTP/PCI-SH03"
319 depends on CPU_SUBTYPE_SH7751 && BROKEN
320 select SYS_SUPPORTS_PCI
322 CTP/PCI-SH03 is a CPU module computer that is produced
323 by Interface Corporation.
324 More information at <http://www.interface.co.jp>
326 config SH_SECUREEDGE5410
327 bool "SecureEdge5410"
328 depends on CPU_SUBTYPE_SH7751R
329 select SYS_SUPPORTS_PCI
331 Select SecureEdge5410 if configuring for a SnapGear SH board.
332 This includes both the OEM SecureEdge products as well as the
335 config SH_HS7751RVOIP
337 depends on CPU_SUBTYPE_SH7751R
339 Select HS7751RVOIP if configuring for a Renesas Technology
343 bool "SH7710-VOIP-GW"
344 depends on CPU_SUBTYPE_SH7710
346 Select this option to build a kernel for the SH7710 based
351 depends on CPU_SUBTYPE_SH7751R
352 select SYS_SUPPORTS_PCI
354 Select RTS7751R2D if configuring for a Renesas Technology
355 Sales SH-Graphics board.
359 depends on CPU_SUBTYPE_SH7780 || CPU_SUBTYPE_SH7785
360 select SYS_SUPPORTS_PCI
364 depends on CPU_SUBTYPE_SH7705
366 config SH_SH4202_MICRODEV
367 bool "SH4-202 MicroDev"
368 depends on CPU_SUBTYPE_SH4_202
370 Select SH4-202 MicroDev if configuring for a SuperH MicroDev board
375 depends on CPU_SUBTYPE_SH7751R
376 select SYS_SUPPORTS_PCI
378 I-O DATA DEVICE, INC. "LANDISK Series" support.
382 depends on CPU_SUBTYPE_SH7751R
383 select SYS_SUPPORTS_PCI
385 Select Titan if you are configuring for a Nimble Microsystems
390 depends on CPU_SUBTYPE_SH7706
392 Select SHMIN if configuring for the SHMIN board.
396 depends on CPU_SUBTYPE_SH7751R
397 select SYS_SUPPORTS_PCI
399 Select L-BOX RE2 if configuring for the NTT COMWARE L-BOX RE2.
403 source "arch/sh/boards/renesas/hs7751rvoip/Kconfig"
404 source "arch/sh/boards/renesas/rts7751r2d/Kconfig"
405 source "arch/sh/boards/renesas/r7780rp/Kconfig"
408 bool "Compact Flash Enabler support"
409 depends on SH_SOLUTION_ENGINE || SH_SH03
411 Compact Flash is a small, removable mass storage device introduced
412 in 1994 originally as a PCMCIA device. If you say `Y' here, you
413 compile in support for Compact Flash devices directly connected to
414 a SuperH processor. A Compact Flash FAQ is available at
415 <http://www.compactflash.org/faqs/faq.htm>.
417 If your board has "Directly Connected" CompactFlash at area 5 or 6,
418 you may want to enable this option. Then, you can use CF as
419 primary IDE drive (only tested for SanDisk).
421 If in doubt, select 'N'.
424 prompt "Compact Flash Connection Area"
425 depends on CF_ENABLER
431 If your board has "Directly Connected" CompactFlash, You should
432 select the area where your CF is connected to.
434 - "Area5" if CompactFlash is connected to Area 5 (0x14000000)
435 - "Area6" if it is connected to Area 6 (0x18000000)
437 "Area6" will work for most boards.
446 depends on CF_ENABLER
447 default "0xb8000000" if CF_AREA6
448 default "0xb4000000" if CF_AREA5
451 menu "Timer and clock configuration"
454 bool "TMU timer support"
455 depends on CPU_SH3 || CPU_SH4
457 select GENERIC_CLOCKEVENTS
460 This enables the use of the TMU as the system timer.
463 bool "CMT timer support"
467 This enables the use of the CMT as the system timer.
470 bool "MTU2 timer support"
474 This enables the use of the MTU2 as the system timer.
478 default "28" if CPU_SUBTYPE_SH7780 || CPU_SUBTYPE_SH7785
479 default "86" if CPU_SUBTYPE_SH7619
480 default "140" if CPU_SUBTYPE_SH7206
484 int "Peripheral clock frequency (in Hz)"
485 default "27000000" if CPU_SUBTYPE_SH73180 || CPU_SUBTYPE_SH7343
486 default "31250000" if CPU_SUBTYPE_SH7619
487 default "32000000" if CPU_SUBTYPE_SH7722
488 default "33333333" if CPU_SUBTYPE_SH7300 || CPU_SUBTYPE_SH7770 || \
489 CPU_SUBTYPE_SH7760 || CPU_SUBTYPE_SH7705 || \
491 default "60000000" if CPU_SUBTYPE_SH7751 || CPU_SUBTYPE_SH7751R
492 default "66000000" if CPU_SUBTYPE_SH4_202
495 This option is used to specify the peripheral clock frequency.
496 This is necessary for determining the reference clock value on
497 platforms lacking an RTC.
500 int "CPU Mode Pin Setting"
501 depends on CPU_SUBTYPE_SH7619 || CPU_SUBTYPE_SH7206
502 default 6 if CPU_SUBTYPE_SH7206
503 default 5 if CPU_SUBTYPE_SH7619
506 MD2 - MD0 pin setting.
508 source "kernel/time/Kconfig"
512 menu "CPU Frequency scaling"
514 source "drivers/cpufreq/Kconfig"
517 tristate "SuperH CPU Frequency driver"
519 select CPU_FREQ_TABLE
521 This adds the cpufreq driver for SuperH. At present, only
522 the SH-4 is supported.
524 For details, take a look at <file:Documentation/cpu-freq>.
530 source "arch/sh/drivers/Kconfig"
536 depends on SH_MPC1211
539 menu "Kernel features"
541 source kernel/Kconfig.hz
544 bool "kexec system call (EXPERIMENTAL)"
545 depends on EXPERIMENTAL
547 kexec is a system call that implements the ability to shutdown your
548 current kernel, and to start another kernel. It is like a reboot
549 but it is independent of the system firmware. And like a reboot
550 you can start any kernel with it, not just Linux.
552 The name comes from the similarity to the exec system call.
554 It is an ongoing process to be certain the hardware in a machine
555 is properly shutdown, so do not be surprised if this code does not
556 initially work for you. It may help to enable device hotplugging
557 support. As of this writing the exact hardware interface is
558 strongly in flux, so no good recommendation can be made.
561 bool "kernel crash dumps (EXPERIMENTAL)"
562 depends on EXPERIMENTAL
564 Generate crash dump after being started by kexec.
565 This should be normally only set in special crash dump kernels
566 which are loaded in the main kernel with kexec-tools into
567 a specially reserved region and then later executed after
568 a crash by kdump/kexec. The crash dump kernel must be compiled
569 to a memory address not used by the main kernel using
572 For more details see Documentation/kdump/kdump.txt
575 bool "Symmetric multi-processing support"
576 depends on SYS_SUPPORTS_SMP
578 This enables support for systems with more than one CPU. If you have
579 a system with only one CPU, like most personal computers, say N. If
580 you have a system with more than one CPU, say Y.
582 If you say N here, the kernel will run on single and multiprocessor
583 machines, but will use only one CPU of a multiprocessor machine. If
584 you say Y here, the kernel will run on many, but not all,
585 singleprocessor machines. On a singleprocessor machine, the kernel
586 will run faster if you say N here.
588 People using multiprocessor machines who say Y here should also say
589 Y to "Enhanced Real Time Clock Support", below.
591 See also the <file:Documentation/smp.txt>,
592 <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available
593 at <http://www.tldp.org/docs.html#howto>.
595 If you don't know what to do here, say N.
598 int "Maximum number of CPUs (2-32)"
601 default "4" if CPU_SHX3
604 This allows you to specify the maximum number of CPUs which this
605 kernel will support. The maximum supported value is 32 and the
606 minimum value which makes sense is 2.
608 This is purely to save memory - each supported CPU adds
609 approximately eight kilobytes to the kernel image.
611 source "kernel/Kconfig.preempt"
616 depends on NEED_MULTIPLE_NODES
622 config ZERO_PAGE_OFFSET
623 hex "Zero page offset"
624 default "0x00004000" if SH_MPC1211 || SH_SH03
625 default "0x00010000" if PAGE_SIZE_64KB
626 default "0x00002000" if PAGE_SIZE_8KB
629 This sets the default offset of zero page.
631 config BOOT_LINK_OFFSET
632 hex "Link address offset for booting"
635 This option allows you to set the link address offset of the zImage.
636 This can be useful if you are on a board which has a small amount of
640 bool "Wakeup UBC on startup"
643 Selecting this option will wakeup the User Break Controller (UBC) on
644 startup. Although the UBC is left in an awake state when the processor
645 comes up, some boot loaders misbehave by putting the UBC to sleep in a
646 power saving state, which causes issues with things like ptrace().
651 bool "Default bootloader kernel arguments"
654 string "Initial kernel command string"
655 depends on CMDLINE_BOOL
656 default "console=ttySC1,115200"
662 # Even on SuperH devices which don't have an ISA bus,
663 # this variable helps the PCMCIA modules handle
664 # IRQ requesting properly -- Greg Banks.
666 # Though we're generally not interested in it when
667 # we're not using PCMCIA, so we make it dependent on
668 # PCMCIA outright. -- PFM.
671 depends on PCMCIA && HD6446X_SERIES
673 Find out whether you have ISA slots on your motherboard. ISA is the
674 name of a bus system, i.e. the way the CPU talks to the other stuff
675 inside your box. Other bus systems are PCI, EISA, MicroChannel
676 (MCA) or VESA. ISA is an older system, now being displaced by PCI;
677 newer boards don't support it. If you have ISA, say Y, otherwise N.
682 The Extended Industry Standard Architecture (EISA) bus was
683 developed as an open alternative to the IBM MicroChannel bus.
685 The EISA bus provided some of the features of the IBM MicroChannel
686 bus while maintaining backward compatibility with cards made for
687 the older ISA bus. The EISA bus saw limited use between 1988 and
688 1995 when it was made obsolete by the PCI bus.
690 Say Y here if you are building a kernel for an EISA-based machine.
697 MicroChannel Architecture is found in some IBM PS/2 machines and
698 laptops. It is a bus system similar to PCI or ISA. See
699 <file:Documentation/mca.txt> (and especially the web page given
700 there) before attempting to build an MCA bus kernel.
706 tristate "SuperHyway Bus support"
707 depends on CPU_SUBTYPE_SH4_202
709 source "arch/sh/drivers/pci/Kconfig"
711 source "drivers/pci/Kconfig"
713 source "drivers/pcmcia/Kconfig"
715 source "drivers/pci/hotplug/Kconfig"
719 menu "Executable file formats"
721 source "fs/Kconfig.binfmt"
725 menu "Power management options (EXPERIMENTAL)"
726 depends on EXPERIMENTAL && SYS_SUPPORTS_PM
728 source kernel/power/Kconfig
734 source "drivers/Kconfig"
738 source "arch/sh/oprofile/Kconfig"
740 source "arch/sh/Kconfig.debug"
742 source "security/Kconfig"
744 source "crypto/Kconfig"