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/>.
17 config RWSEM_GENERIC_SPINLOCK
21 config RWSEM_XCHGADD_ALGORITHM
24 config GENERIC_HARDIRQS
28 config GENERIC_IRQ_PROBE
32 config GENERIC_CALIBRATE_DELAY
39 config ARCH_MAY_HAVE_PC_FDC
47 prompt "SuperH system type"
50 config SH_SOLUTION_ENGINE
53 Select SolutionEngine if configuring for a Hitachi SH7709
54 or SH7750 evaluation board.
56 config SH_7751_SOLUTION_ENGINE
57 bool "SolutionEngine7751"
58 select CPU_SUBTYPE_SH7751
60 Select 7751 SolutionEngine if configuring for a Hitachi SH7751
63 config SH_7300_SOLUTION_ENGINE
64 bool "SolutionEngine7300"
65 select CPU_SUBTYPE_SH7300
67 Select 7300 SolutionEngine if configuring for a Hitachi SH7300(SH-Mobile V)
70 config SH_73180_SOLUTION_ENGINE
71 bool "SolutionEngine73180"
72 select CPU_SUBTYPE_SH73180
74 Select 73180 SolutionEngine if configuring for a Hitachi SH73180(SH-Mobile 3)
77 config SH_7751_SYSTEMH
79 select CPU_SUBTYPE_SH7751R
81 Select SystemH if you are configuring for a Renesas SystemH
82 7751R evaluation board.
87 config SH_STB1_OVERDRIVE
93 Select HP6XX if configuring for a HP jornada HP6xx.
94 More information (hardware only) at
95 <http://www.hp.com/jornada/>.
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.
118 select CPU_SUBTYPE_SH7604
120 Select Saturn if configuring for a SEGA Saturn.
124 select CPU_SUBTYPE_SH7091
126 Select Dreamcast if configuring for a SEGA Dreamcast.
128 <http://www.m17n.org/linux-sh/dreamcast/>. There is a
129 Dreamcast project is at <http://linuxdc.sourceforge.net/>.
139 select CPU_SUBTYPE_SH7709
141 SH-2000 is a single-board computer based around SH7709A chip
142 intended for embedded applications.
143 It has an Ethernet interface (CS8900A), direct connected
144 Compact Flash socket, three serial ports and PC-104 bus.
145 More information at <http://sh2000.sh-linux.org>.
151 bool "Interface MPC1211"
153 CTP/PCI-SH02 is a CPU module computer that is produced
154 by Interface Corporation.
155 More information at <http://www.interface.co.jp>
158 bool "Interface CTP/PCI-SH03"
160 CTP/PCI-SH03 is a CPU module computer that is produced
161 by Interface Corporation.
162 More information at <http://www.interface.co.jp>
164 config SH_SECUREEDGE5410
165 bool "SecureEdge5410"
166 select CPU_SUBTYPE_SH7751R
168 Select SecureEdge5410 if configuring for a SnapGear SH board.
169 This includes both the OEM SecureEdge products as well as the
172 config SH_HS7751RVOIP
174 select CPU_SUBTYPE_SH7751R
176 Select HS7751RVOIP if configuring for a Renesas Technology
181 select CPU_SUBTYPE_SH7751R
183 Select RTS7751R2D if configuring for a Renesas Technology
184 Sales SH-Graphics board.
188 select CPU_SUBTYPE_SH7780
190 Select R7780RP-1 if configuring for a Renesas Solutions
195 select CPU_SUBTYPE_SH7705
197 config SH_SH4202_MICRODEV
198 bool "SH4-202 MicroDev"
199 select CPU_SUBTYPE_SH4_202
201 Select SH4-202 MicroDev if configuring for a SuperH MicroDev board
206 select CPU_SUBTYPE_SH7751R
208 I-O DATA DEVICE, INC. "LANDISK Series" support.
212 select CPU_SUBTYPE_SH7751R
214 Select Titan if you are configuring for a Nimble Microsystems
220 "Bare CPU" aka "unknown" means an SH-based system which is not one
221 of the specific ones mentioned above, which means you need to enter
222 all sorts of stuff like CONFIG_MEMORY_START because the config
223 system doesn't already know what it is. You get a machine vector
224 without any platform-specific code in it, so things like the RTC may
227 This option is for the early stages of porting to a new machine.
231 source "arch/sh/mm/Kconfig"
234 hex "Physical memory start address"
237 Computers built with Hitachi SuperH processors always
238 map the ROM starting at address zero. But the processor
239 does not specify the range that RAM takes.
241 The physical memory (RAM) start address will be automatically
242 set to 08000000. Other platforms, such as the Solution Engine
243 boards typically map RAM at 0C000000.
245 Tweak this only when porting to a new machine which does not
246 already have a defconfig. Changing it from the known correct
247 value on any of the known systems will only lead to disaster.
250 hex "Physical memory size"
253 This sets the default memory size assumed by your SH kernel. It can
254 be overridden as normal by the 'mem=' argument on the kernel command
255 line. If unsure, consult your board specifications or just leave it
256 as 0x00400000 which was the default value before this became
260 bool "Compact Flash Enabler support"
261 depends on SH_ADX || SH_SOLUTION_ENGINE || SH_UNKNOWN || SH_CAT68701 || SH_SH03
263 Compact Flash is a small, removable mass storage device introduced
264 in 1994 originally as a PCMCIA device. If you say `Y' here, you
265 compile in support for Compact Flash devices directly connected to
266 a SuperH processor. A Compact Flash FAQ is available at
267 <http://www.compactflash.org/faqs/faq.htm>.
269 If your board has "Directly Connected" CompactFlash at area 5 or 6,
270 you may want to enable this option. Then, you can use CF as
271 primary IDE drive (only tested for SanDisk).
273 If in doubt, select 'N'.
276 prompt "Compact Flash Connection Area"
277 depends on CF_ENABLER
283 If your board has "Directly Connected" CompactFlash, You should
284 select the area where your CF is connected to.
286 - "Area5" if CompactFlash is connected to Area 5 (0x14000000)
287 - "Area6" if it is connected to Area 6 (0x18000000)
289 "Area6" will work for most boards. For ADX, select "Area5".
298 depends on CF_ENABLER
299 default "0xb8000000" if CF_AREA6
300 default "0xb4000000" if CF_AREA5
302 menu "Processor features"
304 config CPU_LITTLE_ENDIAN
307 Some SuperH machines can be configured for either little or big
308 endian byte order. These modes require different kernels. Say Y if
309 your machine is little endian, N if it's a big endian machine.
311 # The SH7750 RTC module is disabled in the Dreamcast
314 depends on !SH_DREAMCAST && !SH_SATURN && !SH_7300_SOLUTION_ENGINE && \
315 !SH_73180_SOLUTION_ENGINE && !SH_LANDISK && \
319 Selecting this option will allow the Linux kernel to emulate
329 Selecting this option will enable support for SH processors that
330 have FPU units (ie, SH77xx).
332 This option must be set in order to enable the FPU.
339 Selecting this option will enable support for SH processors that
340 have DSP units (ie, SH2-DSP and SH3-DSP). It is safe to say Y here
341 by default, as the existance of the DSP will be probed at runtime.
343 This option must be set in order to enable the DSP.
350 Selecting this option will allow the Linux kernel to use SH3 on-chip
355 config SH_STORE_QUEUES
356 bool "Support for Store Queues"
359 Selecting this option will enable an in-kernel API for manipulating
360 the store queues integrated in the SH-4 processors.
362 config CPU_HAS_INTEVT
365 config CPU_HAS_PINT_IRQ
368 config CPU_HAS_INTC2_IRQ
373 depends on CPU_SH3 || CPU_SH4
376 This will enable the use of SR.RB register bank usage. Processors
377 that are lacking this bit must have another method in place for
378 accomplishing what is taken care of by the banked registers.
380 See <file:Documentation/sh/register-banks.txt> for further
381 information on SR.RB and register banking in the kernel in general.
388 bool "TMU timer support"
391 This enables the use of the TMU as the system timer.
395 source "arch/sh/boards/renesas/hs7751rvoip/Kconfig"
397 source "arch/sh/boards/renesas/rts7751r2d/Kconfig"
400 int "Peripheral clock frequency (in Hz)"
401 default "50000000" if CPU_SUBTYPE_SH7750 || CPU_SUBTYPE_SH7780
402 default "60000000" if CPU_SUBTYPE_SH7751
403 default "33333333" if CPU_SUBTYPE_SH7300 || CPU_SUBTYPE_SH7770 || CPU_SUBTYPE_SH7760
404 default "27000000" if CPU_SUBTYPE_SH73180
405 default "66000000" if CPU_SUBTYPE_SH4_202
407 This option is used to specify the peripheral clock frequency.
408 This is necessary for determining the reference clock value on
409 platforms lacking an RTC.
411 menu "CPU Frequency scaling"
413 source "drivers/cpufreq/Kconfig"
416 tristate "SuperH CPU Frequency driver"
418 select CPU_FREQ_TABLE
420 This adds the cpufreq driver for SuperH. At present, only
421 the SH-4 is supported.
423 For details, take a look at <file:Documentation/cpu-freq>.
429 source "arch/sh/drivers/dma/Kconfig"
431 source "arch/sh/cchips/Kconfig"
435 depends on SH_MPC1211 || SH_SH03 || SH_CAT68701 || \
436 SH_STB1_HARP || SH_STB1_OVERDRIVE || SH_BIGSUR || \
437 SH_7751_SOLUTION_ENGINE || SH_7300_SOLUTION_ENGINE || \
438 SH_73180_SOLUTION_ENGINE || SH_SOLUTION_ENGINE || \
439 SH_RTS7751R2D || SH_SH4202_MICRODEV || SH_LANDISK
441 Use the power-on LED on your machine as a load meter. The exact
442 behavior is platform-dependent, but normally the flash frequency is
443 a hyperbolic function of the 5-minute load average.
452 menu "Kernel features"
455 bool "kexec system call (EXPERIMENTAL)"
456 depends on EXPERIMENTAL
458 kexec is a system call that implements the ability to shutdown your
459 current kernel, and to start another kernel. It is like a reboot
460 but it is indepedent of the system firmware. And like a reboot
461 you can start any kernel with it, not just Linux.
463 The name comes from the similiarity to the exec system call.
465 It is an ongoing process to be certain the hardware in a machine
466 is properly shutdown, so do not be surprised if this code does not
467 initially work for you. It may help to enable device hotplugging
468 support. As of this writing the exact hardware interface is
469 strongly in flux, so no good recommendation can be made.
472 bool "Preemptible Kernel (EXPERIMENTAL)"
473 depends on EXPERIMENTAL
476 bool "Symmetric multi-processing support"
478 This enables support for systems with more than one CPU. If you have
479 a system with only one CPU, like most personal computers, say N. If
480 you have a system with more than one CPU, say Y.
482 If you say N here, the kernel will run on single and multiprocessor
483 machines, but will use only one CPU of a multiprocessor machine. If
484 you say Y here, the kernel will run on many, but not all,
485 singleprocessor machines. On a singleprocessor machine, the kernel
486 will run faster if you say N here.
488 People using multiprocessor machines who say Y here should also say
489 Y to "Enhanced Real Time Clock Support", below.
491 See also the <file:Documentation/smp.txt>,
492 <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available
493 at <http://www.tldp.org/docs.html#howto>.
495 If you don't know what to do here, say N.
498 int "Maximum number of CPUs (2-32)"
503 This allows you to specify the maximum number of CPUs which this
504 kernel will support. The maximum supported value is 32 and the
505 minimum value which makes sense is 2.
507 This is purely to save memory - each supported CPU adds
508 approximately eight kilobytes to the kernel image.
512 depends on CPU_SH3 || CPU_SH4
515 This will enable the use of SR.RB register bank usage. Processors
516 that are lacking this bit must have another method in place for
517 accomplishing what is taken care of by the banked registers.
519 See <file:Documentation/sh/register-banks.txt> for further
520 information on SR.RB and register banking in the kernel in general.
526 config ZERO_PAGE_OFFSET
527 hex "Zero page offset"
528 default "0x00004000" if SH_MPC1211 || SH_SH03
531 This sets the default offset of zero page.
533 config BOOT_LINK_OFFSET
534 hex "Link address offset for booting"
537 This option allows you to set the link address offset of the zImage.
538 This can be useful if you are on a board which has a small amount of
542 bool "Wakeup UBC on startup"
544 Selecting this option will wakeup the User Break Controller (UBC) on
545 startup. Although the UBC is left in an awake state when the processor
546 comes up, some boot loaders misbehave by putting the UBC to sleep in a
547 power saving state, which causes issues with things like ptrace().
552 bool "Default bootloader kernel arguments"
555 string "Initial kernel command string"
556 depends on CMDLINE_BOOL
557 default "console=ttySC1,115200"
563 # Even on SuperH devices which don't have an ISA bus,
564 # this variable helps the PCMCIA modules handle
565 # IRQ requesting properly -- Greg Banks.
567 # Though we're generally not interested in it when
568 # we're not using PCMCIA, so we make it dependent on
569 # PCMCIA outright. -- PFM.
574 Find out whether you have ISA slots on your motherboard. ISA is the
575 name of a bus system, i.e. the way the CPU talks to the other stuff
576 inside your box. Other bus systems are PCI, EISA, MicroChannel
577 (MCA) or VESA. ISA is an older system, now being displaced by PCI;
578 newer boards don't support it. If you have ISA, say Y, otherwise N.
583 The Extended Industry Standard Architecture (EISA) bus was
584 developed as an open alternative to the IBM MicroChannel bus.
586 The EISA bus provided some of the features of the IBM MicroChannel
587 bus while maintaining backward compatibility with cards made for
588 the older ISA bus. The EISA bus saw limited use between 1988 and
589 1995 when it was made obsolete by the PCI bus.
591 Say Y here if you are building a kernel for an EISA-based machine.
598 MicroChannel Architecture is found in some IBM PS/2 machines and
599 laptops. It is a bus system similar to PCI or ISA. See
600 <file:Documentation/mca.txt> (and especially the web page given
601 there) before attempting to build an MCA bus kernel.
607 tristate "SuperHyway Bus support"
608 depends on CPU_SUBTYPE_SH4_202
610 source "arch/sh/drivers/pci/Kconfig"
612 source "drivers/pci/Kconfig"
614 source "drivers/pcmcia/Kconfig"
616 source "drivers/pci/hotplug/Kconfig"
620 menu "Executable file formats"
622 source "fs/Kconfig.binfmt"
628 source "drivers/Kconfig"
632 source "arch/sh/oprofile/Kconfig"
634 source "arch/sh/Kconfig.debug"
636 source "security/Kconfig"
638 source "crypto/Kconfig"