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
93 config ARCH_NO_VIRT_TO_BUS
100 source "arch/sh/mm/Kconfig"
102 menu "Processor features"
105 prompt "Endianess selection"
106 default CPU_LITTLE_ENDIAN
108 Some SuperH machines can be configured for either little or big
109 endian byte order. These modes require different kernels.
111 config CPU_LITTLE_ENDIAN
114 config CPU_BIG_ENDIAN
124 Selecting this option will enable support for SH processors that
125 have FPU units (ie, SH77xx).
127 This option must be set in order to enable the FPU.
130 bool "FPU emulation support"
131 depends on !SH_FPU && EXPERIMENTAL
134 Selecting this option will enable support for software FPU emulation.
135 Most SH-3 users will want to say Y here, whereas most SH-4 users will
140 depends on CPU_HAS_DSP
143 Selecting this option will enable support for SH processors that
144 have DSP units (ie, SH2-DSP, SH3-DSP, and SH4AL-DSP).
146 This option must be set in order to enable the DSP.
153 Selecting this option will allow the Linux kernel to use SH3 on-chip
158 config SH_STORE_QUEUES
159 bool "Support for Store Queues"
162 Selecting this option will enable an in-kernel API for manipulating
163 the store queues integrated in the SH-4 processors.
165 config SPECULATIVE_EXECUTION
166 bool "Speculative subroutine return"
167 depends on CPU_SUBTYPE_SH7780 && EXPERIMENTAL
169 This enables support for a speculative instruction fetch for
170 subroutine return. There are various pitfalls associated with
171 this, as outlined in the SH7780 hardware manual.
175 config CPU_HAS_INTEVT
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.
212 config SOLUTION_ENGINE
215 config SH_SOLUTION_ENGINE
216 bool "SolutionEngine"
217 select SOLUTION_ENGINE
218 select CPU_HAS_IPR_IRQ
219 depends on CPU_SUBTYPE_SH7709 || CPU_SUBTYPE_SH7750
221 Select SolutionEngine if configuring for a Hitachi SH7709
222 or SH7750 evaluation board.
224 config SH_7206_SOLUTION_ENGINE
225 bool "SolutionEngine7206"
226 select SOLUTION_ENGINE
227 depends on CPU_SUBTYPE_SH7206
229 Select 7206 SolutionEngine if configuring for a Hitachi SH7206
232 config SH_7619_SOLUTION_ENGINE
233 bool "SolutionEngine7619"
234 select SOLUTION_ENGINE
235 depends on CPU_SUBTYPE_SH7619
237 Select 7619 SolutionEngine if configuring for a Hitachi SH7619
240 config SH_7722_SOLUTION_ENGINE
241 bool "SolutionEngine7722"
242 select SOLUTION_ENGINE
243 depends on CPU_SUBTYPE_SH7722
245 Select 7722 SolutionEngine if configuring for a Hitachi SH772
248 config SH_7751_SOLUTION_ENGINE
249 bool "SolutionEngine7751"
250 select SOLUTION_ENGINE
251 select CPU_HAS_IPR_IRQ
252 depends on CPU_SUBTYPE_SH7751
254 Select 7751 SolutionEngine if configuring for a Hitachi SH7751
257 config SH_7780_SOLUTION_ENGINE
258 bool "SolutionEngine7780"
259 select SOLUTION_ENGINE
260 select SYS_SUPPORTS_PCI
261 select CPU_HAS_INTC2_IRQ
262 depends on CPU_SUBTYPE_SH7780
264 Select 7780 SolutionEngine if configuring for a Renesas SH7780
267 config SH_7343_SOLUTION_ENGINE
268 bool "SolutionEngine7343"
269 select SOLUTION_ENGINE
270 depends on CPU_SUBTYPE_SH7343
272 Select 7343 SolutionEngine if configuring for a Hitachi
273 SH7343 (SH-Mobile 3AS) evaluation board.
275 config SH_7751_SYSTEMH
277 depends on CPU_SUBTYPE_SH7751R
279 Select SystemH if you are configuring for a Renesas SystemH
280 7751R evaluation board.
284 select SYS_SUPPORTS_APM_EMULATION
285 select HD6446X_SERIES
286 depends on CPU_SUBTYPE_SH7709
288 Select HP6XX if configuring for a HP jornada HP6xx.
289 More information (hardware only) at
290 <http://www.hp.com/jornada/>.
294 select SYS_SUPPORTS_PCI
295 depends on CPU_SUBTYPE_SH7091
297 Select Dreamcast if configuring for a SEGA Dreamcast.
299 <http://www.m17n.org/linux-sh/dreamcast/>. There is a
300 Dreamcast project is at <http://linuxdc.sourceforge.net/>.
303 bool "Interface MPC1211"
304 depends on CPU_SUBTYPE_SH7751 && BROKEN
306 CTP/PCI-SH02 is a CPU module computer that is produced
307 by Interface Corporation.
308 More information at <http://www.interface.co.jp>
311 bool "Interface CTP/PCI-SH03"
312 depends on CPU_SUBTYPE_SH7751 && BROKEN
313 select CPU_HAS_IPR_IRQ
314 select SYS_SUPPORTS_PCI
316 CTP/PCI-SH03 is a CPU module computer that is produced
317 by Interface Corporation.
318 More information at <http://www.interface.co.jp>
320 config SH_SECUREEDGE5410
321 bool "SecureEdge5410"
322 depends on CPU_SUBTYPE_SH7751R
323 select CPU_HAS_IPR_IRQ
324 select SYS_SUPPORTS_PCI
326 Select SecureEdge5410 if configuring for a SnapGear SH board.
327 This includes both the OEM SecureEdge products as well as the
330 config SH_HS7751RVOIP
332 depends on CPU_SUBTYPE_SH7751R
334 Select HS7751RVOIP if configuring for a Renesas Technology
338 bool "SH7710-VOIP-GW"
339 depends on CPU_SUBTYPE_SH7710
341 Select this option to build a kernel for the SH7710 based
346 depends on CPU_SUBTYPE_SH7751R
347 select SYS_SUPPORTS_PCI
349 Select RTS7751R2D if configuring for a Renesas Technology
350 Sales SH-Graphics board.
354 depends on CPU_SUBTYPE_SH7780 || CPU_SUBTYPE_SH7785
355 select SYS_SUPPORTS_PCI
359 depends on CPU_SUBTYPE_SH7705
361 config SH_SH4202_MICRODEV
362 bool "SH4-202 MicroDev"
363 depends on CPU_SUBTYPE_SH4_202
365 Select SH4-202 MicroDev if configuring for a SuperH MicroDev board
370 depends on CPU_SUBTYPE_SH7751R
371 select SYS_SUPPORTS_PCI
373 I-O DATA DEVICE, INC. "LANDISK Series" support.
377 depends on CPU_SUBTYPE_SH7751R
378 select CPU_HAS_IPR_IRQ
379 select SYS_SUPPORTS_PCI
381 Select Titan if you are configuring for a Nimble Microsystems
386 depends on CPU_SUBTYPE_SH7706
387 select CPU_HAS_IPR_IRQ
389 Select SHMIN if configuring for the SHMIN board.
393 depends on CPU_SUBTYPE_SH7751R
394 select SYS_SUPPORTS_PCI
396 Select L-BOX RE2 if configuring for the NTT COMWARE L-BOX RE2.
400 source "arch/sh/boards/renesas/hs7751rvoip/Kconfig"
401 source "arch/sh/boards/renesas/rts7751r2d/Kconfig"
402 source "arch/sh/boards/renesas/r7780rp/Kconfig"
404 menu "Timer and clock configuration"
407 bool "TMU timer support"
408 depends on CPU_SH3 || CPU_SH4
410 select GENERIC_CLOCKEVENTS
413 This enables the use of the TMU as the system timer.
416 bool "CMT timer support"
420 This enables the use of the CMT as the system timer.
423 bool "MTU2 timer support"
427 This enables the use of the MTU2 as the system timer.
431 default "28" if CPU_SUBTYPE_SH7780 || CPU_SUBTYPE_SH7785
432 default "86" if CPU_SUBTYPE_SH7619
433 default "140" if CPU_SUBTYPE_SH7206
437 int "Peripheral clock frequency (in Hz)"
438 default "27000000" if CPU_SUBTYPE_SH7343
439 default "31250000" if CPU_SUBTYPE_SH7619
440 default "32000000" if CPU_SUBTYPE_SH7722
441 default "33333333" if CPU_SUBTYPE_SH7770 || \
442 CPU_SUBTYPE_SH7760 || CPU_SUBTYPE_SH7705 || \
444 default "60000000" if CPU_SUBTYPE_SH7751 || CPU_SUBTYPE_SH7751R
445 default "66000000" if CPU_SUBTYPE_SH4_202
448 This option is used to specify the peripheral clock frequency.
449 This is necessary for determining the reference clock value on
450 platforms lacking an RTC.
453 int "CPU Mode Pin Setting"
454 depends on CPU_SUBTYPE_SH7619 || CPU_SUBTYPE_SH7206
455 default 6 if CPU_SUBTYPE_SH7206
456 default 5 if CPU_SUBTYPE_SH7619
459 MD2 - MD0 pin setting.
461 source "kernel/time/Kconfig"
465 menu "CPU Frequency scaling"
467 source "drivers/cpufreq/Kconfig"
470 tristate "SuperH CPU Frequency driver"
472 select CPU_FREQ_TABLE
474 This adds the cpufreq driver for SuperH. At present, only
475 the SH-4 is supported.
477 For details, take a look at <file:Documentation/cpu-freq>.
483 source "arch/sh/drivers/Kconfig"
489 depends on SH_MPC1211
492 menu "Kernel features"
494 source kernel/Kconfig.hz
497 bool "kexec system call (EXPERIMENTAL)"
498 depends on EXPERIMENTAL
500 kexec is a system call that implements the ability to shutdown your
501 current kernel, and to start another kernel. It is like a reboot
502 but it is independent of the system firmware. And like a reboot
503 you can start any kernel with it, not just Linux.
505 The name comes from the similarity to the exec system call.
507 It is an ongoing process to be certain the hardware in a machine
508 is properly shutdown, so do not be surprised if this code does not
509 initially work for you. It may help to enable device hotplugging
510 support. As of this writing the exact hardware interface is
511 strongly in flux, so no good recommendation can be made.
514 bool "kernel crash dumps (EXPERIMENTAL)"
515 depends on EXPERIMENTAL
517 Generate crash dump after being started by kexec.
518 This should be normally only set in special crash dump kernels
519 which are loaded in the main kernel with kexec-tools into
520 a specially reserved region and then later executed after
521 a crash by kdump/kexec. The crash dump kernel must be compiled
522 to a memory address not used by the main kernel using
525 For more details see Documentation/kdump/kdump.txt
528 bool "Symmetric multi-processing support"
529 depends on SYS_SUPPORTS_SMP
531 This enables support for systems with more than one CPU. If you have
532 a system with only one CPU, like most personal computers, say N. If
533 you have a system with more than one CPU, say Y.
535 If you say N here, the kernel will run on single and multiprocessor
536 machines, but will use only one CPU of a multiprocessor machine. If
537 you say Y here, the kernel will run on many, but not all,
538 singleprocessor machines. On a singleprocessor machine, the kernel
539 will run faster if you say N here.
541 People using multiprocessor machines who say Y here should also say
542 Y to "Enhanced Real Time Clock Support", below.
544 See also the <file:Documentation/smp.txt>,
545 <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available
546 at <http://www.tldp.org/docs.html#howto>.
548 If you don't know what to do here, say N.
551 int "Maximum number of CPUs (2-32)"
554 default "4" if CPU_SHX3
557 This allows you to specify the maximum number of CPUs which this
558 kernel will support. The maximum supported value is 32 and the
559 minimum value which makes sense is 2.
561 This is purely to save memory - each supported CPU adds
562 approximately eight kilobytes to the kernel image.
564 source "kernel/Kconfig.preempt"
569 depends on NEED_MULTIPLE_NODES
575 config ZERO_PAGE_OFFSET
576 hex "Zero page offset"
577 default "0x00004000" if SH_MPC1211 || SH_SH03
578 default "0x00010000" if PAGE_SIZE_64KB
579 default "0x00002000" if PAGE_SIZE_8KB
582 This sets the default offset of zero page.
584 config BOOT_LINK_OFFSET
585 hex "Link address offset for booting"
588 This option allows you to set the link address offset of the zImage.
589 This can be useful if you are on a board which has a small amount of
593 bool "Wakeup UBC on startup"
596 Selecting this option will wakeup the User Break Controller (UBC) on
597 startup. Although the UBC is left in an awake state when the processor
598 comes up, some boot loaders misbehave by putting the UBC to sleep in a
599 power saving state, which causes issues with things like ptrace().
604 bool "Default bootloader kernel arguments"
607 string "Initial kernel command string"
608 depends on CMDLINE_BOOL
609 default "console=ttySC1,115200"
615 # Even on SuperH devices which don't have an ISA bus,
616 # this variable helps the PCMCIA modules handle
617 # IRQ requesting properly -- Greg Banks.
619 # Though we're generally not interested in it when
620 # we're not using PCMCIA, so we make it dependent on
621 # PCMCIA outright. -- PFM.
624 depends on PCMCIA && HD6446X_SERIES
626 Find out whether you have ISA slots on your motherboard. ISA is the
627 name of a bus system, i.e. the way the CPU talks to the other stuff
628 inside your box. Other bus systems are PCI, EISA, MicroChannel
629 (MCA) or VESA. ISA is an older system, now being displaced by PCI;
630 newer boards don't support it. If you have ISA, say Y, otherwise N.
635 The Extended Industry Standard Architecture (EISA) bus was
636 developed as an open alternative to the IBM MicroChannel bus.
638 The EISA bus provided some of the features of the IBM MicroChannel
639 bus while maintaining backward compatibility with cards made for
640 the older ISA bus. The EISA bus saw limited use between 1988 and
641 1995 when it was made obsolete by the PCI bus.
643 Say Y here if you are building a kernel for an EISA-based machine.
650 MicroChannel Architecture is found in some IBM PS/2 machines and
651 laptops. It is a bus system similar to PCI or ISA. See
652 <file:Documentation/mca.txt> (and especially the web page given
653 there) before attempting to build an MCA bus kernel.
659 tristate "SuperHyway Bus support"
660 depends on CPU_SUBTYPE_SH4_202
663 bool "Compact Flash Enabler support"
664 depends on SOLUTION_ENGINE || SH_SH03
666 Compact Flash is a small, removable mass storage device introduced
667 in 1994 originally as a PCMCIA device. If you say `Y' here, you
668 compile in support for Compact Flash devices directly connected to
669 a SuperH processor. A Compact Flash FAQ is available at
670 <http://www.compactflash.org/faqs/faq.htm>.
672 If your board has "Directly Connected" CompactFlash at area 5 or 6,
673 you may want to enable this option. Then, you can use CF as
674 primary IDE drive (only tested for SanDisk).
676 If in doubt, select 'N'.
679 prompt "Compact Flash Connection Area"
680 depends on CF_ENABLER
686 If your board has "Directly Connected" CompactFlash, You should
687 select the area where your CF is connected to.
689 - "Area5" if CompactFlash is connected to Area 5 (0x14000000)
690 - "Area6" if it is connected to Area 6 (0x18000000)
692 "Area6" will work for most boards.
701 depends on CF_ENABLER
702 default "0xb8000000" if CF_AREA6
703 default "0xb4000000" if CF_AREA5
705 source "arch/sh/drivers/pci/Kconfig"
707 source "drivers/pci/Kconfig"
709 source "drivers/pcmcia/Kconfig"
711 source "drivers/pci/hotplug/Kconfig"
715 menu "Executable file formats"
717 source "fs/Kconfig.binfmt"
721 menu "Power management options (EXPERIMENTAL)"
722 depends on EXPERIMENTAL && SYS_SUPPORTS_PM
724 source kernel/power/Kconfig
730 source "drivers/Kconfig"
734 source "arch/sh/oprofile/Kconfig"
736 source "arch/sh/Kconfig.debug"
738 source "security/Kconfig"
740 source "crypto/Kconfig"