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_MASKREG_IRQ
178 config CPU_HAS_INTC_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 select CPU_HAS_IPR_IRQ
213 depends on CPU_SUBTYPE_SH7709 || CPU_SUBTYPE_SH7750
215 Select SolutionEngine if configuring for a Hitachi SH7709
216 or SH7750 evaluation board.
218 config SH_7206_SOLUTION_ENGINE
219 bool "SolutionEngine7206"
220 select SOLUTION_ENGINE
221 depends on CPU_SUBTYPE_SH7206
223 Select 7206 SolutionEngine if configuring for a Hitachi SH7206
226 config SH_7619_SOLUTION_ENGINE
227 bool "SolutionEngine7619"
228 select SOLUTION_ENGINE
229 depends on CPU_SUBTYPE_SH7619
231 Select 7619 SolutionEngine if configuring for a Hitachi SH7619
234 config SH_7722_SOLUTION_ENGINE
235 bool "SolutionEngine7722"
236 select SOLUTION_ENGINE
237 depends on CPU_SUBTYPE_SH7722
239 Select 7722 SolutionEngine if configuring for a Hitachi SH772
242 config SH_7751_SOLUTION_ENGINE
243 bool "SolutionEngine7751"
244 select SOLUTION_ENGINE
245 select CPU_HAS_IPR_IRQ
246 depends on CPU_SUBTYPE_SH7751
248 Select 7751 SolutionEngine if configuring for a Hitachi SH7751
251 config SH_7780_SOLUTION_ENGINE
252 bool "SolutionEngine7780"
253 select SOLUTION_ENGINE
254 select SYS_SUPPORTS_PCI
255 select CPU_HAS_INTC2_IRQ
256 depends on CPU_SUBTYPE_SH7780
258 Select 7780 SolutionEngine if configuring for a Renesas SH7780
261 config SH_7300_SOLUTION_ENGINE
262 bool "SolutionEngine7300"
263 select SOLUTION_ENGINE
264 depends on CPU_SUBTYPE_SH7300
266 Select 7300 SolutionEngine if configuring for a Hitachi
267 SH7300(SH-Mobile V) evaluation board.
269 config SH_7343_SOLUTION_ENGINE
270 bool "SolutionEngine7343"
271 select SOLUTION_ENGINE
272 depends on CPU_SUBTYPE_SH7343
274 Select 7343 SolutionEngine if configuring for a Hitachi
275 SH7343 (SH-Mobile 3AS) evaluation board.
277 config SH_73180_SOLUTION_ENGINE
278 bool "SolutionEngine73180"
279 select SOLUTION_ENGINE
280 depends on CPU_SUBTYPE_SH73180
282 Select 73180 SolutionEngine if configuring for a Hitachi
283 SH73180(SH-Mobile 3) evaluation board.
285 config SH_7751_SYSTEMH
287 depends on CPU_SUBTYPE_SH7751R
289 Select SystemH if you are configuring for a Renesas SystemH
290 7751R evaluation board.
294 select SYS_SUPPORTS_APM_EMULATION
295 select HD6446X_SERIES
296 depends on CPU_SUBTYPE_SH7709
298 Select HP6XX if configuring for a HP jornada HP6xx.
299 More information (hardware only) at
300 <http://www.hp.com/jornada/>.
304 select SYS_SUPPORTS_PCI
305 depends on CPU_SUBTYPE_SH7091
307 Select Dreamcast if configuring for a SEGA Dreamcast.
309 <http://www.m17n.org/linux-sh/dreamcast/>. There is a
310 Dreamcast project is at <http://linuxdc.sourceforge.net/>.
313 bool "Interface MPC1211"
314 depends on CPU_SUBTYPE_SH7751 && BROKEN
316 CTP/PCI-SH02 is a CPU module computer that is produced
317 by Interface Corporation.
318 More information at <http://www.interface.co.jp>
321 bool "Interface CTP/PCI-SH03"
322 depends on CPU_SUBTYPE_SH7751 && BROKEN
323 select CPU_HAS_IPR_IRQ
324 select SYS_SUPPORTS_PCI
326 CTP/PCI-SH03 is a CPU module computer that is produced
327 by Interface Corporation.
328 More information at <http://www.interface.co.jp>
330 config SH_SECUREEDGE5410
331 bool "SecureEdge5410"
332 depends on CPU_SUBTYPE_SH7751R
333 select CPU_HAS_IPR_IRQ
334 select SYS_SUPPORTS_PCI
336 Select SecureEdge5410 if configuring for a SnapGear SH board.
337 This includes both the OEM SecureEdge products as well as the
340 config SH_HS7751RVOIP
342 depends on CPU_SUBTYPE_SH7751R
344 Select HS7751RVOIP if configuring for a Renesas Technology
348 bool "SH7710-VOIP-GW"
349 depends on CPU_SUBTYPE_SH7710
351 Select this option to build a kernel for the SH7710 based
356 depends on CPU_SUBTYPE_SH7751R
357 select SYS_SUPPORTS_PCI
359 Select RTS7751R2D if configuring for a Renesas Technology
360 Sales SH-Graphics board.
364 depends on CPU_SUBTYPE_SH7780 || CPU_SUBTYPE_SH7785
365 select SYS_SUPPORTS_PCI
369 depends on CPU_SUBTYPE_SH7705
371 config SH_SH4202_MICRODEV
372 bool "SH4-202 MicroDev"
373 depends on CPU_SUBTYPE_SH4_202
375 Select SH4-202 MicroDev if configuring for a SuperH MicroDev board
380 depends on CPU_SUBTYPE_SH7751R
381 select SYS_SUPPORTS_PCI
383 I-O DATA DEVICE, INC. "LANDISK Series" support.
387 depends on CPU_SUBTYPE_SH7751R
388 select CPU_HAS_IPR_IRQ
389 select SYS_SUPPORTS_PCI
391 Select Titan if you are configuring for a Nimble Microsystems
396 depends on CPU_SUBTYPE_SH7706
397 select CPU_HAS_IPR_IRQ
399 Select SHMIN if configuring for the SHMIN board.
403 depends on CPU_SUBTYPE_SH7751R
404 select SYS_SUPPORTS_PCI
406 Select L-BOX RE2 if configuring for the NTT COMWARE L-BOX RE2.
410 source "arch/sh/boards/renesas/hs7751rvoip/Kconfig"
411 source "arch/sh/boards/renesas/rts7751r2d/Kconfig"
412 source "arch/sh/boards/renesas/r7780rp/Kconfig"
414 menu "Timer and clock configuration"
417 bool "TMU timer support"
418 depends on CPU_SH3 || CPU_SH4
420 select GENERIC_CLOCKEVENTS
423 This enables the use of the TMU as the system timer.
426 bool "CMT timer support"
430 This enables the use of the CMT as the system timer.
433 bool "MTU2 timer support"
437 This enables the use of the MTU2 as the system timer.
441 default "28" if CPU_SUBTYPE_SH7780 || CPU_SUBTYPE_SH7785
442 default "86" if CPU_SUBTYPE_SH7619
443 default "140" if CPU_SUBTYPE_SH7206
447 int "Peripheral clock frequency (in Hz)"
448 default "27000000" if CPU_SUBTYPE_SH73180 || CPU_SUBTYPE_SH7343
449 default "31250000" if CPU_SUBTYPE_SH7619
450 default "32000000" if CPU_SUBTYPE_SH7722
451 default "33333333" if CPU_SUBTYPE_SH7300 || CPU_SUBTYPE_SH7770 || \
452 CPU_SUBTYPE_SH7760 || CPU_SUBTYPE_SH7705 || \
454 default "60000000" if CPU_SUBTYPE_SH7751 || CPU_SUBTYPE_SH7751R
455 default "66000000" if CPU_SUBTYPE_SH4_202
458 This option is used to specify the peripheral clock frequency.
459 This is necessary for determining the reference clock value on
460 platforms lacking an RTC.
463 int "CPU Mode Pin Setting"
464 depends on CPU_SUBTYPE_SH7619 || CPU_SUBTYPE_SH7206
465 default 6 if CPU_SUBTYPE_SH7206
466 default 5 if CPU_SUBTYPE_SH7619
469 MD2 - MD0 pin setting.
471 source "kernel/time/Kconfig"
475 menu "CPU Frequency scaling"
477 source "drivers/cpufreq/Kconfig"
480 tristate "SuperH CPU Frequency driver"
482 select CPU_FREQ_TABLE
484 This adds the cpufreq driver for SuperH. At present, only
485 the SH-4 is supported.
487 For details, take a look at <file:Documentation/cpu-freq>.
493 source "arch/sh/drivers/Kconfig"
499 depends on SH_MPC1211
502 menu "Kernel features"
504 source kernel/Kconfig.hz
507 bool "kexec system call (EXPERIMENTAL)"
508 depends on EXPERIMENTAL
510 kexec is a system call that implements the ability to shutdown your
511 current kernel, and to start another kernel. It is like a reboot
512 but it is independent of the system firmware. And like a reboot
513 you can start any kernel with it, not just Linux.
515 The name comes from the similarity to the exec system call.
517 It is an ongoing process to be certain the hardware in a machine
518 is properly shutdown, so do not be surprised if this code does not
519 initially work for you. It may help to enable device hotplugging
520 support. As of this writing the exact hardware interface is
521 strongly in flux, so no good recommendation can be made.
524 bool "kernel crash dumps (EXPERIMENTAL)"
525 depends on EXPERIMENTAL
527 Generate crash dump after being started by kexec.
528 This should be normally only set in special crash dump kernels
529 which are loaded in the main kernel with kexec-tools into
530 a specially reserved region and then later executed after
531 a crash by kdump/kexec. The crash dump kernel must be compiled
532 to a memory address not used by the main kernel using
535 For more details see Documentation/kdump/kdump.txt
538 bool "Symmetric multi-processing support"
539 depends on SYS_SUPPORTS_SMP
541 This enables support for systems with more than one CPU. If you have
542 a system with only one CPU, like most personal computers, say N. If
543 you have a system with more than one CPU, say Y.
545 If you say N here, the kernel will run on single and multiprocessor
546 machines, but will use only one CPU of a multiprocessor machine. If
547 you say Y here, the kernel will run on many, but not all,
548 singleprocessor machines. On a singleprocessor machine, the kernel
549 will run faster if you say N here.
551 People using multiprocessor machines who say Y here should also say
552 Y to "Enhanced Real Time Clock Support", below.
554 See also the <file:Documentation/smp.txt>,
555 <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available
556 at <http://www.tldp.org/docs.html#howto>.
558 If you don't know what to do here, say N.
561 int "Maximum number of CPUs (2-32)"
564 default "4" if CPU_SHX3
567 This allows you to specify the maximum number of CPUs which this
568 kernel will support. The maximum supported value is 32 and the
569 minimum value which makes sense is 2.
571 This is purely to save memory - each supported CPU adds
572 approximately eight kilobytes to the kernel image.
574 source "kernel/Kconfig.preempt"
579 depends on NEED_MULTIPLE_NODES
585 config ZERO_PAGE_OFFSET
586 hex "Zero page offset"
587 default "0x00004000" if SH_MPC1211 || SH_SH03
588 default "0x00010000" if PAGE_SIZE_64KB
589 default "0x00002000" if PAGE_SIZE_8KB
592 This sets the default offset of zero page.
594 config BOOT_LINK_OFFSET
595 hex "Link address offset for booting"
598 This option allows you to set the link address offset of the zImage.
599 This can be useful if you are on a board which has a small amount of
603 bool "Wakeup UBC on startup"
606 Selecting this option will wakeup the User Break Controller (UBC) on
607 startup. Although the UBC is left in an awake state when the processor
608 comes up, some boot loaders misbehave by putting the UBC to sleep in a
609 power saving state, which causes issues with things like ptrace().
614 bool "Default bootloader kernel arguments"
617 string "Initial kernel command string"
618 depends on CMDLINE_BOOL
619 default "console=ttySC1,115200"
625 # Even on SuperH devices which don't have an ISA bus,
626 # this variable helps the PCMCIA modules handle
627 # IRQ requesting properly -- Greg Banks.
629 # Though we're generally not interested in it when
630 # we're not using PCMCIA, so we make it dependent on
631 # PCMCIA outright. -- PFM.
634 depends on PCMCIA && HD6446X_SERIES
636 Find out whether you have ISA slots on your motherboard. ISA is the
637 name of a bus system, i.e. the way the CPU talks to the other stuff
638 inside your box. Other bus systems are PCI, EISA, MicroChannel
639 (MCA) or VESA. ISA is an older system, now being displaced by PCI;
640 newer boards don't support it. If you have ISA, say Y, otherwise N.
645 The Extended Industry Standard Architecture (EISA) bus was
646 developed as an open alternative to the IBM MicroChannel bus.
648 The EISA bus provided some of the features of the IBM MicroChannel
649 bus while maintaining backward compatibility with cards made for
650 the older ISA bus. The EISA bus saw limited use between 1988 and
651 1995 when it was made obsolete by the PCI bus.
653 Say Y here if you are building a kernel for an EISA-based machine.
660 MicroChannel Architecture is found in some IBM PS/2 machines and
661 laptops. It is a bus system similar to PCI or ISA. See
662 <file:Documentation/mca.txt> (and especially the web page given
663 there) before attempting to build an MCA bus kernel.
669 tristate "SuperHyway Bus support"
670 depends on CPU_SUBTYPE_SH4_202
673 bool "Compact Flash Enabler support"
674 depends on SOLUTION_ENGINE || SH_SH03
676 Compact Flash is a small, removable mass storage device introduced
677 in 1994 originally as a PCMCIA device. If you say `Y' here, you
678 compile in support for Compact Flash devices directly connected to
679 a SuperH processor. A Compact Flash FAQ is available at
680 <http://www.compactflash.org/faqs/faq.htm>.
682 If your board has "Directly Connected" CompactFlash at area 5 or 6,
683 you may want to enable this option. Then, you can use CF as
684 primary IDE drive (only tested for SanDisk).
686 If in doubt, select 'N'.
689 prompt "Compact Flash Connection Area"
690 depends on CF_ENABLER
696 If your board has "Directly Connected" CompactFlash, You should
697 select the area where your CF is connected to.
699 - "Area5" if CompactFlash is connected to Area 5 (0x14000000)
700 - "Area6" if it is connected to Area 6 (0x18000000)
702 "Area6" will work for most boards.
711 depends on CF_ENABLER
712 default "0xb8000000" if CF_AREA6
713 default "0xb4000000" if CF_AREA5
715 source "arch/sh/drivers/pci/Kconfig"
717 source "drivers/pci/Kconfig"
719 source "drivers/pcmcia/Kconfig"
721 source "drivers/pci/hotplug/Kconfig"
725 menu "Executable file formats"
727 source "fs/Kconfig.binfmt"
731 menu "Power management options (EXPERIMENTAL)"
732 depends on EXPERIMENTAL && SYS_SUPPORTS_PM
734 source kernel/power/Kconfig
740 source "drivers/Kconfig"
744 source "arch/sh/oprofile/Kconfig"
746 source "arch/sh/Kconfig.debug"
748 source "security/Kconfig"
750 source "crypto/Kconfig"