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"
407 source "arch/sh/boards/renesas/r7780rp/Kconfig"
410 int "Peripheral clock frequency (in Hz)"
411 default "50000000" if CPU_SUBTYPE_SH7750 || CPU_SUBTYPE_SH7780
412 default "60000000" if CPU_SUBTYPE_SH7751
413 default "33333333" if CPU_SUBTYPE_SH7300 || CPU_SUBTYPE_SH7770 || CPU_SUBTYPE_SH7760
414 default "27000000" if CPU_SUBTYPE_SH73180
415 default "66000000" if CPU_SUBTYPE_SH4_202
417 This option is used to specify the peripheral clock frequency.
418 This is necessary for determining the reference clock value on
419 platforms lacking an RTC.
421 menu "CPU Frequency scaling"
423 source "drivers/cpufreq/Kconfig"
426 tristate "SuperH CPU Frequency driver"
428 select CPU_FREQ_TABLE
430 This adds the cpufreq driver for SuperH. At present, only
431 the SH-4 is supported.
433 For details, take a look at <file:Documentation/cpu-freq>.
439 source "arch/sh/drivers/dma/Kconfig"
441 source "arch/sh/cchips/Kconfig"
445 depends on SH_MPC1211 || SH_SH03 || SH_CAT68701 || \
446 SH_STB1_HARP || SH_STB1_OVERDRIVE || SH_BIGSUR || \
447 SH_7751_SOLUTION_ENGINE || SH_7300_SOLUTION_ENGINE || \
448 SH_73180_SOLUTION_ENGINE || SH_SOLUTION_ENGINE || \
449 SH_RTS7751R2D || SH_SH4202_MICRODEV || SH_LANDISK
451 Use the power-on LED on your machine as a load meter. The exact
452 behavior is platform-dependent, but normally the flash frequency is
453 a hyperbolic function of the 5-minute load average.
459 depends on SH_MPC1211
462 menu "Kernel features"
465 bool "kexec system call (EXPERIMENTAL)"
466 depends on EXPERIMENTAL
468 kexec is a system call that implements the ability to shutdown your
469 current kernel, and to start another kernel. It is like a reboot
470 but it is independent of the system firmware. And like a reboot
471 you can start any kernel with it, not just Linux.
473 The name comes from the similarity to the exec system call.
475 It is an ongoing process to be certain the hardware in a machine
476 is properly shutdown, so do not be surprised if this code does not
477 initially work for you. It may help to enable device hotplugging
478 support. As of this writing the exact hardware interface is
479 strongly in flux, so no good recommendation can be made.
482 bool "Preemptible Kernel (EXPERIMENTAL)"
483 depends on EXPERIMENTAL
486 bool "Symmetric multi-processing support"
488 This enables support for systems with more than one CPU. If you have
489 a system with only one CPU, like most personal computers, say N. If
490 you have a system with more than one CPU, say Y.
492 If you say N here, the kernel will run on single and multiprocessor
493 machines, but will use only one CPU of a multiprocessor machine. If
494 you say Y here, the kernel will run on many, but not all,
495 singleprocessor machines. On a singleprocessor machine, the kernel
496 will run faster if you say N here.
498 People using multiprocessor machines who say Y here should also say
499 Y to "Enhanced Real Time Clock Support", below.
501 See also the <file:Documentation/smp.txt>,
502 <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available
503 at <http://www.tldp.org/docs.html#howto>.
505 If you don't know what to do here, say N.
508 int "Maximum number of CPUs (2-32)"
513 This allows you to specify the maximum number of CPUs which this
514 kernel will support. The maximum supported value is 32 and the
515 minimum value which makes sense is 2.
517 This is purely to save memory - each supported CPU adds
518 approximately eight kilobytes to the kernel image.
522 depends on CPU_SH3 || CPU_SH4
525 This will enable the use of SR.RB register bank usage. Processors
526 that are lacking this bit must have another method in place for
527 accomplishing what is taken care of by the banked registers.
529 See <file:Documentation/sh/register-banks.txt> for further
530 information on SR.RB and register banking in the kernel in general.
535 depends on NEED_MULTIPLE_NODES
541 config ZERO_PAGE_OFFSET
542 hex "Zero page offset"
543 default "0x00004000" if SH_MPC1211 || SH_SH03
546 This sets the default offset of zero page.
548 config BOOT_LINK_OFFSET
549 hex "Link address offset for booting"
552 This option allows you to set the link address offset of the zImage.
553 This can be useful if you are on a board which has a small amount of
557 bool "Wakeup UBC on startup"
559 Selecting this option will wakeup the User Break Controller (UBC) on
560 startup. Although the UBC is left in an awake state when the processor
561 comes up, some boot loaders misbehave by putting the UBC to sleep in a
562 power saving state, which causes issues with things like ptrace().
567 bool "Default bootloader kernel arguments"
570 string "Initial kernel command string"
571 depends on CMDLINE_BOOL
572 default "console=ttySC1,115200"
578 # Even on SuperH devices which don't have an ISA bus,
579 # this variable helps the PCMCIA modules handle
580 # IRQ requesting properly -- Greg Banks.
582 # Though we're generally not interested in it when
583 # we're not using PCMCIA, so we make it dependent on
584 # PCMCIA outright. -- PFM.
589 Find out whether you have ISA slots on your motherboard. ISA is the
590 name of a bus system, i.e. the way the CPU talks to the other stuff
591 inside your box. Other bus systems are PCI, EISA, MicroChannel
592 (MCA) or VESA. ISA is an older system, now being displaced by PCI;
593 newer boards don't support it. If you have ISA, say Y, otherwise N.
598 The Extended Industry Standard Architecture (EISA) bus was
599 developed as an open alternative to the IBM MicroChannel bus.
601 The EISA bus provided some of the features of the IBM MicroChannel
602 bus while maintaining backward compatibility with cards made for
603 the older ISA bus. The EISA bus saw limited use between 1988 and
604 1995 when it was made obsolete by the PCI bus.
606 Say Y here if you are building a kernel for an EISA-based machine.
613 MicroChannel Architecture is found in some IBM PS/2 machines and
614 laptops. It is a bus system similar to PCI or ISA. See
615 <file:Documentation/mca.txt> (and especially the web page given
616 there) before attempting to build an MCA bus kernel.
622 tristate "SuperHyway Bus support"
623 depends on CPU_SUBTYPE_SH4_202
625 source "arch/sh/drivers/pci/Kconfig"
627 source "drivers/pci/Kconfig"
629 source "drivers/pcmcia/Kconfig"
631 source "drivers/pci/hotplug/Kconfig"
635 menu "Executable file formats"
637 source "fs/Kconfig.binfmt"
641 menu "Power management options (EXPERIMENTAL)"
642 depends on EXPERIMENTAL
644 source kernel/power/Kconfig
647 bool "Advanced Power Management Emulation"
653 source "drivers/Kconfig"
657 source "arch/sh/oprofile/Kconfig"
659 source "arch/sh/Kconfig.debug"
661 source "security/Kconfig"
663 source "crypto/Kconfig"