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_INTC_IRQ
184 config CPU_HAS_INTC2_IRQ
187 config CPU_HAS_IPR_IRQ
192 depends on CPU_SH3 || CPU_SH4
195 This will enable the use of SR.RB register bank usage. Processors
196 that are lacking this bit must have another method in place for
197 accomplishing what is taken care of by the banked registers.
199 See <file:Documentation/sh/register-banks.txt> for further
200 information on SR.RB and register banking in the kernel in general.
209 config SOLUTION_ENGINE
212 config SH_SOLUTION_ENGINE
213 bool "SolutionEngine"
214 select SOLUTION_ENGINE
215 select CPU_HAS_IPR_IRQ
216 depends on CPU_SUBTYPE_SH7709 || CPU_SUBTYPE_SH7750
218 Select SolutionEngine if configuring for a Hitachi SH7709
219 or SH7750 evaluation board.
221 config SH_7206_SOLUTION_ENGINE
222 bool "SolutionEngine7206"
223 select SOLUTION_ENGINE
224 depends on CPU_SUBTYPE_SH7206
226 Select 7206 SolutionEngine if configuring for a Hitachi SH7206
229 config SH_7619_SOLUTION_ENGINE
230 bool "SolutionEngine7619"
231 select SOLUTION_ENGINE
232 depends on CPU_SUBTYPE_SH7619
234 Select 7619 SolutionEngine if configuring for a Hitachi SH7619
237 config SH_7722_SOLUTION_ENGINE
238 bool "SolutionEngine7722"
239 select SOLUTION_ENGINE
240 depends on CPU_SUBTYPE_SH7722
242 Select 7722 SolutionEngine if configuring for a Hitachi SH772
245 config SH_7751_SOLUTION_ENGINE
246 bool "SolutionEngine7751"
247 select SOLUTION_ENGINE
248 select CPU_HAS_IPR_IRQ
249 depends on CPU_SUBTYPE_SH7751
251 Select 7751 SolutionEngine if configuring for a Hitachi SH7751
254 config SH_7780_SOLUTION_ENGINE
255 bool "SolutionEngine7780"
256 select SOLUTION_ENGINE
257 select SYS_SUPPORTS_PCI
258 select CPU_HAS_INTC2_IRQ
259 depends on CPU_SUBTYPE_SH7780
261 Select 7780 SolutionEngine if configuring for a Renesas SH7780
264 config SH_7300_SOLUTION_ENGINE
265 bool "SolutionEngine7300"
266 select SOLUTION_ENGINE
267 depends on CPU_SUBTYPE_SH7300
269 Select 7300 SolutionEngine if configuring for a Hitachi
270 SH7300(SH-Mobile V) evaluation board.
272 config SH_7343_SOLUTION_ENGINE
273 bool "SolutionEngine7343"
274 select SOLUTION_ENGINE
275 depends on CPU_SUBTYPE_SH7343
277 Select 7343 SolutionEngine if configuring for a Hitachi
278 SH7343 (SH-Mobile 3AS) evaluation board.
280 config SH_73180_SOLUTION_ENGINE
281 bool "SolutionEngine73180"
282 select SOLUTION_ENGINE
283 depends on CPU_SUBTYPE_SH73180
285 Select 73180 SolutionEngine if configuring for a Hitachi
286 SH73180(SH-Mobile 3) evaluation board.
288 config SH_7751_SYSTEMH
290 depends on CPU_SUBTYPE_SH7751R
292 Select SystemH if you are configuring for a Renesas SystemH
293 7751R evaluation board.
297 select SYS_SUPPORTS_APM_EMULATION
298 select HD6446X_SERIES
299 depends on CPU_SUBTYPE_SH7709
301 Select HP6XX if configuring for a HP jornada HP6xx.
302 More information (hardware only) at
303 <http://www.hp.com/jornada/>.
307 select SYS_SUPPORTS_PCI
308 depends on CPU_SUBTYPE_SH7091
310 Select Dreamcast if configuring for a SEGA Dreamcast.
312 <http://www.m17n.org/linux-sh/dreamcast/>. There is a
313 Dreamcast project is at <http://linuxdc.sourceforge.net/>.
316 bool "Interface MPC1211"
317 depends on CPU_SUBTYPE_SH7751 && BROKEN
319 CTP/PCI-SH02 is a CPU module computer that is produced
320 by Interface Corporation.
321 More information at <http://www.interface.co.jp>
324 bool "Interface CTP/PCI-SH03"
325 depends on CPU_SUBTYPE_SH7751 && BROKEN
326 select CPU_HAS_IPR_IRQ
327 select SYS_SUPPORTS_PCI
329 CTP/PCI-SH03 is a CPU module computer that is produced
330 by Interface Corporation.
331 More information at <http://www.interface.co.jp>
333 config SH_SECUREEDGE5410
334 bool "SecureEdge5410"
335 depends on CPU_SUBTYPE_SH7751R
336 select CPU_HAS_IPR_IRQ
337 select SYS_SUPPORTS_PCI
339 Select SecureEdge5410 if configuring for a SnapGear SH board.
340 This includes both the OEM SecureEdge products as well as the
343 config SH_HS7751RVOIP
345 depends on CPU_SUBTYPE_SH7751R
347 Select HS7751RVOIP if configuring for a Renesas Technology
351 bool "SH7710-VOIP-GW"
352 depends on CPU_SUBTYPE_SH7710
354 Select this option to build a kernel for the SH7710 based
359 depends on CPU_SUBTYPE_SH7751R
360 select SYS_SUPPORTS_PCI
362 Select RTS7751R2D if configuring for a Renesas Technology
363 Sales SH-Graphics board.
367 depends on CPU_SUBTYPE_SH7780 || CPU_SUBTYPE_SH7785
368 select SYS_SUPPORTS_PCI
372 depends on CPU_SUBTYPE_SH7705
374 config SH_SH4202_MICRODEV
375 bool "SH4-202 MicroDev"
376 depends on CPU_SUBTYPE_SH4_202
378 Select SH4-202 MicroDev if configuring for a SuperH MicroDev board
383 depends on CPU_SUBTYPE_SH7751R
384 select SYS_SUPPORTS_PCI
386 I-O DATA DEVICE, INC. "LANDISK Series" support.
390 depends on CPU_SUBTYPE_SH7751R
391 select CPU_HAS_IPR_IRQ
392 select SYS_SUPPORTS_PCI
394 Select Titan if you are configuring for a Nimble Microsystems
399 depends on CPU_SUBTYPE_SH7706
400 select CPU_HAS_IPR_IRQ
402 Select SHMIN if configuring for the SHMIN board.
406 depends on CPU_SUBTYPE_SH7751R
407 select SYS_SUPPORTS_PCI
409 Select L-BOX RE2 if configuring for the NTT COMWARE L-BOX RE2.
413 source "arch/sh/boards/renesas/hs7751rvoip/Kconfig"
414 source "arch/sh/boards/renesas/rts7751r2d/Kconfig"
415 source "arch/sh/boards/renesas/r7780rp/Kconfig"
417 menu "Timer and clock configuration"
420 bool "TMU timer support"
421 depends on CPU_SH3 || CPU_SH4
423 select GENERIC_CLOCKEVENTS
426 This enables the use of the TMU as the system timer.
429 bool "CMT timer support"
433 This enables the use of the CMT as the system timer.
436 bool "MTU2 timer support"
440 This enables the use of the MTU2 as the system timer.
444 default "28" if CPU_SUBTYPE_SH7780 || CPU_SUBTYPE_SH7785
445 default "86" if CPU_SUBTYPE_SH7619
446 default "140" if CPU_SUBTYPE_SH7206
450 int "Peripheral clock frequency (in Hz)"
451 default "27000000" if CPU_SUBTYPE_SH73180 || CPU_SUBTYPE_SH7343
452 default "31250000" if CPU_SUBTYPE_SH7619
453 default "32000000" if CPU_SUBTYPE_SH7722
454 default "33333333" if CPU_SUBTYPE_SH7300 || CPU_SUBTYPE_SH7770 || \
455 CPU_SUBTYPE_SH7760 || CPU_SUBTYPE_SH7705 || \
457 default "60000000" if CPU_SUBTYPE_SH7751 || CPU_SUBTYPE_SH7751R
458 default "66000000" if CPU_SUBTYPE_SH4_202
461 This option is used to specify the peripheral clock frequency.
462 This is necessary for determining the reference clock value on
463 platforms lacking an RTC.
466 int "CPU Mode Pin Setting"
467 depends on CPU_SUBTYPE_SH7619 || CPU_SUBTYPE_SH7206
468 default 6 if CPU_SUBTYPE_SH7206
469 default 5 if CPU_SUBTYPE_SH7619
472 MD2 - MD0 pin setting.
474 source "kernel/time/Kconfig"
478 menu "CPU Frequency scaling"
480 source "drivers/cpufreq/Kconfig"
483 tristate "SuperH CPU Frequency driver"
485 select CPU_FREQ_TABLE
487 This adds the cpufreq driver for SuperH. At present, only
488 the SH-4 is supported.
490 For details, take a look at <file:Documentation/cpu-freq>.
496 source "arch/sh/drivers/Kconfig"
502 depends on SH_MPC1211
505 menu "Kernel features"
507 source kernel/Kconfig.hz
510 bool "kexec system call (EXPERIMENTAL)"
511 depends on EXPERIMENTAL
513 kexec is a system call that implements the ability to shutdown your
514 current kernel, and to start another kernel. It is like a reboot
515 but it is independent of the system firmware. And like a reboot
516 you can start any kernel with it, not just Linux.
518 The name comes from the similarity to the exec system call.
520 It is an ongoing process to be certain the hardware in a machine
521 is properly shutdown, so do not be surprised if this code does not
522 initially work for you. It may help to enable device hotplugging
523 support. As of this writing the exact hardware interface is
524 strongly in flux, so no good recommendation can be made.
527 bool "kernel crash dumps (EXPERIMENTAL)"
528 depends on EXPERIMENTAL
530 Generate crash dump after being started by kexec.
531 This should be normally only set in special crash dump kernels
532 which are loaded in the main kernel with kexec-tools into
533 a specially reserved region and then later executed after
534 a crash by kdump/kexec. The crash dump kernel must be compiled
535 to a memory address not used by the main kernel using
538 For more details see Documentation/kdump/kdump.txt
541 bool "Symmetric multi-processing support"
542 depends on SYS_SUPPORTS_SMP
544 This enables support for systems with more than one CPU. If you have
545 a system with only one CPU, like most personal computers, say N. If
546 you have a system with more than one CPU, say Y.
548 If you say N here, the kernel will run on single and multiprocessor
549 machines, but will use only one CPU of a multiprocessor machine. If
550 you say Y here, the kernel will run on many, but not all,
551 singleprocessor machines. On a singleprocessor machine, the kernel
552 will run faster if you say N here.
554 People using multiprocessor machines who say Y here should also say
555 Y to "Enhanced Real Time Clock Support", below.
557 See also the <file:Documentation/smp.txt>,
558 <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available
559 at <http://www.tldp.org/docs.html#howto>.
561 If you don't know what to do here, say N.
564 int "Maximum number of CPUs (2-32)"
567 default "4" if CPU_SHX3
570 This allows you to specify the maximum number of CPUs which this
571 kernel will support. The maximum supported value is 32 and the
572 minimum value which makes sense is 2.
574 This is purely to save memory - each supported CPU adds
575 approximately eight kilobytes to the kernel image.
577 source "kernel/Kconfig.preempt"
582 depends on NEED_MULTIPLE_NODES
588 config ZERO_PAGE_OFFSET
589 hex "Zero page offset"
590 default "0x00004000" if SH_MPC1211 || SH_SH03
591 default "0x00010000" if PAGE_SIZE_64KB
592 default "0x00002000" if PAGE_SIZE_8KB
595 This sets the default offset of zero page.
597 config BOOT_LINK_OFFSET
598 hex "Link address offset for booting"
601 This option allows you to set the link address offset of the zImage.
602 This can be useful if you are on a board which has a small amount of
606 bool "Wakeup UBC on startup"
609 Selecting this option will wakeup the User Break Controller (UBC) on
610 startup. Although the UBC is left in an awake state when the processor
611 comes up, some boot loaders misbehave by putting the UBC to sleep in a
612 power saving state, which causes issues with things like ptrace().
617 bool "Default bootloader kernel arguments"
620 string "Initial kernel command string"
621 depends on CMDLINE_BOOL
622 default "console=ttySC1,115200"
628 # Even on SuperH devices which don't have an ISA bus,
629 # this variable helps the PCMCIA modules handle
630 # IRQ requesting properly -- Greg Banks.
632 # Though we're generally not interested in it when
633 # we're not using PCMCIA, so we make it dependent on
634 # PCMCIA outright. -- PFM.
637 depends on PCMCIA && HD6446X_SERIES
639 Find out whether you have ISA slots on your motherboard. ISA is the
640 name of a bus system, i.e. the way the CPU talks to the other stuff
641 inside your box. Other bus systems are PCI, EISA, MicroChannel
642 (MCA) or VESA. ISA is an older system, now being displaced by PCI;
643 newer boards don't support it. If you have ISA, say Y, otherwise N.
648 The Extended Industry Standard Architecture (EISA) bus was
649 developed as an open alternative to the IBM MicroChannel bus.
651 The EISA bus provided some of the features of the IBM MicroChannel
652 bus while maintaining backward compatibility with cards made for
653 the older ISA bus. The EISA bus saw limited use between 1988 and
654 1995 when it was made obsolete by the PCI bus.
656 Say Y here if you are building a kernel for an EISA-based machine.
663 MicroChannel Architecture is found in some IBM PS/2 machines and
664 laptops. It is a bus system similar to PCI or ISA. See
665 <file:Documentation/mca.txt> (and especially the web page given
666 there) before attempting to build an MCA bus kernel.
672 tristate "SuperHyway Bus support"
673 depends on CPU_SUBTYPE_SH4_202
676 bool "Compact Flash Enabler support"
677 depends on SOLUTION_ENGINE || SH_SH03
679 Compact Flash is a small, removable mass storage device introduced
680 in 1994 originally as a PCMCIA device. If you say `Y' here, you
681 compile in support for Compact Flash devices directly connected to
682 a SuperH processor. A Compact Flash FAQ is available at
683 <http://www.compactflash.org/faqs/faq.htm>.
685 If your board has "Directly Connected" CompactFlash at area 5 or 6,
686 you may want to enable this option. Then, you can use CF as
687 primary IDE drive (only tested for SanDisk).
689 If in doubt, select 'N'.
692 prompt "Compact Flash Connection Area"
693 depends on CF_ENABLER
699 If your board has "Directly Connected" CompactFlash, You should
700 select the area where your CF is connected to.
702 - "Area5" if CompactFlash is connected to Area 5 (0x14000000)
703 - "Area6" if it is connected to Area 6 (0x18000000)
705 "Area6" will work for most boards.
714 depends on CF_ENABLER
715 default "0xb8000000" if CF_AREA6
716 default "0xb4000000" if CF_AREA5
718 source "arch/sh/drivers/pci/Kconfig"
720 source "drivers/pci/Kconfig"
722 source "drivers/pcmcia/Kconfig"
724 source "drivers/pci/hotplug/Kconfig"
728 menu "Executable file formats"
730 source "fs/Kconfig.binfmt"
734 menu "Power management options (EXPERIMENTAL)"
735 depends on EXPERIMENTAL && SYS_SUPPORTS_PM
737 source kernel/power/Kconfig
743 source "drivers/Kconfig"
747 source "arch/sh/oprofile/Kconfig"
749 source "arch/sh/Kconfig.debug"
751 source "security/Kconfig"
753 source "crypto/Kconfig"