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
33 prompt "SuperH system type"
36 config SH_SOLUTION_ENGINE
39 Select SolutionEngine if configuring for a Hitachi SH7709
40 or SH7750 evalutation board.
42 config SH_7751_SOLUTION_ENGINE
43 bool "SolutionEngine7751"
45 Select 7751 SolutionEngine if configuring for a Hitachi SH7751
48 config SH_7300_SOLUTION_ENGINE
49 bool "SolutionEngine7300"
51 Select 7300 SolutionEngine if configuring for a Hitachi SH7300(SH-Mobile V)
54 config SH_7751_SYSTEMH
57 Select SystemH if you are configuring for a Renesas SystemH
58 7751R evaluation board.
63 config SH_STB1_OVERDRIVE
69 Select HP620 if configuring for a HP jornada HP620.
70 More information (hardware only) at
71 <http://www.hp.com/jornada/>.
76 Select HP680 if configuring for a HP Jornada HP680.
77 More information (hardware only) at
78 <http://www.hp.com/jornada/products/680/>.
83 Select HP690 if configuring for a HP Jornada HP690.
84 More information (hardware only)
85 at <http://www.hp.com/jornada/products/680/>.
90 Select CqREEK if configuring for a CqREEK SH7708 or SH7750.
92 <http://sources.redhat.com/ecos/hardware.html#SuperH>.
97 Select DMIDA if configuring for a DataMyte 4000 Industrial
98 Digital Assistant. More information at <http://www.dmida.com/>.
103 Select EC3104 if configuring for a system with an Eclipse
104 International EC3104 chip, e.g. the Harris AD2000.
109 Select Saturn if configuring for a SEGA Saturn.
114 Select Dreamcast if configuring for a SEGA Dreamcast.
116 <http://www.m17n.org/linux-sh/dreamcast/>. There is a
117 Dreamcast project is at <http://linuxdc.sourceforge.net/>.
128 SH-2000 is a single-board computer based around SH7709A chip
129 intended for embedded applications.
130 It has an Ethernet interface (CS8900A), direct connected
131 Compact Flash socket, three serial ports and PC-104 bus.
132 More information at <http://sh2000.sh-linux.org>.
140 config SH_SECUREEDGE5410
141 bool "SecureEdge5410"
143 Select SecureEdge5410 if configuring for a SnapGear SH board.
144 This includes both the OEM SecureEdge products as well as the
147 config SH_HS7751RVOIP
150 Select HS7751RVOIP if configuring for a Renesas Technology
156 Select RTS7751R2D if configuring for a Renesas Technology
157 Sales SH-Graphics board.
162 "Bare CPU" aka "unknown" means an SH-based system which is not one
163 of the specific ones mentioned above, which means you need to enter
164 all sorts of stuff like CONFIG_MEMORY_START because the config
165 system doesn't already know what it is. You get a machine vector
166 without any platform-specific code in it, so things like the RTC may
169 This option is for the early stages of porting to a new machine.
174 prompt "Processor family"
177 This option determines the CPU family to compile for. Supported
178 targets are SH-2, SH-3, and SH-4. These options are independent of
179 CPU functionality. As such, SH-DSP users will still want to select
180 their respective processor family in addition to the DSP support
185 select SH_WRITETHROUGH
196 prompt "Processor subtype"
198 config CPU_SUBTYPE_SH7604
202 Select SH7604 if you have SH7604
204 config CPU_SUBTYPE_SH7300
208 config CPU_SUBTYPE_SH7705
212 config CPU_SUBTYPE_SH7707
216 Select SH7707 if you have a 60 Mhz SH-3 HD6417707 CPU.
218 config CPU_SUBTYPE_SH7708
222 Select SH7708 if you have a 60 Mhz SH-3 HD6417708S or
223 if you have a 100 Mhz SH-3 HD6417708R CPU.
225 config CPU_SUBTYPE_SH7709
229 Select SH7709 if you have a 80 Mhz SH-3 HD6417709 CPU.
231 config CPU_SUBTYPE_SH7750
235 Select SH7750 if you have a 200 Mhz SH-4 HD6417750 CPU.
237 config CPU_SUBTYPE_SH7751
238 bool "SH7751/SH7751R"
241 Select SH7751 if you have a 166 Mhz SH-4 HD6417751 CPU,
242 or if you have a HD6417751R CPU.
244 config CPU_SUBTYPE_SH7760
248 config CPU_SUBTYPE_ST40STB1
249 bool "ST40STB1 / ST40RA"
252 Select ST40STB1 if you have a ST40RA CPU.
253 This was previously called the ST40STB1, hence the option name.
255 config CPU_SUBTYPE_ST40GX1
259 Select ST40GX1 if you have a ST40GX1 CPU.
264 bool "Support for memory management hardware"
268 Early SH processors (such as the SH7604) lack an MMU. In order to
269 boot on these systems, this option must not be set.
271 On other systems (such as the SH-3 and 4) where an MMU exists,
272 turning this off will boot the kernel on these machines with the
273 MMU implicitly switched off.
276 prompt "HugeTLB page size"
277 depends on HUGETLB_PAGE && CPU_SH4 && MMU
278 default HUGETLB_PAGE_SIZE_64K
280 config HUGETLB_PAGE_SIZE_64K
283 config HUGETLB_PAGE_SIZE_1MB
289 bool "Default bootloader kernel arguments"
292 string "Initial kernel command string"
293 depends on CMDLINE_BOOL
294 default "console=ttySC1,115200"
296 # Platform-specific memory start and size definitions
298 hex "Physical memory start address" if !MEMORY_SET || MEMORY_OVERRIDE
299 default "0x08000000" if !MEMORY_SET || MEMORY_OVERRIDE || !MEMORY_OVERRIDE && SH_ADX || SH_MPC1211 || SH_SECUREEDGE5410
300 default "0x0c000000" if !MEMORY_OVERRIDE && (SH_DREAMCAST || SH_HP600 || SH_BIGSUR || SH_SH2000 || SH_7751_SOLUTION_ENGINE || SH_SOLUTION_ENGINE || SH_HS7751RVOIP || SH_RTS7751R2D)
302 Computers built with Hitachi SuperH processors always
303 map the ROM starting at address zero. But the processor
304 does not specify the range that RAM takes.
306 The physical memory (RAM) start address will be automatically
307 set to 08000000, unless you selected one of the following
308 processor types: SolutionEngine, Overdrive, HP620, HP680, HP690,
309 in which case the start address will be set to 0c000000.
311 Tweak this only when porting to a new machine which is not already
312 known by the config system. Changing it from the known correct
313 value on any of the known systems will only lead to disaster.
316 hex "Physical memory size" if !MEMORY_SET || MEMORY_OVERRIDE
317 default "0x00400000" if !MEMORY_SET || MEMORY_OVERRIDE || !MEMORY_OVERRIDE && SH_ADX || !MEMORY_OVERRIDE && (SH_HP600 || SH_BIGSUR || SH_SH2000)
318 default "0x01000000" if !MEMORY_OVERRIDE && SH_DREAMCAST || SH_SECUREEDGE5410
319 default "0x04000000" if !MEMORY_OVERRIDE && (SH_7751_SOLUTION_ENGINE || SH_HS7751RVOIP || SH_RTS7751R2D)
320 default "0x02000000" if !MEMORY_OVERRIDE && SH_SOLUTION_ENGINE
321 default "0x08000000" if SH_MPC1211
323 This sets the default memory size assumed by your SH kernel. It can
324 be overridden as normal by the 'mem=' argument on the kernel command
325 line. If unsure, consult your board specifications or just leave it
326 as 0x00400000 which was the default value before this became
331 depends on !MEMORY_OVERRIDE && (SH_MPC1211 || SH_ADX || SH_DREAMCAST || SH_HP600 || SH_BIGSUR || SH_SH2000 || SH_7751_SOLUTION_ENGINE || SH_SOLUTION_ENGINE || SH_SECUREEDGE5410 || SH_HS7751RVOIP || SH_RTS7751R2D)
334 This is an option about which you will never be asked a question.
335 Therefore, I conclude that you do not exist - go away.
337 There is a grue here.
339 # If none of the above have set memory start/size, ask the user.
340 config MEMORY_OVERRIDE
341 bool "Override default load address and memory size"
343 # XXX: break these out into the board-specific configs below
345 bool "Compact Flash Enabler support"
346 depends on SH_ADX || SH_SOLUTION_ENGINE || SH_UNKNOWN || SH_CAT68701
348 Compact Flash is a small, removable mass storage device introduced
349 in 1994 originally as a PCMCIA device. If you say `Y' here, you
350 compile in support for Compact Flash devices directly connected to
351 a SuperH processor. A Compact Flash FAQ is available at
352 <http://www.compactflash.org/faqs/faq.htm>.
354 If your board has "Directly Connected" CompactFlash at area 5 or 6,
355 you may want to enable this option. Then, you can use CF as
356 primary IDE drive (only tested for SanDisk).
358 If in doubt, select 'N'.
361 prompt "Compact Flash Connection Area"
362 depends on CF_ENABLER
368 If your board has "Directly Connected" CompactFlash, You should
369 select the area where your CF is connected to.
371 - "Area5" if CompactFlash is connected to Area 5 (0x14000000)
372 - "Area6" if it is connected to Area 6 (0x18000000)
374 "Area6" will work for most boards. For ADX, select "Area5".
383 depends on CF_ENABLER
384 default "0xb8000000" if CF_AREA6
385 default "0xb4000000" if CF_AREA5
387 # The SH7750 RTC module is disabled in the Dreamcast
390 depends on !SH_DREAMCAST && !SH_SATURN && !SH_7300_SOLUTION_ENGINE
393 Selecting this option will allow the Linux kernel to emulate
403 Selecting this option will enable support for SH processors that
404 have DSP units (ie, SH2-DSP and SH3-DSP). It is safe to say Y here
405 by default, as the existance of the DSP will be probed at runtime.
407 This option must be set in order to enable the DSP.
414 Selecting this option will allow the Linux kernel to use SH3 on-chip
421 depends on SH_HP620 || SH_HP680 || SH_HP690
424 config CPU_SUBTYPE_ST40
426 depends on CPU_SUBTYPE_ST40STB1 || CPU_SUBTYPE_ST40GX1
434 Say Y to upport efficient handling of discontiguous physical memory,
435 for architectures which are either NUMA (Non-Uniform Memory Access)
436 or have huge holes in the physical address space for other reasons.
437 See <file:Documentation/vm/numa> for more.
439 config ZERO_PAGE_OFFSET
440 hex "Zero page offset"
441 default "0x00001000" if !SH_MPC1211
442 default "0x00004000" if SH_MPC1211
444 This sets the default offset of zero page.
446 # XXX: needs to lose subtype for system type
447 config ST40_LMI_MEMORY
449 depends on CPU_SUBTYPE_ST40STB1
453 depends on CPU_SUBTYPE_ST40STB1 && ST40_LMI_MEMORY
458 depends on CPU_SUBTYPE_ST40STB1 && ST40_LMI_MEMORY
463 depends on CPU_SUBTYPE_ST40STB1 && ST40_LMI_MEMORY
466 config BOOT_LINK_OFFSET
467 hex "Link address offset for booting"
470 This option allows you to set the link address offset of the zImage.
471 This can be useful if you are on a board which has a small amount of
474 config CPU_LITTLE_ENDIAN
477 Some SuperH machines can be configured for either little or big
478 endian byte order. These modes require different kernels. Say Y if
479 your machine is little endian, N if it's a big endian machine.
482 bool "Preemptible Kernel (EXPERIMENTAL)"
483 depends on EXPERIMENTAL
486 bool "Wakeup UBC on startup"
488 Selecting this option will wakeup the User Break Controller (UBC) on
489 startup. Although the UBC is left in an awake state when the processor
490 comes up, some boot loaders misbehave by putting the UBC to sleep in a
491 power saving state, which causes issues with things like ptrace().
495 config SH_WRITETHROUGH
496 bool "Use write-through caching"
499 Selecting this option will configure the caches in write-through
500 mode, as opposed to the default write-back configuration.
502 Since there's sill some aliasing issues on SH-4, this option will
503 unfortunately still require the majority of flushing functions to
504 be implemented to deal with aliasing.
509 bool "Operand Cache RAM (OCRAM) support"
511 Selecting this option will automatically tear down the number of
512 sets in the dcache by half, which in turn exposes a memory range.
514 The addresses for the OC RAM base will vary according to the
515 processor version. Consult vendor documentation for specifics.
519 config SH_STORE_QUEUES
520 bool "Support for Store Queues"
523 Selecting this option will enable an in-kernel API for manipulating
524 the store queues integrated in the SH-4 processors.
527 bool "Symmetric multi-processing support"
529 This enables support for systems with more than one CPU. If you have
530 a system with only one CPU, like most personal computers, say N. If
531 you have a system with more than one CPU, say Y.
533 If you say N here, the kernel will run on single and multiprocessor
534 machines, but will use only one CPU of a multiprocessor machine. If
535 you say Y here, the kernel will run on many, but not all,
536 singleprocessor machines. On a singleprocessor machine, the kernel
537 will run faster if you say N here.
539 People using multiprocessor machines who say Y here should also say
540 Y to "Enhanced Real Time Clock Support", below.
542 See also the <file:Documentation/smp.txt>,
543 <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available
544 at <http://www.tldp.org/docs.html#howto>.
546 If you don't know what to do here, say N.
549 int "Maximum number of CPUs (2-32)"
554 This allows you to specify the maximum number of CPUs which this
555 kernel will support. The maximum supported value is 32 and the
556 minimum value which makes sense is 2.
558 This is purely to save memory - each supported CPU adds
559 approximately eight kilobytes to the kernel image.
561 config HS7751RVOIP_CODEC
562 bool "Support VoIP Codec section"
563 depends on SH_HS7751RVOIP
565 Selecting this option will support CODEC section.
567 config RTS7751R2D_REV11
568 bool "RTS7751R2D Rev. 1.1 board support"
569 depends on SH_RTS7751R2D
571 Selecting this option will support version rev. 1.1.
575 default n if CPU_SUBTYPE_SH7300
578 This option will cause the PCLK value to be probed at run-time. It
579 will display a notification if the probed value has greater than a
580 1% variance of the hardcoded CONFIG_SH_PCLK_FREQ.
583 int "Peripheral clock frequency (in Hz)"
584 default "49876504" if CPU_SUBTYPE_SH7750
585 default "60013568" if CPU_SUBTYPE_SH7751
586 default "33333333" if CPU_SUBTYPE_SH7300
589 This option is used to specify the peripheral clock frequency. This
590 option must be set for each processor in order for the kernel to
591 function reliably. If no sane default exists, we use a default from
592 the legacy i8254. Any discrepancies will be reported on boot time
593 with an auto-probed frequency which should be considered the proper
594 value for your hardware.
596 menu "CPU Frequency scaling"
599 bool "CPU Frequency scaling"
601 CPU clock scaling allows you to change the clock speed of the
602 running CPU on the fly.
604 For details, take a look at <file:Documentation/cpu-freq>.
608 source "drivers/cpufreq/Kconfig"
610 config CPU_FREQ_TABLE
611 tristate "CPU frequency table helpers"
615 Many cpufreq drivers use these helpers, so only say N here if
616 the cpufreq driver of your choice doesn't need these helpers.
621 tristate "SuperH CPU Frequency driver"
624 This adds the cpufreq driver for SuperH. At present, only
625 the SH-4 is supported.
627 For details, take a look at <file:Documentation/cpu-freq>.
633 source "arch/sh/drivers/dma/Kconfig"
635 source "arch/sh/cchips/Kconfig"
639 depends on SH_MPC1211 || SH_CAT68701 || SH_STB1_HARP || SH_STB1_OVERDRIVE || SH_BIGSUR || SH_7751_SOLUTION_ENGINE || SH_7300_SOLUTION_ENGINE || SH_SOLUTION_ENGINE || SH_RTS7751R2D
641 Use the power-on LED on your machine as a load meter. The exact
642 behavior is platform-dependent, but normally the flash frequency is
643 a hyperbolic function of the 5-minute load average.
646 tristate "EPSON RTC-9701JE support"
647 depends on SH_RTS7751R2D
649 Selecting this option will support EPSON RTC-9701JE.
654 menu "Bus options (PCI, PCMCIA, EISA, MCA, ISA)"
656 # Even on SuperH devices which don't have an ISA bus,
657 # this variable helps the PCMCIA modules handle
658 # IRQ requesting properly -- Greg Banks.
660 # Though we're generally not interested in it when
661 # we're not using PCMCIA, so we make it dependent on
662 # PCMCIA outright. -- PFM.
667 Find out whether you have ISA slots on your motherboard. ISA is the
668 name of a bus system, i.e. the way the CPU talks to the other stuff
669 inside your box. Other bus systems are PCI, EISA, MicroChannel
670 (MCA) or VESA. ISA is an older system, now being displaced by PCI;
671 newer boards don't support it. If you have ISA, say Y, otherwise N.
676 The Extended Industry Standard Architecture (EISA) bus was
677 developed as an open alternative to the IBM MicroChannel bus.
679 The EISA bus provided some of the features of the IBM MicroChannel
680 bus while maintaining backward compatibility with cards made for
681 the older ISA bus. The EISA bus saw limited use between 1988 and
682 1995 when it was made obsolete by the PCI bus.
684 Say Y here if you are building a kernel for an EISA-based machine.
691 MicroChannel Architecture is found in some IBM PS/2 machines and
692 laptops. It is a bus system similar to PCI or ISA. See
693 <file:Documentation/mca.txt> (and especially the web page given
694 there) before attempting to build an MCA bus kernel.
700 tristate "Maple Bus support"
701 depends on SH_DREAMCAST
704 source "arch/sh/drivers/pci/Kconfig"
706 source "drivers/pci/Kconfig"
708 source "drivers/pcmcia/Kconfig"
710 source "drivers/pci/hotplug/Kconfig"
714 menu "Executable file formats"
716 source "fs/Kconfig.binfmt"
720 menu "SH initrd options"
721 depends on BLK_DEV_INITRD
723 config EMBEDDED_RAMDISK
724 bool "Embed root filesystem ramdisk into the kernel"
726 config EMBEDDED_RAMDISK_IMAGE
727 string "Filename of gziped ramdisk image"
728 depends on EMBEDDED_RAMDISK
731 This is the filename of the ramdisk image to be built into the
732 kernel. Relative pathnames are relative to arch/mips/ramdisk/.
733 The ramdisk image is not part of the kernel distribution; you must
734 provide one yourself.
738 source "drivers/Kconfig"
742 source "arch/sh/oprofile/Kconfig"
744 source "arch/sh/Kconfig.debug"
746 source "kernel/vserver/Kconfig"
748 source "security/Kconfig"
750 source "crypto/Kconfig"