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_FIND_NEXT_BIT
28 config GENERIC_HWEIGHT
32 config GENERIC_HARDIRQS
36 config GENERIC_IRQ_PROBE
40 config GENERIC_CALIBRATE_DELAY
47 config ARCH_MAY_HAVE_PC_FDC
55 prompt "SuperH system type"
58 config SH_SOLUTION_ENGINE
61 Select SolutionEngine if configuring for a Hitachi SH7709
62 or SH7750 evaluation board.
64 config SH_7751_SOLUTION_ENGINE
65 bool "SolutionEngine7751"
66 select CPU_SUBTYPE_SH7751
68 Select 7751 SolutionEngine if configuring for a Hitachi SH7751
71 config SH_7300_SOLUTION_ENGINE
72 bool "SolutionEngine7300"
73 select CPU_SUBTYPE_SH7300
75 Select 7300 SolutionEngine if configuring for a Hitachi SH7300(SH-Mobile V)
78 config SH_73180_SOLUTION_ENGINE
79 bool "SolutionEngine73180"
80 select CPU_SUBTYPE_SH73180
82 Select 73180 SolutionEngine if configuring for a Hitachi SH73180(SH-Mobile 3)
85 config SH_7751_SYSTEMH
87 select CPU_SUBTYPE_SH7751R
89 Select SystemH if you are configuring for a Renesas SystemH
90 7751R evaluation board.
95 config SH_STB1_OVERDRIVE
101 Select HP6XX if configuring for a HP jornada HP6xx.
102 More information (hardware only) at
103 <http://www.hp.com/jornada/>.
108 Select CqREEK if configuring for a CqREEK SH7708 or SH7750.
110 <http://sources.redhat.com/ecos/hardware.html#SuperH>.
115 Select DMIDA if configuring for a DataMyte 4000 Industrial
116 Digital Assistant. More information at <http://www.dmida.com/>.
121 Select EC3104 if configuring for a system with an Eclipse
122 International EC3104 chip, e.g. the Harris AD2000.
126 select CPU_SUBTYPE_SH7604
128 Select Saturn if configuring for a SEGA Saturn.
132 select CPU_SUBTYPE_SH7091
134 Select Dreamcast if configuring for a SEGA Dreamcast.
136 <http://www.m17n.org/linux-sh/dreamcast/>. There is a
137 Dreamcast project is at <http://linuxdc.sourceforge.net/>.
147 select CPU_SUBTYPE_SH7709
149 SH-2000 is a single-board computer based around SH7709A chip
150 intended for embedded applications.
151 It has an Ethernet interface (CS8900A), direct connected
152 Compact Flash socket, three serial ports and PC-104 bus.
153 More information at <http://sh2000.sh-linux.org>.
159 bool "Interface MPC1211"
161 CTP/PCI-SH02 is a CPU module computer that is produced
162 by Interface Corporation.
163 More information at <http://www.interface.co.jp>
166 bool "Interface CTP/PCI-SH03"
168 CTP/PCI-SH03 is a CPU module computer that is produced
169 by Interface Corporation.
170 More information at <http://www.interface.co.jp>
172 config SH_SECUREEDGE5410
173 bool "SecureEdge5410"
174 select CPU_SUBTYPE_SH7751R
176 Select SecureEdge5410 if configuring for a SnapGear SH board.
177 This includes both the OEM SecureEdge products as well as the
180 config SH_HS7751RVOIP
182 select CPU_SUBTYPE_SH7751R
184 Select HS7751RVOIP if configuring for a Renesas Technology
189 select CPU_SUBTYPE_SH7751R
191 Select RTS7751R2D if configuring for a Renesas Technology
192 Sales SH-Graphics board.
196 select CPU_SUBTYPE_SH7780
198 Select R7780RP-1 if configuring for a Renesas Solutions
203 select CPU_SUBTYPE_SH7705
205 config SH_SH4202_MICRODEV
206 bool "SH4-202 MicroDev"
207 select CPU_SUBTYPE_SH4_202
209 Select SH4-202 MicroDev if configuring for a SuperH MicroDev board
214 select CPU_SUBTYPE_SH7751R
216 I-O DATA DEVICE, INC. "LANDISK Series" support.
220 select CPU_SUBTYPE_SH7751R
222 Select Titan if you are configuring for a Nimble Microsystems
228 "Bare CPU" aka "unknown" means an SH-based system which is not one
229 of the specific ones mentioned above, which means you need to enter
230 all sorts of stuff like CONFIG_MEMORY_START because the config
231 system doesn't already know what it is. You get a machine vector
232 without any platform-specific code in it, so things like the RTC may
235 This option is for the early stages of porting to a new machine.
239 source "arch/sh/mm/Kconfig"
242 hex "Physical memory start address"
245 Computers built with Hitachi SuperH processors always
246 map the ROM starting at address zero. But the processor
247 does not specify the range that RAM takes.
249 The physical memory (RAM) start address will be automatically
250 set to 08000000. Other platforms, such as the Solution Engine
251 boards typically map RAM at 0C000000.
253 Tweak this only when porting to a new machine which does not
254 already have a defconfig. Changing it from the known correct
255 value on any of the known systems will only lead to disaster.
258 hex "Physical memory size"
261 This sets the default memory size assumed by your SH kernel. It can
262 be overridden as normal by the 'mem=' argument on the kernel command
263 line. If unsure, consult your board specifications or just leave it
264 as 0x00400000 which was the default value before this became
268 bool "Compact Flash Enabler support"
269 depends on SH_ADX || SH_SOLUTION_ENGINE || SH_UNKNOWN || SH_CAT68701 || SH_SH03
271 Compact Flash is a small, removable mass storage device introduced
272 in 1994 originally as a PCMCIA device. If you say `Y' here, you
273 compile in support for Compact Flash devices directly connected to
274 a SuperH processor. A Compact Flash FAQ is available at
275 <http://www.compactflash.org/faqs/faq.htm>.
277 If your board has "Directly Connected" CompactFlash at area 5 or 6,
278 you may want to enable this option. Then, you can use CF as
279 primary IDE drive (only tested for SanDisk).
281 If in doubt, select 'N'.
284 prompt "Compact Flash Connection Area"
285 depends on CF_ENABLER
291 If your board has "Directly Connected" CompactFlash, You should
292 select the area where your CF is connected to.
294 - "Area5" if CompactFlash is connected to Area 5 (0x14000000)
295 - "Area6" if it is connected to Area 6 (0x18000000)
297 "Area6" will work for most boards. For ADX, select "Area5".
306 depends on CF_ENABLER
307 default "0xb8000000" if CF_AREA6
308 default "0xb4000000" if CF_AREA5
310 menu "Processor features"
312 config CPU_LITTLE_ENDIAN
315 Some SuperH machines can be configured for either little or big
316 endian byte order. These modes require different kernels. Say Y if
317 your machine is little endian, N if it's a big endian machine.
319 # The SH7750 RTC module is disabled in the Dreamcast
322 depends on !SH_DREAMCAST && !SH_SATURN && !SH_7300_SOLUTION_ENGINE && \
323 !SH_73180_SOLUTION_ENGINE && !SH_LANDISK && \
327 Selecting this option will allow the Linux kernel to emulate
337 Selecting this option will enable support for SH processors that
338 have FPU units (ie, SH77xx).
340 This option must be set in order to enable the FPU.
347 Selecting this option will enable support for SH processors that
348 have DSP units (ie, SH2-DSP and SH3-DSP). It is safe to say Y here
349 by default, as the existance of the DSP will be probed at runtime.
351 This option must be set in order to enable the DSP.
358 Selecting this option will allow the Linux kernel to use SH3 on-chip
363 config SH_STORE_QUEUES
364 bool "Support for Store Queues"
367 Selecting this option will enable an in-kernel API for manipulating
368 the store queues integrated in the SH-4 processors.
370 config CPU_HAS_INTEVT
373 config CPU_HAS_PINT_IRQ
376 config CPU_HAS_INTC2_IRQ
381 depends on CPU_SH3 || CPU_SH4
384 This will enable the use of SR.RB register bank usage. Processors
385 that are lacking this bit must have another method in place for
386 accomplishing what is taken care of by the banked registers.
388 See <file:Documentation/sh/register-banks.txt> for further
389 information on SR.RB and register banking in the kernel in general.
396 bool "TMU timer support"
399 This enables the use of the TMU as the system timer.
403 #source "arch/sh/boards/renesas/hs7751rvoip/Kconfig"
405 #source "arch/sh/boards/renesas/rts7751r2d/Kconfig"
408 int "Peripheral clock frequency (in Hz)"
409 default "50000000" if CPU_SUBTYPE_SH7750 || CPU_SUBTYPE_SH7780
410 default "60000000" if CPU_SUBTYPE_SH7751
411 default "33333333" if CPU_SUBTYPE_SH7300 || CPU_SUBTYPE_SH7770 || CPU_SUBTYPE_SH7760
412 default "27000000" if CPU_SUBTYPE_SH73180
413 default "66000000" if CPU_SUBTYPE_SH4_202
415 This option is used to specify the peripheral clock frequency.
416 This is necessary for determining the reference clock value on
417 platforms lacking an RTC.
419 menu "CPU Frequency scaling"
421 source "drivers/cpufreq/Kconfig"
424 tristate "SuperH CPU Frequency driver"
426 select CPU_FREQ_TABLE
428 This adds the cpufreq driver for SuperH. At present, only
429 the SH-4 is supported.
431 For details, take a look at <file:Documentation/cpu-freq>.
437 source "arch/sh/drivers/dma/Kconfig"
439 source "arch/sh/cchips/Kconfig"
443 depends on SH_MPC1211 || SH_SH03 || SH_CAT68701 || \
444 SH_STB1_HARP || SH_STB1_OVERDRIVE || SH_BIGSUR || \
445 SH_7751_SOLUTION_ENGINE || SH_7300_SOLUTION_ENGINE || \
446 SH_73180_SOLUTION_ENGINE || SH_SOLUTION_ENGINE || \
447 SH_RTS7751R2D || SH_SH4202_MICRODEV || SH_LANDISK
449 Use the power-on LED on your machine as a load meter. The exact
450 behavior is platform-dependent, but normally the flash frequency is
451 a hyperbolic function of the 5-minute load average.
457 depends on SH_MPC1211
460 menu "Kernel features"
463 bool "kexec system call (EXPERIMENTAL)"
464 depends on EXPERIMENTAL
466 kexec is a system call that implements the ability to shutdown your
467 current kernel, and to start another kernel. It is like a reboot
468 but it is indepedent of the system firmware. And like a reboot
469 you can start any kernel with it, not just Linux.
471 The name comes from the similiarity to the exec system call.
473 It is an ongoing process to be certain the hardware in a machine
474 is properly shutdown, so do not be surprised if this code does not
475 initially work for you. It may help to enable device hotplugging
476 support. As of this writing the exact hardware interface is
477 strongly in flux, so no good recommendation can be made.
480 bool "Preemptible Kernel (EXPERIMENTAL)"
481 depends on EXPERIMENTAL
484 bool "Symmetric multi-processing support"
486 This enables support for systems with more than one CPU. If you have
487 a system with only one CPU, like most personal computers, say N. If
488 you have a system with more than one CPU, say Y.
490 If you say N here, the kernel will run on single and multiprocessor
491 machines, but will use only one CPU of a multiprocessor machine. If
492 you say Y here, the kernel will run on many, but not all,
493 singleprocessor machines. On a singleprocessor machine, the kernel
494 will run faster if you say N here.
496 People using multiprocessor machines who say Y here should also say
497 Y to "Enhanced Real Time Clock Support", below.
499 See also the <file:Documentation/smp.txt>,
500 <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available
501 at <http://www.tldp.org/docs.html#howto>.
503 If you don't know what to do here, say N.
506 int "Maximum number of CPUs (2-32)"
511 This allows you to specify the maximum number of CPUs which this
512 kernel will support. The maximum supported value is 32 and the
513 minimum value which makes sense is 2.
515 This is purely to save memory - each supported CPU adds
516 approximately eight kilobytes to the kernel image.
520 depends on CPU_SH3 || CPU_SH4
523 This will enable the use of SR.RB register bank usage. Processors
524 that are lacking this bit must have another method in place for
525 accomplishing what is taken care of by the banked registers.
527 See <file:Documentation/sh/register-banks.txt> for further
528 information on SR.RB and register banking in the kernel in general.
533 depends on NEED_MULTIPLE_NODES
539 config ZERO_PAGE_OFFSET
540 hex "Zero page offset"
541 default "0x00004000" if SH_MPC1211 || SH_SH03
544 This sets the default offset of zero page.
546 config BOOT_LINK_OFFSET
547 hex "Link address offset for booting"
550 This option allows you to set the link address offset of the zImage.
551 This can be useful if you are on a board which has a small amount of
555 bool "Wakeup UBC on startup"
557 Selecting this option will wakeup the User Break Controller (UBC) on
558 startup. Although the UBC is left in an awake state when the processor
559 comes up, some boot loaders misbehave by putting the UBC to sleep in a
560 power saving state, which causes issues with things like ptrace().
565 bool "Default bootloader kernel arguments"
568 string "Initial kernel command string"
569 depends on CMDLINE_BOOL
570 default "console=ttySC1,115200"
576 # Even on SuperH devices which don't have an ISA bus,
577 # this variable helps the PCMCIA modules handle
578 # IRQ requesting properly -- Greg Banks.
580 # Though we're generally not interested in it when
581 # we're not using PCMCIA, so we make it dependent on
582 # PCMCIA outright. -- PFM.
587 Find out whether you have ISA slots on your motherboard. ISA is the
588 name of a bus system, i.e. the way the CPU talks to the other stuff
589 inside your box. Other bus systems are PCI, EISA, MicroChannel
590 (MCA) or VESA. ISA is an older system, now being displaced by PCI;
591 newer boards don't support it. If you have ISA, say Y, otherwise N.
596 The Extended Industry Standard Architecture (EISA) bus was
597 developed as an open alternative to the IBM MicroChannel bus.
599 The EISA bus provided some of the features of the IBM MicroChannel
600 bus while maintaining backward compatibility with cards made for
601 the older ISA bus. The EISA bus saw limited use between 1988 and
602 1995 when it was made obsolete by the PCI bus.
604 Say Y here if you are building a kernel for an EISA-based machine.
611 MicroChannel Architecture is found in some IBM PS/2 machines and
612 laptops. It is a bus system similar to PCI or ISA. See
613 <file:Documentation/mca.txt> (and especially the web page given
614 there) before attempting to build an MCA bus kernel.
620 tristate "SuperHyway Bus support"
621 depends on CPU_SUBTYPE_SH4_202
623 source "arch/sh/drivers/pci/Kconfig"
625 source "drivers/pci/Kconfig"
627 source "drivers/pcmcia/Kconfig"
629 source "drivers/pci/hotplug/Kconfig"
633 menu "Executable file formats"
635 source "fs/Kconfig.binfmt"
641 source "drivers/Kconfig"
645 source "arch/sh/oprofile/Kconfig"
647 source "arch/sh/Kconfig.debug"
649 source "security/Kconfig"
651 source "crypto/Kconfig"