2 # For a description of the syntax of this configuration file,
3 # see Documentation/kbuild/kconfig-language.txt.
6 mainmenu "Linux/SuperH Kernel Configuration"
12 The SuperH is a RISC processor targeted for use in embedded systems
13 and consumer electronics; it was also used in the Sega Dreamcast
14 gaming console. The SuperH port has a home page at
15 <http://www.linux-sh.org/>.
21 config RWSEM_GENERIC_SPINLOCK
25 config RWSEM_XCHGADD_ALGORITHM
28 config GENERIC_CALIBRATE_DELAY
37 prompt "SuperH system type"
40 config SH_SOLUTION_ENGINE
43 Select SolutionEngine if configuring for a Hitachi SH7709
44 or SH7750 evaluation board.
46 config SH_7751_SOLUTION_ENGINE
47 bool "SolutionEngine7751"
49 Select 7751 SolutionEngine if configuring for a Hitachi SH7751
52 config SH_7300_SOLUTION_ENGINE
53 bool "SolutionEngine7300"
55 Select 7300 SolutionEngine if configuring for a Hitachi SH7300(SH-Mobile V)
58 config SH_73180_SOLUTION_ENGINE
59 bool "SolutionEngine73180"
61 Select 73180 SolutionEngine if configuring for a Hitachi SH73180(SH-Mobile 3)
64 config SH_7751_SYSTEMH
67 Select SystemH if you are configuring for a Renesas SystemH
68 7751R evaluation board.
73 config SH_STB1_OVERDRIVE
79 Select HP620 if configuring for a HP jornada HP620.
80 More information (hardware only) at
81 <http://www.hp.com/jornada/>.
86 Select HP680 if configuring for a HP Jornada HP680.
87 More information (hardware only) at
88 <http://www.hp.com/jornada/products/680/>.
93 Select HP690 if configuring for a HP Jornada HP690.
94 More information (hardware only)
95 at <http://www.hp.com/jornada/products/680/>.
100 Select CqREEK if configuring for a CqREEK SH7708 or SH7750.
102 <http://sources.redhat.com/ecos/hardware.html#SuperH>.
107 Select DMIDA if configuring for a DataMyte 4000 Industrial
108 Digital Assistant. More information at <http://www.dmida.com/>.
113 Select EC3104 if configuring for a system with an Eclipse
114 International EC3104 chip, e.g. the Harris AD2000.
119 Select Saturn if configuring for a SEGA Saturn.
124 Select Dreamcast if configuring for a SEGA Dreamcast.
126 <http://www.m17n.org/linux-sh/dreamcast/>. There is a
127 Dreamcast project is at <http://linuxdc.sourceforge.net/>.
138 SH-2000 is a single-board computer based around SH7709A chip
139 intended for embedded applications.
140 It has an Ethernet interface (CS8900A), direct connected
141 Compact Flash socket, three serial ports and PC-104 bus.
142 More information at <http://sh2000.sh-linux.org>.
153 CTP/PCI-SH03 is a CPU module computer that produced
154 by Interface Corporation.
155 It is compact and excellent in durability.
156 It will play an active part in your factory or laboratory
158 More information at <http://www.interface.co.jp>
160 config SH_SECUREEDGE5410
161 bool "SecureEdge5410"
163 Select SecureEdge5410 if configuring for a SnapGear SH board.
164 This includes both the OEM SecureEdge products as well as the
167 config SH_HS7751RVOIP
170 Select HS7751RVOIP if configuring for a Renesas Technology
176 Select RTS7751R2D if configuring for a Renesas Technology
177 Sales SH-Graphics board.
182 config SH_SH4202_MICRODEV
183 bool "SH4-202 MicroDev"
185 Select SH4-202 MicroDev if configuring for a SuperH MicroDev board
191 "Bare CPU" aka "unknown" means an SH-based system which is not one
192 of the specific ones mentioned above, which means you need to enter
193 all sorts of stuff like CONFIG_MEMORY_START because the config
194 system doesn't already know what it is. You get a machine vector
195 without any platform-specific code in it, so things like the RTC may
198 This option is for the early stages of porting to a new machine.
203 prompt "Processor family"
206 This option determines the CPU family to compile for. Supported
207 targets are SH-2, SH-3, and SH-4. These options are independent of
208 CPU functionality. As such, SH-DSP users will still want to select
209 their respective processor family in addition to the DSP support
214 select SH_WRITETHROUGH
225 prompt "Processor subtype"
227 config CPU_SUBTYPE_SH7604
231 Select SH7604 if you have SH7604
233 config CPU_SUBTYPE_SH7300
237 config CPU_SUBTYPE_SH7705
241 config CPU_SUBTYPE_SH7707
245 Select SH7707 if you have a 60 Mhz SH-3 HD6417707 CPU.
247 config CPU_SUBTYPE_SH7708
251 Select SH7708 if you have a 60 Mhz SH-3 HD6417708S or
252 if you have a 100 Mhz SH-3 HD6417708R CPU.
254 config CPU_SUBTYPE_SH7709
258 Select SH7709 if you have a 80 Mhz SH-3 HD6417709 CPU.
260 config CPU_SUBTYPE_SH7750
264 Select SH7750 if you have a 200 Mhz SH-4 HD6417750 CPU.
266 config CPU_SUBTYPE_SH7751
267 bool "SH7751/SH7751R"
270 Select SH7751 if you have a 166 Mhz SH-4 HD6417751 CPU,
271 or if you have a HD6417751R CPU.
273 config CPU_SUBTYPE_SH7760
277 config CPU_SUBTYPE_SH73180
281 config CPU_SUBTYPE_ST40STB1
282 bool "ST40STB1 / ST40RA"
285 Select ST40STB1 if you have a ST40RA CPU.
286 This was previously called the ST40STB1, hence the option name.
288 config CPU_SUBTYPE_ST40GX1
292 Select ST40GX1 if you have a ST40GX1 CPU.
294 config CPU_SUBTYPE_SH4_202
300 config SH7705_CACHE_32KB
301 bool "Enable 32KB cache size for SH7705"
302 depends on CPU_SUBTYPE_SH7705
306 bool "Support for memory management hardware"
310 Early SH processors (such as the SH7604) lack an MMU. In order to
311 boot on these systems, this option must not be set.
313 On other systems (such as the SH-3 and 4) where an MMU exists,
314 turning this off will boot the kernel on these machines with the
315 MMU implicitly switched off.
318 prompt "HugeTLB page size"
319 depends on HUGETLB_PAGE && CPU_SH4 && MMU
320 default HUGETLB_PAGE_SIZE_64K
322 config HUGETLB_PAGE_SIZE_64K
325 config HUGETLB_PAGE_SIZE_1MB
331 bool "Default bootloader kernel arguments"
334 string "Initial kernel command string"
335 depends on CMDLINE_BOOL
336 default "console=ttySC1,115200"
338 # Platform-specific memory start and size definitions
340 hex "Physical memory start address" if !MEMORY_SET || MEMORY_OVERRIDE
341 default "0x08000000" if !MEMORY_SET || MEMORY_OVERRIDE || !MEMORY_OVERRIDE && SH_ADX || SH_MPC1211 || SH_SH03 || SH_SECUREEDGE5410 || SH_SH4202_MICRODEV
342 default "0x0c000000" if !MEMORY_OVERRIDE && (SH_DREAMCAST || SH_HP600 || SH_BIGSUR || SH_SH2000 || SH_73180_SOLUTION_ENGINE || SH_7300_SOLUTION_ENGINE || SH_7751_SOLUTION_ENGINE || SH_SOLUTION_ENGINE || SH_HS7751RVOIP || SH_RTS7751R2D || SH_EDOSK7705)
344 Computers built with Hitachi SuperH processors always
345 map the ROM starting at address zero. But the processor
346 does not specify the range that RAM takes.
348 The physical memory (RAM) start address will be automatically
349 set to 08000000, unless you selected one of the following
350 processor types: SolutionEngine, Overdrive, HP620, HP680, HP690,
351 in which case the start address will be set to 0c000000.
353 Tweak this only when porting to a new machine which is not already
354 known by the config system. Changing it from the known correct
355 value on any of the known systems will only lead to disaster.
358 hex "Physical memory size" if !MEMORY_SET || MEMORY_OVERRIDE
359 default "0x00400000" if !MEMORY_SET || MEMORY_OVERRIDE || !MEMORY_OVERRIDE && SH_ADX || !MEMORY_OVERRIDE && (SH_HP600 || SH_BIGSUR || SH_SH2000)
360 default "0x01000000" if !MEMORY_OVERRIDE && SH_DREAMCAST || SH_SECUREEDGE5410 || SH_EDOSK7705
361 default "0x02000000" if !MEMORY_OVERRIDE && (SH_73180_SOLUTION_ENGINE || SH_SOLUTION_ENGINE)
362 default "0x04000000" if !MEMORY_OVERRIDE && (SH_7300_SOLUTION_ENGINE || SH_7751_SOLUTION_ENGINE || SH_HS7751RVOIP || SH_RTS7751R2D || SH_SH4202_MICRODEV)
363 default "0x08000000" if SH_MPC1211 || SH_SH03
365 This sets the default memory size assumed by your SH kernel. It can
366 be overridden as normal by the 'mem=' argument on the kernel command
367 line. If unsure, consult your board specifications or just leave it
368 as 0x00400000 which was the default value before this became
373 depends on !MEMORY_OVERRIDE && (SH_MPC1211 || SH_SH03 || SH_ADX || SH_DREAMCAST || SH_HP600 || SH_BIGSUR || SH_SH2000 || SH_7751_SOLUTION_ENGINE || SH_SOLUTION_ENGINE || SH_SECUREEDGE5410 || SH_HS7751RVOIP || SH_RTS7751R2D || SH_SH4202_MICRODEV || SH_EDOSK7705)
376 This is an option about which you will never be asked a question.
377 Therefore, I conclude that you do not exist - go away.
379 There is a grue here.
381 # If none of the above have set memory start/size, ask the user.
382 config MEMORY_OVERRIDE
383 bool "Override default load address and memory size"
385 # XXX: break these out into the board-specific configs below
387 bool "Compact Flash Enabler support"
388 depends on SH_ADX || SH_SOLUTION_ENGINE || SH_UNKNOWN || SH_CAT68701 || SH_SH03
390 Compact Flash is a small, removable mass storage device introduced
391 in 1994 originally as a PCMCIA device. If you say `Y' here, you
392 compile in support for Compact Flash devices directly connected to
393 a SuperH processor. A Compact Flash FAQ is available at
394 <http://www.compactflash.org/faqs/faq.htm>.
396 If your board has "Directly Connected" CompactFlash at area 5 or 6,
397 you may want to enable this option. Then, you can use CF as
398 primary IDE drive (only tested for SanDisk).
400 If in doubt, select 'N'.
403 prompt "Compact Flash Connection Area"
404 depends on CF_ENABLER
410 If your board has "Directly Connected" CompactFlash, You should
411 select the area where your CF is connected to.
413 - "Area5" if CompactFlash is connected to Area 5 (0x14000000)
414 - "Area6" if it is connected to Area 6 (0x18000000)
416 "Area6" will work for most boards. For ADX, select "Area5".
425 depends on CF_ENABLER
426 default "0xb8000000" if CF_AREA6
427 default "0xb4000000" if CF_AREA5
429 # The SH7750 RTC module is disabled in the Dreamcast
432 depends on !SH_DREAMCAST && !SH_SATURN && !SH_7300_SOLUTION_ENGINE && !SH_73180_SOLUTION_ENGINE
435 Selecting this option will allow the Linux kernel to emulate
445 Selecting this option will enable support for SH processors that
446 have FPU units (ie, SH77xx).
448 This option must be set in order to enable the FPU.
455 Selecting this option will enable support for SH processors that
456 have DSP units (ie, SH2-DSP and SH3-DSP). It is safe to say Y here
457 by default, as the existance of the DSP will be probed at runtime.
459 This option must be set in order to enable the DSP.
466 Selecting this option will allow the Linux kernel to use SH3 on-chip
473 depends on SH_HP620 || SH_HP680 || SH_HP690
476 config CPU_SUBTYPE_ST40
478 depends on CPU_SUBTYPE_ST40STB1 || CPU_SUBTYPE_ST40GX1
486 Say Y to upport efficient handling of discontiguous physical memory,
487 for architectures which are either NUMA (Non-Uniform Memory Access)
488 or have huge holes in the physical address space for other reasons.
489 See <file:Documentation/vm/numa> for more.
491 config ZERO_PAGE_OFFSET
492 hex "Zero page offset"
493 default "0x00001000" if !(SH_MPC1211 || SH_SH03)
494 default "0x00004000" if SH_MPC1211 || SH_SH03
496 This sets the default offset of zero page.
498 # XXX: needs to lose subtype for system type
499 config ST40_LMI_MEMORY
501 depends on CPU_SUBTYPE_ST40STB1
505 depends on CPU_SUBTYPE_ST40STB1 && ST40_LMI_MEMORY
510 depends on CPU_SUBTYPE_ST40STB1 && ST40_LMI_MEMORY
515 depends on CPU_SUBTYPE_ST40STB1 && ST40_LMI_MEMORY
518 config BOOT_LINK_OFFSET
519 hex "Link address offset for booting"
522 This option allows you to set the link address offset of the zImage.
523 This can be useful if you are on a board which has a small amount of
526 config CPU_LITTLE_ENDIAN
529 Some SuperH machines can be configured for either little or big
530 endian byte order. These modes require different kernels. Say Y if
531 your machine is little endian, N if it's a big endian machine.
534 bool "Preemptible Kernel (EXPERIMENTAL)"
535 depends on EXPERIMENTAL
538 bool "Wakeup UBC on startup"
540 Selecting this option will wakeup the User Break Controller (UBC) on
541 startup. Although the UBC is left in an awake state when the processor
542 comes up, some boot loaders misbehave by putting the UBC to sleep in a
543 power saving state, which causes issues with things like ptrace().
547 config SH_WRITETHROUGH
548 bool "Use write-through caching"
551 Selecting this option will configure the caches in write-through
552 mode, as opposed to the default write-back configuration.
554 Since there's sill some aliasing issues on SH-4, this option will
555 unfortunately still require the majority of flushing functions to
556 be implemented to deal with aliasing.
561 bool "Operand Cache RAM (OCRAM) support"
563 Selecting this option will automatically tear down the number of
564 sets in the dcache by half, which in turn exposes a memory range.
566 The addresses for the OC RAM base will vary according to the
567 processor version. Consult vendor documentation for specifics.
571 config SH_STORE_QUEUES
572 bool "Support for Store Queues"
575 Selecting this option will enable an in-kernel API for manipulating
576 the store queues integrated in the SH-4 processors.
579 bool "Symmetric multi-processing support"
581 This enables support for systems with more than one CPU. If you have
582 a system with only one CPU, like most personal computers, say N. If
583 you have a system with more than one CPU, say Y.
585 If you say N here, the kernel will run on single and multiprocessor
586 machines, but will use only one CPU of a multiprocessor machine. If
587 you say Y here, the kernel will run on many, but not all,
588 singleprocessor machines. On a singleprocessor machine, the kernel
589 will run faster if you say N here.
591 People using multiprocessor machines who say Y here should also say
592 Y to "Enhanced Real Time Clock Support", below.
594 See also the <file:Documentation/smp.txt>,
595 <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available
596 at <http://www.tldp.org/docs.html#howto>.
598 If you don't know what to do here, say N.
601 int "Maximum number of CPUs (2-32)"
606 This allows you to specify the maximum number of CPUs which this
607 kernel will support. The maximum supported value is 32 and the
608 minimum value which makes sense is 2.
610 This is purely to save memory - each supported CPU adds
611 approximately eight kilobytes to the kernel image.
613 config HS7751RVOIP_CODEC
614 bool "Support VoIP Codec section"
615 depends on SH_HS7751RVOIP
617 Selecting this option will support CODEC section.
619 config RTS7751R2D_REV11
620 bool "RTS7751R2D Rev. 1.1 board support"
621 depends on SH_RTS7751R2D
623 Selecting this option will support version rev. 1.1.
627 default n if CPU_SUBTYPE_SH7300 || CPU_SUBTYPE_SH73180
630 This option will cause the PCLK value to be probed at run-time. It
631 will display a notification if the probed value has greater than a
632 1% variance of the hardcoded CONFIG_SH_PCLK_FREQ.
635 int "Peripheral clock frequency (in Hz)"
636 default "50000000" if CPU_SUBTYPE_SH7750
637 default "60000000" if CPU_SUBTYPE_SH7751
638 default "33333333" if CPU_SUBTYPE_SH7300
639 default "27000000" if CPU_SUBTYPE_SH73180
640 default "66000000" if CPU_SUBTYPE_SH4_202
643 This option is used to specify the peripheral clock frequency. This
644 option must be set for each processor in order for the kernel to
645 function reliably. If no sane default exists, we use a default from
646 the legacy i8254. Any discrepancies will be reported on boot time
647 with an auto-probed frequency which should be considered the proper
648 value for your hardware.
650 menu "CPU Frequency scaling"
652 source "drivers/cpufreq/Kconfig"
654 config CPU_FREQ_TABLE
655 tristate "CPU frequency table helpers"
659 Many cpufreq drivers use these helpers, so only say N here if
660 the cpufreq driver of your choice doesn't need these helpers.
665 tristate "SuperH CPU Frequency driver"
668 This adds the cpufreq driver for SuperH. At present, only
669 the SH-4 is supported.
671 For details, take a look at <file:Documentation/cpu-freq>.
677 source "arch/sh/drivers/dma/Kconfig"
679 source "arch/sh/cchips/Kconfig"
683 depends on SH_MPC1211 || SH_SH03 || SH_CAT68701 || SH_STB1_HARP || SH_STB1_OVERDRIVE || SH_BIGSUR || SH_7751_SOLUTION_ENGINE || SH_7300_SOLUTION_ENGINE || SH_73180_SOLUTION_ENGINE || SH_SOLUTION_ENGINE || SH_RTS7751R2D || SH_SH4202_MICRODEV
685 Use the power-on LED on your machine as a load meter. The exact
686 behavior is platform-dependent, but normally the flash frequency is
687 a hyperbolic function of the 5-minute load average.
690 tristate "EPSON RTC-9701JE support"
691 depends on SH_RTS7751R2D
693 Selecting this option will support EPSON RTC-9701JE.
698 menu "Bus options (PCI, PCMCIA, EISA, MCA, ISA)"
700 # Even on SuperH devices which don't have an ISA bus,
701 # this variable helps the PCMCIA modules handle
702 # IRQ requesting properly -- Greg Banks.
704 # Though we're generally not interested in it when
705 # we're not using PCMCIA, so we make it dependent on
706 # PCMCIA outright. -- PFM.
709 default y if PCMCIA || SMC91X
711 Find out whether you have ISA slots on your motherboard. ISA is the
712 name of a bus system, i.e. the way the CPU talks to the other stuff
713 inside your box. Other bus systems are PCI, EISA, MicroChannel
714 (MCA) or VESA. ISA is an older system, now being displaced by PCI;
715 newer boards don't support it. If you have ISA, say Y, otherwise N.
720 The Extended Industry Standard Architecture (EISA) bus was
721 developed as an open alternative to the IBM MicroChannel bus.
723 The EISA bus provided some of the features of the IBM MicroChannel
724 bus while maintaining backward compatibility with cards made for
725 the older ISA bus. The EISA bus saw limited use between 1988 and
726 1995 when it was made obsolete by the PCI bus.
728 Say Y here if you are building a kernel for an EISA-based machine.
735 MicroChannel Architecture is found in some IBM PS/2 machines and
736 laptops. It is a bus system similar to PCI or ISA. See
737 <file:Documentation/mca.txt> (and especially the web page given
738 there) before attempting to build an MCA bus kernel.
744 tristate "Maple Bus support"
745 depends on SH_DREAMCAST
748 source "arch/sh/drivers/pci/Kconfig"
750 source "drivers/pci/Kconfig"
752 source "drivers/pcmcia/Kconfig"
754 source "drivers/pci/hotplug/Kconfig"
759 menu "Executable file formats"
761 source "fs/Kconfig.binfmt"
765 menu "SH initrd options"
766 depends on BLK_DEV_INITRD
768 config EMBEDDED_RAMDISK
769 bool "Embed root filesystem ramdisk into the kernel"
771 config EMBEDDED_RAMDISK_IMAGE
772 string "Filename of gziped ramdisk image"
773 depends on EMBEDDED_RAMDISK
776 This is the filename of the ramdisk image to be built into the
777 kernel. Relative pathnames are relative to arch/sh/ramdisk/.
778 The ramdisk image is not part of the kernel distribution; you must
779 provide one yourself.
783 source "drivers/Kconfig"
787 source "arch/sh/oprofile/Kconfig"
789 source "arch/sh/Kconfig.debug"
791 source "kernel/vserver/Kconfig"
793 source "security/Kconfig"
795 source "crypto/Kconfig"