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_73180_SOLUTION_ENGINE
55 bool "SolutionEngine73180"
57 Select 73180 SolutionEngine if configuring for a Hitachi SH73180(SH-Mobile 3)
60 config SH_7751_SYSTEMH
63 Select SystemH if you are configuring for a Renesas SystemH
64 7751R evaluation board.
69 config SH_STB1_OVERDRIVE
75 Select HP620 if configuring for a HP jornada HP620.
76 More information (hardware only) at
77 <http://www.hp.com/jornada/>.
82 Select HP680 if configuring for a HP Jornada HP680.
83 More information (hardware only) at
84 <http://www.hp.com/jornada/products/680/>.
89 Select HP690 if configuring for a HP Jornada HP690.
90 More information (hardware only)
91 at <http://www.hp.com/jornada/products/680/>.
96 Select CqREEK if configuring for a CqREEK SH7708 or SH7750.
98 <http://sources.redhat.com/ecos/hardware.html#SuperH>.
103 Select DMIDA if configuring for a DataMyte 4000 Industrial
104 Digital Assistant. More information at <http://www.dmida.com/>.
109 Select EC3104 if configuring for a system with an Eclipse
110 International EC3104 chip, e.g. the Harris AD2000.
115 Select Saturn if configuring for a SEGA Saturn.
120 Select Dreamcast if configuring for a SEGA Dreamcast.
122 <http://www.m17n.org/linux-sh/dreamcast/>. There is a
123 Dreamcast project is at <http://linuxdc.sourceforge.net/>.
134 SH-2000 is a single-board computer based around SH7709A chip
135 intended for embedded applications.
136 It has an Ethernet interface (CS8900A), direct connected
137 Compact Flash socket, three serial ports and PC-104 bus.
138 More information at <http://sh2000.sh-linux.org>.
149 CTP/PCI-SH03 is a CPU module computer that produced
150 by Interface Corporation.
151 It is compact and excellent in durability.
152 It will play an active part in your factory or laboratory
154 More information at <http://www.interface.co.jp>
156 config SH_SECUREEDGE5410
157 bool "SecureEdge5410"
159 Select SecureEdge5410 if configuring for a SnapGear SH board.
160 This includes both the OEM SecureEdge products as well as the
163 config SH_HS7751RVOIP
166 Select HS7751RVOIP if configuring for a Renesas Technology
172 Select RTS7751R2D if configuring for a Renesas Technology
173 Sales SH-Graphics board.
178 config SH_SH4202_MICRODEV
179 bool "SH4-202 MicroDev"
181 Select SH4-202 MicroDev if configuring for a SuperH MicroDev board
187 "Bare CPU" aka "unknown" means an SH-based system which is not one
188 of the specific ones mentioned above, which means you need to enter
189 all sorts of stuff like CONFIG_MEMORY_START because the config
190 system doesn't already know what it is. You get a machine vector
191 without any platform-specific code in it, so things like the RTC may
194 This option is for the early stages of porting to a new machine.
199 prompt "Processor family"
202 This option determines the CPU family to compile for. Supported
203 targets are SH-2, SH-3, and SH-4. These options are independent of
204 CPU functionality. As such, SH-DSP users will still want to select
205 their respective processor family in addition to the DSP support
210 select SH_WRITETHROUGH
221 prompt "Processor subtype"
223 config CPU_SUBTYPE_SH7604
227 Select SH7604 if you have SH7604
229 config CPU_SUBTYPE_SH7300
233 config CPU_SUBTYPE_SH7705
237 config CPU_SUBTYPE_SH7707
241 Select SH7707 if you have a 60 Mhz SH-3 HD6417707 CPU.
243 config CPU_SUBTYPE_SH7708
247 Select SH7708 if you have a 60 Mhz SH-3 HD6417708S or
248 if you have a 100 Mhz SH-3 HD6417708R CPU.
250 config CPU_SUBTYPE_SH7709
254 Select SH7709 if you have a 80 Mhz SH-3 HD6417709 CPU.
256 config CPU_SUBTYPE_SH7750
260 Select SH7750 if you have a 200 Mhz SH-4 HD6417750 CPU.
262 config CPU_SUBTYPE_SH7751
263 bool "SH7751/SH7751R"
266 Select SH7751 if you have a 166 Mhz SH-4 HD6417751 CPU,
267 or if you have a HD6417751R CPU.
269 config CPU_SUBTYPE_SH7760
273 config CPU_SUBTYPE_SH73180
277 config CPU_SUBTYPE_ST40STB1
278 bool "ST40STB1 / ST40RA"
281 Select ST40STB1 if you have a ST40RA CPU.
282 This was previously called the ST40STB1, hence the option name.
284 config CPU_SUBTYPE_ST40GX1
288 Select ST40GX1 if you have a ST40GX1 CPU.
290 config CPU_SUBTYPE_SH4_202
296 config SH7705_CACHE_32KB
297 bool "Enable 32KB cache size for SH7705"
298 depends on CPU_SUBTYPE_SH7705
302 bool "Support for memory management hardware"
306 Early SH processors (such as the SH7604) lack an MMU. In order to
307 boot on these systems, this option must not be set.
309 On other systems (such as the SH-3 and 4) where an MMU exists,
310 turning this off will boot the kernel on these machines with the
311 MMU implicitly switched off.
314 prompt "HugeTLB page size"
315 depends on HUGETLB_PAGE && CPU_SH4 && MMU
316 default HUGETLB_PAGE_SIZE_64K
318 config HUGETLB_PAGE_SIZE_64K
321 config HUGETLB_PAGE_SIZE_1MB
327 bool "Default bootloader kernel arguments"
330 string "Initial kernel command string"
331 depends on CMDLINE_BOOL
332 default "console=ttySC1,115200"
334 # Platform-specific memory start and size definitions
336 hex "Physical memory start address" if !MEMORY_SET || MEMORY_OVERRIDE
337 default "0x08000000" if !MEMORY_SET || MEMORY_OVERRIDE || !MEMORY_OVERRIDE && SH_ADX || SH_MPC1211 || SH_SH03 || SH_SECUREEDGE5410 || SH_SH4202_MICRODEV
338 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)
340 Computers built with Hitachi SuperH processors always
341 map the ROM starting at address zero. But the processor
342 does not specify the range that RAM takes.
344 The physical memory (RAM) start address will be automatically
345 set to 08000000, unless you selected one of the following
346 processor types: SolutionEngine, Overdrive, HP620, HP680, HP690,
347 in which case the start address will be set to 0c000000.
349 Tweak this only when porting to a new machine which is not already
350 known by the config system. Changing it from the known correct
351 value on any of the known systems will only lead to disaster.
354 hex "Physical memory size" if !MEMORY_SET || MEMORY_OVERRIDE
355 default "0x00400000" if !MEMORY_SET || MEMORY_OVERRIDE || !MEMORY_OVERRIDE && SH_ADX || !MEMORY_OVERRIDE && (SH_HP600 || SH_BIGSUR || SH_SH2000)
356 default "0x01000000" if !MEMORY_OVERRIDE && SH_DREAMCAST || SH_SECUREEDGE5410 || SH_EDOSK7705
357 default "0x02000000" if !MEMORY_OVERRIDE && (SH_73180_SOLUTION_ENGINE || SH_SOLUTION_ENGINE)
358 default "0x04000000" if !MEMORY_OVERRIDE && (SH_7300_SOLUTION_ENGINE || SH_7751_SOLUTION_ENGINE || SH_HS7751RVOIP || SH_RTS7751R2D || SH_SH4202_MICRODEV)
359 default "0x08000000" if SH_MPC1211 || SH_SH03
361 This sets the default memory size assumed by your SH kernel. It can
362 be overridden as normal by the 'mem=' argument on the kernel command
363 line. If unsure, consult your board specifications or just leave it
364 as 0x00400000 which was the default value before this became
369 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)
372 This is an option about which you will never be asked a question.
373 Therefore, I conclude that you do not exist - go away.
375 There is a grue here.
377 # If none of the above have set memory start/size, ask the user.
378 config MEMORY_OVERRIDE
379 bool "Override default load address and memory size"
381 # XXX: break these out into the board-specific configs below
383 bool "Compact Flash Enabler support"
384 depends on SH_ADX || SH_SOLUTION_ENGINE || SH_UNKNOWN || SH_CAT68701 || SH_SH03
386 Compact Flash is a small, removable mass storage device introduced
387 in 1994 originally as a PCMCIA device. If you say `Y' here, you
388 compile in support for Compact Flash devices directly connected to
389 a SuperH processor. A Compact Flash FAQ is available at
390 <http://www.compactflash.org/faqs/faq.htm>.
392 If your board has "Directly Connected" CompactFlash at area 5 or 6,
393 you may want to enable this option. Then, you can use CF as
394 primary IDE drive (only tested for SanDisk).
396 If in doubt, select 'N'.
399 prompt "Compact Flash Connection Area"
400 depends on CF_ENABLER
406 If your board has "Directly Connected" CompactFlash, You should
407 select the area where your CF is connected to.
409 - "Area5" if CompactFlash is connected to Area 5 (0x14000000)
410 - "Area6" if it is connected to Area 6 (0x18000000)
412 "Area6" will work for most boards. For ADX, select "Area5".
421 depends on CF_ENABLER
422 default "0xb8000000" if CF_AREA6
423 default "0xb4000000" if CF_AREA5
425 # The SH7750 RTC module is disabled in the Dreamcast
428 depends on !SH_DREAMCAST && !SH_SATURN && !SH_7300_SOLUTION_ENGINE && !SH_73180_SOLUTION_ENGINE
431 Selecting this option will allow the Linux kernel to emulate
441 Selecting this option will enable support for SH processors that
442 have FPU units (ie, SH77xx).
444 This option must be set in order to enable the FPU.
451 Selecting this option will enable support for SH processors that
452 have DSP units (ie, SH2-DSP and SH3-DSP). It is safe to say Y here
453 by default, as the existance of the DSP will be probed at runtime.
455 This option must be set in order to enable the DSP.
462 Selecting this option will allow the Linux kernel to use SH3 on-chip
469 depends on SH_HP620 || SH_HP680 || SH_HP690
472 config CPU_SUBTYPE_ST40
474 depends on CPU_SUBTYPE_ST40STB1 || CPU_SUBTYPE_ST40GX1
482 Say Y to upport efficient handling of discontiguous physical memory,
483 for architectures which are either NUMA (Non-Uniform Memory Access)
484 or have huge holes in the physical address space for other reasons.
485 See <file:Documentation/vm/numa> for more.
487 config ZERO_PAGE_OFFSET
488 hex "Zero page offset"
489 default "0x00001000" if !(SH_MPC1211 || SH_SH03)
490 default "0x00004000" if SH_MPC1211 || SH_SH03
492 This sets the default offset of zero page.
494 # XXX: needs to lose subtype for system type
495 config ST40_LMI_MEMORY
497 depends on CPU_SUBTYPE_ST40STB1
501 depends on CPU_SUBTYPE_ST40STB1 && ST40_LMI_MEMORY
506 depends on CPU_SUBTYPE_ST40STB1 && ST40_LMI_MEMORY
511 depends on CPU_SUBTYPE_ST40STB1 && ST40_LMI_MEMORY
514 config BOOT_LINK_OFFSET
515 hex "Link address offset for booting"
518 This option allows you to set the link address offset of the zImage.
519 This can be useful if you are on a board which has a small amount of
522 config CPU_LITTLE_ENDIAN
525 Some SuperH machines can be configured for either little or big
526 endian byte order. These modes require different kernels. Say Y if
527 your machine is little endian, N if it's a big endian machine.
530 bool "Preemptible Kernel (EXPERIMENTAL)"
531 depends on EXPERIMENTAL
534 bool "Wakeup UBC on startup"
536 Selecting this option will wakeup the User Break Controller (UBC) on
537 startup. Although the UBC is left in an awake state when the processor
538 comes up, some boot loaders misbehave by putting the UBC to sleep in a
539 power saving state, which causes issues with things like ptrace().
543 config SH_WRITETHROUGH
544 bool "Use write-through caching"
547 Selecting this option will configure the caches in write-through
548 mode, as opposed to the default write-back configuration.
550 Since there's sill some aliasing issues on SH-4, this option will
551 unfortunately still require the majority of flushing functions to
552 be implemented to deal with aliasing.
557 bool "Operand Cache RAM (OCRAM) support"
559 Selecting this option will automatically tear down the number of
560 sets in the dcache by half, which in turn exposes a memory range.
562 The addresses for the OC RAM base will vary according to the
563 processor version. Consult vendor documentation for specifics.
567 config SH_STORE_QUEUES
568 bool "Support for Store Queues"
571 Selecting this option will enable an in-kernel API for manipulating
572 the store queues integrated in the SH-4 processors.
575 bool "Symmetric multi-processing support"
577 This enables support for systems with more than one CPU. If you have
578 a system with only one CPU, like most personal computers, say N. If
579 you have a system with more than one CPU, say Y.
581 If you say N here, the kernel will run on single and multiprocessor
582 machines, but will use only one CPU of a multiprocessor machine. If
583 you say Y here, the kernel will run on many, but not all,
584 singleprocessor machines. On a singleprocessor machine, the kernel
585 will run faster if you say N here.
587 People using multiprocessor machines who say Y here should also say
588 Y to "Enhanced Real Time Clock Support", below.
590 See also the <file:Documentation/smp.txt>,
591 <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available
592 at <http://www.tldp.org/docs.html#howto>.
594 If you don't know what to do here, say N.
597 int "Maximum number of CPUs (2-32)"
602 This allows you to specify the maximum number of CPUs which this
603 kernel will support. The maximum supported value is 32 and the
604 minimum value which makes sense is 2.
606 This is purely to save memory - each supported CPU adds
607 approximately eight kilobytes to the kernel image.
609 config HS7751RVOIP_CODEC
610 bool "Support VoIP Codec section"
611 depends on SH_HS7751RVOIP
613 Selecting this option will support CODEC section.
615 config RTS7751R2D_REV11
616 bool "RTS7751R2D Rev. 1.1 board support"
617 depends on SH_RTS7751R2D
619 Selecting this option will support version rev. 1.1.
623 default n if CPU_SUBTYPE_SH7300 || CPU_SUBTYPE_SH73180
626 This option will cause the PCLK value to be probed at run-time. It
627 will display a notification if the probed value has greater than a
628 1% variance of the hardcoded CONFIG_SH_PCLK_FREQ.
631 int "Peripheral clock frequency (in Hz)"
632 default "50000000" if CPU_SUBTYPE_SH7750
633 default "60000000" if CPU_SUBTYPE_SH7751
634 default "33333333" if CPU_SUBTYPE_SH7300
635 default "27000000" if CPU_SUBTYPE_SH73180
636 default "66000000" if CPU_SUBTYPE_SH4_202
639 This option is used to specify the peripheral clock frequency. This
640 option must be set for each processor in order for the kernel to
641 function reliably. If no sane default exists, we use a default from
642 the legacy i8254. Any discrepancies will be reported on boot time
643 with an auto-probed frequency which should be considered the proper
644 value for your hardware.
646 menu "CPU Frequency scaling"
648 source "drivers/cpufreq/Kconfig"
650 config CPU_FREQ_TABLE
651 tristate "CPU frequency table helpers"
655 Many cpufreq drivers use these helpers, so only say N here if
656 the cpufreq driver of your choice doesn't need these helpers.
661 tristate "SuperH CPU Frequency driver"
664 This adds the cpufreq driver for SuperH. At present, only
665 the SH-4 is supported.
667 For details, take a look at <file:Documentation/cpu-freq>.
673 source "arch/sh/drivers/dma/Kconfig"
675 source "arch/sh/cchips/Kconfig"
679 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
681 Use the power-on LED on your machine as a load meter. The exact
682 behavior is platform-dependent, but normally the flash frequency is
683 a hyperbolic function of the 5-minute load average.
686 tristate "EPSON RTC-9701JE support"
687 depends on SH_RTS7751R2D
689 Selecting this option will support EPSON RTC-9701JE.
694 menu "Bus options (PCI, PCMCIA, EISA, MCA, ISA)"
696 # Even on SuperH devices which don't have an ISA bus,
697 # this variable helps the PCMCIA modules handle
698 # IRQ requesting properly -- Greg Banks.
700 # Though we're generally not interested in it when
701 # we're not using PCMCIA, so we make it dependent on
702 # PCMCIA outright. -- PFM.
705 default y if PCMCIA || SMC91X
707 Find out whether you have ISA slots on your motherboard. ISA is the
708 name of a bus system, i.e. the way the CPU talks to the other stuff
709 inside your box. Other bus systems are PCI, EISA, MicroChannel
710 (MCA) or VESA. ISA is an older system, now being displaced by PCI;
711 newer boards don't support it. If you have ISA, say Y, otherwise N.
716 The Extended Industry Standard Architecture (EISA) bus was
717 developed as an open alternative to the IBM MicroChannel bus.
719 The EISA bus provided some of the features of the IBM MicroChannel
720 bus while maintaining backward compatibility with cards made for
721 the older ISA bus. The EISA bus saw limited use between 1988 and
722 1995 when it was made obsolete by the PCI bus.
724 Say Y here if you are building a kernel for an EISA-based machine.
731 MicroChannel Architecture is found in some IBM PS/2 machines and
732 laptops. It is a bus system similar to PCI or ISA. See
733 <file:Documentation/mca.txt> (and especially the web page given
734 there) before attempting to build an MCA bus kernel.
740 tristate "Maple Bus support"
741 depends on SH_DREAMCAST
744 source "arch/sh/drivers/pci/Kconfig"
746 source "drivers/pci/Kconfig"
748 source "drivers/pcmcia/Kconfig"
750 source "drivers/pci/hotplug/Kconfig"
755 menu "Executable file formats"
757 source "fs/Kconfig.binfmt"
761 menu "SH initrd options"
762 depends on BLK_DEV_INITRD
764 config EMBEDDED_RAMDISK
765 bool "Embed root filesystem ramdisk into the kernel"
767 config EMBEDDED_RAMDISK_IMAGE
768 string "Filename of gziped ramdisk image"
769 depends on EMBEDDED_RAMDISK
772 This is the filename of the ramdisk image to be built into the
773 kernel. Relative pathnames are relative to arch/sh/ramdisk/.
774 The ramdisk image is not part of the kernel distribution; you must
775 provide one yourself.
779 source "drivers/Kconfig"
783 source "arch/sh/oprofile/Kconfig"
785 source "arch/sh/Kconfig.debug"
787 source "kernel/vserver/Kconfig"
789 source "security/Kconfig"
791 source "crypto/Kconfig"