2 # For a description of the syntax of this configuration file,
3 # see Documentation/kbuild/kconfig-language.txt.
6 mainmenu "Linux/SuperH Kernel Configuration"
14 select HAVE_GENERIC_DMA_COHERENT
16 The SuperH is a RISC processor targeted for use in embedded systems
17 and consumer electronics; it was also used in the Sega Dreamcast
18 gaming console. The SuperH port has a home page at
19 <http://www.linux-sh.org/>.
27 config RWSEM_GENERIC_SPINLOCK
30 config RWSEM_XCHGADD_ALGORITHM
35 depends on BUG && SUPERH32
37 config GENERIC_FIND_NEXT_BIT
40 config GENERIC_HWEIGHT
43 config GENERIC_HARDIRQS
46 config GENERIC_IRQ_PROBE
49 config GENERIC_CALIBRATE_DELAY
58 config GENERIC_CLOCKEVENTS
61 config SYS_SUPPORTS_PM
64 config SYS_SUPPORTS_APM_EMULATION
66 select SYS_SUPPORTS_PM
68 config SYS_SUPPORTS_SMP
71 config SYS_SUPPORTS_NUMA
74 config SYS_SUPPORTS_PCI
77 config STACKTRACE_SUPPORT
80 config LOCKDEP_SUPPORT
83 config ARCH_HAS_ILOG2_U32
86 config ARCH_HAS_ILOG2_U64
89 config ARCH_NO_VIRT_TO_BUS
92 config ARCH_SUPPORTS_AOUT
114 select CPU_HAS_INTEVT
119 select CPU_HAS_INTEVT
121 select CPU_HAS_PTEA if !CPU_SH4A || CPU_SHX2
122 select CPU_HAS_FPU if !CPU_SH4AL_DSP
144 prompt "Processor sub-type selection"
150 # SH-2 Processor Support
152 config CPU_SUBTYPE_SH7619
153 bool "Support SH7619 processor"
156 # SH-2A Processor Support
158 config CPU_SUBTYPE_SH7203
159 bool "Support SH7203 processor"
163 config CPU_SUBTYPE_SH7206
164 bool "Support SH7206 processor"
167 config CPU_SUBTYPE_SH7263
168 bool "Support SH7263 processor"
172 config CPU_SUBTYPE_MXG
173 bool "Support MX-G processor"
176 Select MX-G if running on an R8A03022BG part.
178 # SH-3 Processor Support
180 config CPU_SUBTYPE_SH7705
181 bool "Support SH7705 processor"
184 config CPU_SUBTYPE_SH7706
185 bool "Support SH7706 processor"
188 Select SH7706 if you have a 133 Mhz SH-3 HD6417706 CPU.
190 config CPU_SUBTYPE_SH7707
191 bool "Support SH7707 processor"
194 Select SH7707 if you have a 60 Mhz SH-3 HD6417707 CPU.
196 config CPU_SUBTYPE_SH7708
197 bool "Support SH7708 processor"
200 Select SH7708 if you have a 60 Mhz SH-3 HD6417708S or
201 if you have a 100 Mhz SH-3 HD6417708R CPU.
203 config CPU_SUBTYPE_SH7709
204 bool "Support SH7709 processor"
207 Select SH7709 if you have a 80 Mhz SH-3 HD6417709 CPU.
209 config CPU_SUBTYPE_SH7710
210 bool "Support SH7710 processor"
214 Select SH7710 if you have a SH3-DSP SH7710 CPU.
216 config CPU_SUBTYPE_SH7712
217 bool "Support SH7712 processor"
221 Select SH7712 if you have a SH3-DSP SH7712 CPU.
223 config CPU_SUBTYPE_SH7720
224 bool "Support SH7720 processor"
228 Select SH7720 if you have a SH3-DSP SH7720 CPU.
230 config CPU_SUBTYPE_SH7721
231 bool "Support SH7721 processor"
235 Select SH7721 if you have a SH3-DSP SH7721 CPU.
237 # SH-4 Processor Support
239 config CPU_SUBTYPE_SH7750
240 bool "Support SH7750 processor"
243 Select SH7750 if you have a 200 Mhz SH-4 HD6417750 CPU.
245 config CPU_SUBTYPE_SH7091
246 bool "Support SH7091 processor"
249 Select SH7091 if you have an SH-4 based Sega device (such as
250 the Dreamcast, Naomi, and Naomi 2).
252 config CPU_SUBTYPE_SH7750R
253 bool "Support SH7750R processor"
256 config CPU_SUBTYPE_SH7750S
257 bool "Support SH7750S processor"
260 config CPU_SUBTYPE_SH7751
261 bool "Support SH7751 processor"
264 Select SH7751 if you have a 166 Mhz SH-4 HD6417751 CPU,
265 or if you have a HD6417751R CPU.
267 config CPU_SUBTYPE_SH7751R
268 bool "Support SH7751R processor"
271 config CPU_SUBTYPE_SH7760
272 bool "Support SH7760 processor"
275 config CPU_SUBTYPE_SH4_202
276 bool "Support SH4-202 processor"
279 # SH-4A Processor Support
281 config CPU_SUBTYPE_SH7723
282 bool "Support SH7723 processor"
285 select ARCH_SPARSEMEM_ENABLE
287 Select SH7723 if you have an SH-MobileR2 CPU.
289 config CPU_SUBTYPE_SH7763
290 bool "Support SH7763 processor"
293 Select SH7763 if you have a SH4A SH7763(R5S77631) CPU.
295 config CPU_SUBTYPE_SH7770
296 bool "Support SH7770 processor"
299 config CPU_SUBTYPE_SH7780
300 bool "Support SH7780 processor"
303 config CPU_SUBTYPE_SH7785
304 bool "Support SH7785 processor"
307 select ARCH_SPARSEMEM_ENABLE
308 select SYS_SUPPORTS_NUMA
310 config CPU_SUBTYPE_SHX3
311 bool "Support SH-X3 processor"
314 select ARCH_SPARSEMEM_ENABLE
315 select SYS_SUPPORTS_NUMA
316 select SYS_SUPPORTS_SMP
318 # SH4AL-DSP Processor Support
320 config CPU_SUBTYPE_SH7343
321 bool "Support SH7343 processor"
324 config CPU_SUBTYPE_SH7722
325 bool "Support SH7722 processor"
328 select ARCH_SPARSEMEM_ENABLE
329 select SYS_SUPPORTS_NUMA
331 config CPU_SUBTYPE_SH7366
332 bool "Support SH7366 processor"
335 select ARCH_SPARSEMEM_ENABLE
336 select SYS_SUPPORTS_NUMA
338 # SH-5 Processor Support
340 config CPU_SUBTYPE_SH5_101
341 bool "Support SH5-101 processor"
344 config CPU_SUBTYPE_SH5_103
345 bool "Support SH5-103 processor"
350 source "arch/sh/mm/Kconfig"
351 source "arch/sh/Kconfig.cpu"
355 config SOLUTION_ENGINE
358 config SH_SOLUTION_ENGINE
359 bool "SolutionEngine"
360 select SOLUTION_ENGINE
361 select CPU_HAS_IPR_IRQ
362 depends on CPU_SUBTYPE_SH7705 || CPU_SUBTYPE_SH7709 || CPU_SUBTYPE_SH7710 || \
363 CPU_SUBTYPE_SH7712 || CPU_SUBTYPE_SH7750 || CPU_SUBTYPE_SH7750S || \
366 Select SolutionEngine if configuring for a Hitachi SH7705, SH7709,
367 SH7710, SH7712, SH7750, SH7750S or SH7750R evaluation board.
369 config SH_7206_SOLUTION_ENGINE
370 bool "SolutionEngine7206"
371 select SOLUTION_ENGINE
372 depends on CPU_SUBTYPE_SH7206
374 Select 7206 SolutionEngine if configuring for a Hitachi SH7206
377 config SH_7619_SOLUTION_ENGINE
378 bool "SolutionEngine7619"
379 select SOLUTION_ENGINE
380 depends on CPU_SUBTYPE_SH7619
382 Select 7619 SolutionEngine if configuring for a Hitachi SH7619
385 config SH_7721_SOLUTION_ENGINE
386 bool "SolutionEngine7721"
387 select SOLUTION_ENGINE
388 depends on CPU_SUBTYPE_SH7721
390 Select 7721 SolutionEngine if configuring for a Hitachi SH7721
393 config SH_7722_SOLUTION_ENGINE
394 bool "SolutionEngine7722"
395 select SOLUTION_ENGINE
396 depends on CPU_SUBTYPE_SH7722
398 Select 7722 SolutionEngine if configuring for a Hitachi SH772
401 config SH_7751_SOLUTION_ENGINE
402 bool "SolutionEngine7751"
403 select SOLUTION_ENGINE
404 select CPU_HAS_IPR_IRQ
405 depends on CPU_SUBTYPE_SH7751
407 Select 7751 SolutionEngine if configuring for a Hitachi SH7751
410 config SH_7780_SOLUTION_ENGINE
411 bool "SolutionEngine7780"
412 select SOLUTION_ENGINE
413 select SYS_SUPPORTS_PCI
414 depends on CPU_SUBTYPE_SH7780
416 Select 7780 SolutionEngine if configuring for a Renesas SH7780
419 config SH_7343_SOLUTION_ENGINE
420 bool "SolutionEngine7343"
421 select SOLUTION_ENGINE
422 depends on CPU_SUBTYPE_SH7343
424 Select 7343 SolutionEngine if configuring for a Hitachi
425 SH7343 (SH-Mobile 3AS) evaluation board.
427 config SH_7751_SYSTEMH
429 depends on CPU_SUBTYPE_SH7751R
431 Select SystemH if you are configuring for a Renesas SystemH
432 7751R evaluation board.
436 select SYS_SUPPORTS_APM_EMULATION
437 select HD6446X_SERIES
438 depends on CPU_SUBTYPE_SH7709
440 Select HP6XX if configuring for a HP jornada HP6xx.
441 More information (hardware only) at
442 <http://www.hp.com/jornada/>.
446 select SYS_SUPPORTS_PCI
447 depends on CPU_SUBTYPE_SH7091
449 Select Dreamcast if configuring for a SEGA Dreamcast.
450 More information at <http://www.linux-sh.org>
453 bool "Interface CTP/PCI-SH03"
454 depends on CPU_SUBTYPE_SH7751
455 select CPU_HAS_IPR_IRQ
456 select SYS_SUPPORTS_PCI
458 CTP/PCI-SH03 is a CPU module computer that is produced
459 by Interface Corporation.
460 More information at <http://www.interface.co.jp>
462 config SH_SECUREEDGE5410
463 bool "SecureEdge5410"
464 depends on CPU_SUBTYPE_SH7751R
465 select CPU_HAS_IPR_IRQ
466 select SYS_SUPPORTS_PCI
468 Select SecureEdge5410 if configuring for a SnapGear SH board.
469 This includes both the OEM SecureEdge products as well as the
474 depends on CPU_SUBTYPE_SH7751R
475 select SYS_SUPPORTS_PCI
478 Select RTS7751R2D if configuring for a Renesas Technology
479 Sales SH-Graphics board.
483 depends on CPU_SUBTYPE_SH7203
487 depends on CPU_SUBTYPE_SH7780
488 select SYS_SUPPORTS_PCI
490 Select SDK7780 if configuring for a Renesas SH7780 SDK7780R3
495 depends on CPU_SUBTYPE_SH7780 || CPU_SUBTYPE_SH7785
496 select SYS_SUPPORTS_PCI
501 depends on CPU_SUBTYPE_SH7785
502 select SYS_SUPPORTS_PCI
505 config SH_SH7785LCR_29BIT_PHYSMAPS
506 bool "SH7785LCR 29bit physmaps"
507 depends on SH_SH7785LCR
510 This board has 2 physical memory maps. It can be changed with
511 DIP switch(S2-5). If you set the DIP switch for S2-5 = ON,
512 you can access all on-board device in 29bit address mode.
516 depends on CPU_SUBTYPE_SH7722
518 Select Migo-R if configuring for the SH7722 Migo-R platform
519 by Renesas System Solutions Asia Pte. Ltd.
523 depends on CPU_SUBTYPE_SH7723
525 Renesas "AP-325RXA" support.
526 Compatible with ALGO SYSTEM CO.,LTD. "AP-320A"
530 depends on CPU_SUBTYPE_SH7763
532 Select SH7763RDP if configuring for a Renesas SH7763
537 depends on CPU_SUBTYPE_SH7705
539 config SH_SH4202_MICRODEV
540 bool "SH4-202 MicroDev"
541 depends on CPU_SUBTYPE_SH4_202
543 Select SH4-202 MicroDev if configuring for a SuperH MicroDev board
548 depends on CPU_SUBTYPE_SH7751R
549 select SYS_SUPPORTS_PCI
551 I-O DATA DEVICE, INC. "LANDISK Series" support.
555 depends on CPU_SUBTYPE_SH7751R
556 select CPU_HAS_IPR_IRQ
557 select SYS_SUPPORTS_PCI
559 Select Titan if you are configuring for a Nimble Microsystems
564 depends on CPU_SUBTYPE_SH7706
565 select CPU_HAS_IPR_IRQ
567 Select SHMIN if configuring for the SHMIN board.
571 depends on CPU_SUBTYPE_SH7751R
572 select SYS_SUPPORTS_PCI
574 Select L-BOX RE2 if configuring for the NTT COMWARE L-BOX RE2.
577 bool "SH-X3 Prototype board"
578 depends on CPU_SUBTYPE_SHX3
580 config SH_MAGIC_PANEL_R2
581 bool "Magic Panel R2"
582 depends on CPU_SUBTYPE_SH7720
584 Select Magic Panel R2 if configuring for Magic Panel R2.
587 bool "Hitachi Cayman"
588 depends on CPU_SUBTYPE_SH5_101 || CPU_SUBTYPE_SH5_103
589 select SYS_SUPPORTS_PCI
593 source "arch/sh/boards/renesas/rts7751r2d/Kconfig"
594 source "arch/sh/boards/renesas/r7780rp/Kconfig"
595 source "arch/sh/boards/renesas/sdk7780/Kconfig"
596 source "arch/sh/boards/renesas/migor/Kconfig"
597 source "arch/sh/boards/magicpanelr2/Kconfig"
599 menu "Timer and clock configuration"
603 prompt "TMU timer support"
604 depends on CPU_SH3 || CPU_SH4
606 select GENERIC_CLOCKEVENTS
608 This enables the use of the TMU as the system timer.
612 prompt "CMT timer support"
613 depends on CPU_SH2 && !CPU_SUBTYPE_MXG
615 This enables the use of the CMT as the system timer.
619 prompt "MTU2 timer support"
622 This enables the use of the MTU2 as the system timer.
626 default "28" if CPU_SUBTYPE_SH7780 || CPU_SUBTYPE_SH7785 || \
628 default "86" if CPU_SUBTYPE_SH7619
629 default "140" if CPU_SUBTYPE_SH7206
630 default "142" if CPU_SUBTYPE_SH7203
631 default "238" if CPU_SUBTYPE_MXG
635 int "Peripheral clock frequency (in Hz)"
636 default "27000000" if CPU_SUBTYPE_SH7343
637 default "31250000" if CPU_SUBTYPE_SH7619
638 default "32000000" if CPU_SUBTYPE_SH7722
639 default "33333333" if CPU_SUBTYPE_SH7770 || CPU_SUBTYPE_SH7723 || \
640 CPU_SUBTYPE_SH7760 || CPU_SUBTYPE_SH7705 || \
641 CPU_SUBTYPE_SH7203 || CPU_SUBTYPE_SH7206 || \
642 CPU_SUBTYPE_SH7263 || CPU_SUBTYPE_MXG
643 default "60000000" if CPU_SUBTYPE_SH7751 || CPU_SUBTYPE_SH7751R
644 default "66000000" if CPU_SUBTYPE_SH4_202
647 This option is used to specify the peripheral clock frequency.
648 This is necessary for determining the reference clock value on
649 platforms lacking an RTC.
652 int "CPU Mode Pin Setting"
654 default 6 if CPU_SUBTYPE_SH7206
655 default 5 if CPU_SUBTYPE_SH7619
658 MD2 - MD0 pin setting.
660 source "kernel/time/Kconfig"
664 menu "CPU Frequency scaling"
666 source "drivers/cpufreq/Kconfig"
669 tristate "SuperH CPU Frequency driver"
671 select CPU_FREQ_TABLE
673 This adds the cpufreq driver for SuperH. At present, only
674 the SH-4 is supported.
676 For details, take a look at <file:Documentation/cpu-freq>.
682 source "arch/sh/drivers/Kconfig"
689 menu "Kernel features"
691 source kernel/Kconfig.hz
694 bool "kexec system call (EXPERIMENTAL)"
695 depends on SUPERH32 && EXPERIMENTAL
697 kexec is a system call that implements the ability to shutdown your
698 current kernel, and to start another kernel. It is like a reboot
699 but it is independent of the system firmware. And like a reboot
700 you can start any kernel with it, not just Linux.
702 The name comes from the similarity to the exec system call.
704 It is an ongoing process to be certain the hardware in a machine
705 is properly shutdown, so do not be surprised if this code does not
706 initially work for you. It may help to enable device hotplugging
707 support. As of this writing the exact hardware interface is
708 strongly in flux, so no good recommendation can be made.
711 bool "kernel crash dumps (EXPERIMENTAL)"
712 depends on SUPERH32 && EXPERIMENTAL
714 Generate crash dump after being started by kexec.
715 This should be normally only set in special crash dump kernels
716 which are loaded in the main kernel with kexec-tools into
717 a specially reserved region and then later executed after
718 a crash by kdump/kexec. The crash dump kernel must be compiled
719 to a memory address not used by the main kernel using
722 For more details see Documentation/kdump/kdump.txt
725 bool "Symmetric multi-processing support"
726 depends on SYS_SUPPORTS_SMP
727 select USE_GENERIC_SMP_HELPERS
729 This enables support for systems with more than one CPU. If you have
730 a system with only one CPU, like most personal computers, say N. If
731 you have a system with more than one CPU, say Y.
733 If you say N here, the kernel will run on single and multiprocessor
734 machines, but will use only one CPU of a multiprocessor machine. If
735 you say Y here, the kernel will run on many, but not all,
736 singleprocessor machines. On a singleprocessor machine, the kernel
737 will run faster if you say N here.
739 People using multiprocessor machines who say Y here should also say
740 Y to "Enhanced Real Time Clock Support", below.
742 See also <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO
743 available at <http://www.tldp.org/docs.html#howto>.
745 If you don't know what to do here, say N.
748 int "Maximum number of CPUs (2-32)"
751 default "4" if CPU_SHX3
754 This allows you to specify the maximum number of CPUs which this
755 kernel will support. The maximum supported value is 32 and the
756 minimum value which makes sense is 2.
758 This is purely to save memory - each supported CPU adds
759 approximately eight kilobytes to the kernel image.
761 source "kernel/Kconfig.preempt"
765 depends on !SMP && SUPERH32
767 This enables support for gUSA (general UserSpace Atomicity).
768 This is the default implementation for both UP and non-ll/sc
769 CPUs, and is used by the libc, amongst others.
771 For additional information, design information can be found
772 in <http://lc.linux.or.jp/lc2002/papers/niibe0919p.pdf>.
774 This should only be disabled for special cases where alternate
775 atomicity implementations exist.
778 bool "Implement atomic operations by roll-back (gRB) (EXPERIMENTAL)"
779 depends on GUSA && CPU_SH3 || (CPU_SH4 && !CPU_SH4A)
781 Enabling this option will allow the kernel to implement some
782 atomic operations using a software implemention of load-locked/
783 store-conditional (LLSC). On machines which do not have hardware
784 LLSC, this should be more efficient than the other alternative of
785 disabling insterrupts around the atomic sequence.
791 config ZERO_PAGE_OFFSET
792 hex "Zero page offset"
793 default "0x00004000" if SH_SH03
794 default "0x00010000" if PAGE_SIZE_64KB
795 default "0x00002000" if PAGE_SIZE_8KB
798 This sets the default offset of zero page.
800 config BOOT_LINK_OFFSET
801 hex "Link address offset for booting"
804 This option allows you to set the link address offset of the zImage.
805 This can be useful if you are on a board which has a small amount of
809 bool "Wakeup UBC on startup"
810 depends on CPU_SH4 && !CPU_SH4A
812 Selecting this option will wakeup the User Break Controller (UBC) on
813 startup. Although the UBC is left in an awake state when the processor
814 comes up, some boot loaders misbehave by putting the UBC to sleep in a
815 power saving state, which causes issues with things like ptrace().
820 bool "Default bootloader kernel arguments"
823 string "Initial kernel command string"
824 depends on CMDLINE_BOOL
825 default "console=ttySC1,115200"
831 # Even on SuperH devices which don't have an ISA bus,
832 # this variable helps the PCMCIA modules handle
833 # IRQ requesting properly -- Greg Banks.
835 # Though we're generally not interested in it when
836 # we're not using PCMCIA, so we make it dependent on
837 # PCMCIA outright. -- PFM.
840 depends on PCMCIA && HD6446X_SERIES
842 Find out whether you have ISA slots on your motherboard. ISA is the
843 name of a bus system, i.e. the way the CPU talks to the other stuff
844 inside your box. Other bus systems are PCI, EISA, MicroChannel
845 (MCA) or VESA. ISA is an older system, now being displaced by PCI;
846 newer boards don't support it. If you have ISA, say Y, otherwise N.
851 The Extended Industry Standard Architecture (EISA) bus was
852 developed as an open alternative to the IBM MicroChannel bus.
854 The EISA bus provided some of the features of the IBM MicroChannel
855 bus while maintaining backward compatibility with cards made for
856 the older ISA bus. The EISA bus saw limited use between 1988 and
857 1995 when it was made obsolete by the PCI bus.
859 Say Y here if you are building a kernel for an EISA-based machine.
866 MicroChannel Architecture is found in some IBM PS/2 machines and
867 laptops. It is a bus system similar to PCI or ISA. See
868 <file:Documentation/mca.txt> (and especially the web page given
869 there) before attempting to build an MCA bus kernel.
875 tristate "SuperHyway Bus support"
876 depends on CPU_SUBTYPE_SH4_202
879 bool "Maple Bus support"
880 depends on SH_DREAMCAST
882 The Maple Bus is SEGA's serial communication bus for peripherals
883 on the Dreamcast. Without this bus support you won't be able to
884 get your Dreamcast keyboard etc to work, so most users
885 probably want to say 'Y' here, unless you are only using the
886 Dreamcast with a serial line terminal or a remote network
890 bool "Compact Flash Enabler support"
891 depends on SOLUTION_ENGINE || SH_SH03
893 Compact Flash is a small, removable mass storage device introduced
894 in 1994 originally as a PCMCIA device. If you say `Y' here, you
895 compile in support for Compact Flash devices directly connected to
896 a SuperH processor. A Compact Flash FAQ is available at
897 <http://www.compactflash.org/faqs/faq.htm>.
899 If your board has "Directly Connected" CompactFlash at area 5 or 6,
900 you may want to enable this option. Then, you can use CF as
901 primary IDE drive (only tested for SanDisk).
903 If in doubt, select 'N'.
906 prompt "Compact Flash Connection Area"
907 depends on CF_ENABLER
913 If your board has "Directly Connected" CompactFlash, You should
914 select the area where your CF is connected to.
916 - "Area5" if CompactFlash is connected to Area 5 (0x14000000)
917 - "Area6" if it is connected to Area 6 (0x18000000)
919 "Area6" will work for most boards.
928 depends on CF_ENABLER
929 default "0xb8000000" if CF_AREA6
930 default "0xb4000000" if CF_AREA5
932 source "arch/sh/drivers/pci/Kconfig"
934 source "drivers/pci/Kconfig"
936 source "drivers/pcmcia/Kconfig"
938 source "drivers/pci/hotplug/Kconfig"
942 menu "Executable file formats"
944 source "fs/Kconfig.binfmt"
948 menu "Power management options (EXPERIMENTAL)"
949 depends on EXPERIMENTAL && SYS_SUPPORTS_PM
951 config ARCH_SUSPEND_POSSIBLE
955 source kernel/power/Kconfig
961 source "drivers/Kconfig"
965 source "arch/sh/Kconfig.debug"
967 source "security/Kconfig"
969 source "crypto/Kconfig"