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"
399 config SH_PCLK_FREQ_BOOL
400 bool "Set default pclk frequency"
405 int "Peripheral clock frequency (in Hz)"
406 depends on SH_PCLK_FREQ_BOOL
407 default "50000000" if CPU_SUBTYPE_SH7750 || CPU_SUBTYPE_SH7780
408 default "60000000" if CPU_SUBTYPE_SH7751
409 default "33333333" if CPU_SUBTYPE_SH7300 || CPU_SUBTYPE_SH7770 || CPU_SUBTYPE_SH7760
410 default "27000000" if CPU_SUBTYPE_SH73180
411 default "66000000" if CPU_SUBTYPE_SH4_202
413 This option is used to specify the peripheral clock frequency.
414 This is necessary for determining the reference clock value on
415 platforms lacking an RTC.
417 menu "CPU Frequency scaling"
419 source "drivers/cpufreq/Kconfig"
422 tristate "SuperH CPU Frequency driver"
424 select CPU_FREQ_TABLE
426 This adds the cpufreq driver for SuperH. At present, only
427 the SH-4 is supported.
429 For details, take a look at <file:Documentation/cpu-freq>.
435 source "arch/sh/drivers/dma/Kconfig"
437 source "arch/sh/cchips/Kconfig"
441 depends on SH_MPC1211 || SH_SH03 || SH_CAT68701 || \
442 SH_STB1_HARP || SH_STB1_OVERDRIVE || SH_BIGSUR || \
443 SH_7751_SOLUTION_ENGINE || SH_7300_SOLUTION_ENGINE || \
444 SH_73180_SOLUTION_ENGINE || SH_SOLUTION_ENGINE || \
445 SH_RTS7751R2D || SH_SH4202_MICRODEV || SH_LANDISK
447 Use the power-on LED on your machine as a load meter. The exact
448 behavior is platform-dependent, but normally the flash frequency is
449 a hyperbolic function of the 5-minute load average.
458 menu "Kernel features"
461 bool "kexec system call (EXPERIMENTAL)"
462 depends on EXPERIMENTAL
464 kexec is a system call that implements the ability to shutdown your
465 current kernel, and to start another kernel. It is like a reboot
466 but it is indepedent of the system firmware. And like a reboot
467 you can start any kernel with it, not just Linux.
469 The name comes from the similiarity to the exec system call.
471 It is an ongoing process to be certain the hardware in a machine
472 is properly shutdown, so do not be surprised if this code does not
473 initially work for you. It may help to enable device hotplugging
474 support. As of this writing the exact hardware interface is
475 strongly in flux, so no good recommendation can be made.
478 bool "Preemptible Kernel (EXPERIMENTAL)"
479 depends on EXPERIMENTAL
482 bool "Symmetric multi-processing support"
484 This enables support for systems with more than one CPU. If you have
485 a system with only one CPU, like most personal computers, say N. If
486 you have a system with more than one CPU, say Y.
488 If you say N here, the kernel will run on single and multiprocessor
489 machines, but will use only one CPU of a multiprocessor machine. If
490 you say Y here, the kernel will run on many, but not all,
491 singleprocessor machines. On a singleprocessor machine, the kernel
492 will run faster if you say N here.
494 People using multiprocessor machines who say Y here should also say
495 Y to "Enhanced Real Time Clock Support", below.
497 See also the <file:Documentation/smp.txt>,
498 <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available
499 at <http://www.tldp.org/docs.html#howto>.
501 If you don't know what to do here, say N.
504 int "Maximum number of CPUs (2-32)"
509 This allows you to specify the maximum number of CPUs which this
510 kernel will support. The maximum supported value is 32 and the
511 minimum value which makes sense is 2.
513 This is purely to save memory - each supported CPU adds
514 approximately eight kilobytes to the kernel image.
518 depends on CPU_SH3 || CPU_SH4
521 This will enable the use of SR.RB register bank usage. Processors
522 that are lacking this bit must have another method in place for
523 accomplishing what is taken care of by the banked registers.
525 See <file:Documentation/sh/register-banks.txt> for further
526 information on SR.RB and register banking in the kernel in general.
532 config ZERO_PAGE_OFFSET
533 hex "Zero page offset"
534 default "0x00004000" if SH_MPC1211 || SH_SH03
537 This sets the default offset of zero page.
539 config BOOT_LINK_OFFSET
540 hex "Link address offset for booting"
543 This option allows you to set the link address offset of the zImage.
544 This can be useful if you are on a board which has a small amount of
548 bool "Wakeup UBC on startup"
550 Selecting this option will wakeup the User Break Controller (UBC) on
551 startup. Although the UBC is left in an awake state when the processor
552 comes up, some boot loaders misbehave by putting the UBC to sleep in a
553 power saving state, which causes issues with things like ptrace().
558 bool "Default bootloader kernel arguments"
561 string "Initial kernel command string"
562 depends on CMDLINE_BOOL
563 default "console=ttySC1,115200"
569 # Even on SuperH devices which don't have an ISA bus,
570 # this variable helps the PCMCIA modules handle
571 # IRQ requesting properly -- Greg Banks.
573 # Though we're generally not interested in it when
574 # we're not using PCMCIA, so we make it dependent on
575 # PCMCIA outright. -- PFM.
580 Find out whether you have ISA slots on your motherboard. ISA is the
581 name of a bus system, i.e. the way the CPU talks to the other stuff
582 inside your box. Other bus systems are PCI, EISA, MicroChannel
583 (MCA) or VESA. ISA is an older system, now being displaced by PCI;
584 newer boards don't support it. If you have ISA, say Y, otherwise N.
589 The Extended Industry Standard Architecture (EISA) bus was
590 developed as an open alternative to the IBM MicroChannel bus.
592 The EISA bus provided some of the features of the IBM MicroChannel
593 bus while maintaining backward compatibility with cards made for
594 the older ISA bus. The EISA bus saw limited use between 1988 and
595 1995 when it was made obsolete by the PCI bus.
597 Say Y here if you are building a kernel for an EISA-based machine.
604 MicroChannel Architecture is found in some IBM PS/2 machines and
605 laptops. It is a bus system similar to PCI or ISA. See
606 <file:Documentation/mca.txt> (and especially the web page given
607 there) before attempting to build an MCA bus kernel.
613 tristate "SuperHyway Bus support"
614 depends on CPU_SUBTYPE_SH4_202
616 source "arch/sh/drivers/pci/Kconfig"
618 source "drivers/pci/Kconfig"
620 source "drivers/pcmcia/Kconfig"
622 source "drivers/pci/hotplug/Kconfig"
626 menu "Executable file formats"
628 source "fs/Kconfig.binfmt"
634 source "drivers/Kconfig"
638 source "arch/sh/oprofile/Kconfig"
640 source "arch/sh/Kconfig.debug"
642 source "security/Kconfig"
644 source "crypto/Kconfig"