MOXA linux-2.6.x / linux-2.6.19-uc1 from UC-7110-LX-BOOTLOADER-1.9_VERSION-4.2.tgz
[linux-2.6.19-moxart.git] / arch / sh / Kconfig
blob9bbf695eeb453833bf5a606242d4267ee6af459e
2 # For a description of the syntax of this configuration file,
3 # see Documentation/kbuild/kconfig-language.txt.
6 mainmenu "Linux/SuperH Kernel Configuration"
8 config SUPERH
9         bool
10         default y
11         select EMBEDDED
12         help
13           The SuperH is a RISC processor targeted for use in embedded systems
14           and consumer electronics; it was also used in the Sega Dreamcast
15           gaming console.  The SuperH port has a home page at
16           <http://www.linux-sh.org/>.
18 config RWSEM_GENERIC_SPINLOCK
19         bool
20         default y
22 config RWSEM_XCHGADD_ALGORITHM
23         bool
25 config GENERIC_FIND_NEXT_BIT
26         bool
27         default y
29 config GENERIC_HWEIGHT
30         bool
31         default y
33 config GENERIC_HARDIRQS
34         bool
35         default y
37 config GENERIC_IRQ_PROBE
38         bool
39         default y
41 config GENERIC_CALIBRATE_DELAY
42         bool
43         default y
45 config GENERIC_IOMAP
46         bool
48 config GENERIC_TIME
49         def_bool n
51 config ARCH_MAY_HAVE_PC_FDC
52         bool
54 source "init/Kconfig"
56 menu "System type"
58 config SOLUTION_ENGINE
59         bool
61 choice
62         prompt "SuperH system type"
63         default SH_UNKNOWN
65 config SH_SOLUTION_ENGINE
66         bool "SolutionEngine"
67         select SOLUTION_ENGINE
68         help
69           Select SolutionEngine if configuring for a Hitachi SH7709
70           or SH7750 evaluation board.
72 config SH_7751_SOLUTION_ENGINE
73         bool "SolutionEngine7751"
74         select SOLUTION_ENGINE
75         select CPU_SUBTYPE_SH7751
76         help
77           Select 7751 SolutionEngine if configuring for a Hitachi SH7751
78           evaluation board.
80 config SH_7300_SOLUTION_ENGINE
81         bool "SolutionEngine7300"
82         select SOLUTION_ENGINE
83         select CPU_SUBTYPE_SH7300
84         help
85           Select 7300 SolutionEngine if configuring for a Hitachi
86           SH7300(SH-Mobile V) evaluation board.
88 config SH_7343_SOLUTION_ENGINE
89         bool "SolutionEngine7343"
90         select SOLUTION_ENGINE
91         select CPU_SUBTYPE_SH7343
92         help
93           Select 7343 SolutionEngine if configuring for a Hitachi
94           SH7343 (SH-Mobile 3AS) evaluation board.
96 config SH_73180_SOLUTION_ENGINE
97        bool "SolutionEngine73180"
98         select SOLUTION_ENGINE
99         select CPU_SUBTYPE_SH73180
100         help
101           Select 73180 SolutionEngine if configuring for a Hitachi
102           SH73180(SH-Mobile 3) evaluation board.
104 config SH_7751_SYSTEMH
105         bool "SystemH7751R"
106         select CPU_SUBTYPE_SH7751R
107         help
108           Select SystemH if you are configuring for a Renesas SystemH
109           7751R evaluation board.
111 config SH_HP6XX
112         bool "HP6XX"
113         help
114           Select HP6XX if configuring for a HP jornada HP6xx.
115           More information (hardware only) at
116           <http://www.hp.com/jornada/>.
118 config SH_EC3104
119         bool "EC3104"
120         help
121           Select EC3104 if configuring for a system with an Eclipse
122           International EC3104 chip, e.g. the Harris AD2000.
124 config SH_SATURN
125         bool "Saturn"
126         select CPU_SUBTYPE_SH7604
127         help
128           Select Saturn if configuring for a SEGA Saturn.
130 config SH_DREAMCAST
131         bool "Dreamcast"
132         select CPU_SUBTYPE_SH7091
133         help
134           Select Dreamcast if configuring for a SEGA Dreamcast.
135           More information at
136           <http://www.m17n.org/linux-sh/dreamcast/>.  There is a
137           Dreamcast project is at <http://linuxdc.sourceforge.net/>.
139 config SH_BIGSUR
140         bool "BigSur"
142 config SH_MPC1211
143         bool "Interface MPC1211"
144         help
145           CTP/PCI-SH02 is a CPU module computer that is produced
146           by Interface Corporation.
147           More information at <http://www.interface.co.jp>
149 config SH_SH03
150         bool "Interface CTP/PCI-SH03"
151         help
152           CTP/PCI-SH03 is a CPU module computer that is produced
153           by Interface Corporation.
154           More information at <http://www.interface.co.jp>
156 config SH_SECUREEDGE5410
157         bool "SecureEdge5410"
158         select CPU_SUBTYPE_SH7751R
159         help
160           Select SecureEdge5410 if configuring for a SnapGear SH board.
161           This includes both the OEM SecureEdge products as well as the
162           SME product line.
164 config SH_HS7751RVOIP
165         bool "HS7751RVOIP"
166         select CPU_SUBTYPE_SH7751R
167         help
168           Select HS7751RVOIP if configuring for a Renesas Technology
169           Sales VoIP board.
171 config SH_7710VOIPGW
172         bool "SH7710-VOIP-GW"
173         select CPU_SUBTYPE_SH7710
174         help
175           Select this option to build a kernel for the SH7710 based
176           VOIP GW.
178 config SH_RTS7751R2D
179         bool "RTS7751R2D"
180         select CPU_SUBTYPE_SH7751R
181         help
182           Select RTS7751R2D if configuring for a Renesas Technology
183           Sales SH-Graphics board.
185 config SH_R7780RP
186         bool "R7780RP-1"
187         select CPU_SUBTYPE_SH7780
188         help
189           Select R7780RP-1 if configuring for a Renesas Solutions
190           HIGHLANDER board.
192 config SH_EDOSK7705
193         bool "EDOSK7705"
194         select CPU_SUBTYPE_SH7705
196 config SH_SH4202_MICRODEV
197         bool "SH4-202 MicroDev"
198         select CPU_SUBTYPE_SH4_202
199         help
200           Select SH4-202 MicroDev if configuring for a SuperH MicroDev board
201           with an SH4-202 CPU.
203 config SH_LANDISK
204         bool "LANDISK"
205         select CPU_SUBTYPE_SH7751R
206         help
207           I-O DATA DEVICE, INC. "LANDISK Series" support.
209 config SH_TITAN
210         bool "TITAN"
211         select CPU_SUBTYPE_SH7751R
212         help
213           Select Titan if you are configuring for a Nimble Microsystems
214           NetEngine NP51R.
216 config SH_SHMIN
217         bool "SHMIN"
218         select CPU_SUBTYPE_SH7706
219         help
220           Select SHMIN if configureing for the SHMIN board
222 config SH_UNKNOWN
223         bool "BareCPU"
224         help
225           "Bare CPU" aka "unknown" means an SH-based system which is not one
226           of the specific ones mentioned above, which means you need to enter
227           all sorts of stuff like CONFIG_MEMORY_START because the config
228           system doesn't already know what it is.  You get a machine vector
229           without any platform-specific code in it, so things like the RTC may
230           not work.
232           This option is for the early stages of porting to a new machine.
234 endchoice
236 source "arch/sh/mm/Kconfig"
238 config SH_CONCAT_FS
239         bool "Fixup fileystem concated to kernel image"
240         default n
241         help
242           Some SH platforms boot a kernel with the root filesystem at the end
243           of the kernel binary (Where the BSS appears) and enabling this option
244           moved the filesystem to the end of the kernel and reserves the memory
245           it occupies.
247 config MEMORY_START
248         hex "Physical memory start address"
249         default "0x08000000"
250         ---help---
251           Computers built with Hitachi SuperH processors always
252           map the ROM starting at address zero.  But the processor
253           does not specify the range that RAM takes.
255           The physical memory (RAM) start address will be automatically
256           set to 08000000. Other platforms, such as the Solution Engine
257           boards typically map RAM at 0C000000.
259           Tweak this only when porting to a new machine which does not
260           already have a defconfig. Changing it from the known correct
261           value on any of the known systems will only lead to disaster.
263 config MEMORY_SIZE
264         hex "Physical memory size"
265         default "0x00400000"
266         help
267           This sets the default memory size assumed by your SH kernel. It can
268           be overridden as normal by the 'mem=' argument on the kernel command
269           line. If unsure, consult your board specifications or just leave it
270           as 0x00400000 which was the default value before this became
271           configurable.
273 config CF_ENABLER
274         bool "Compact Flash Enabler support"
275         depends on SH_SOLUTION_ENGINE || SH_UNKNOWN || SH_SH03
276         ---help---
277           Compact Flash is a small, removable mass storage device introduced
278           in 1994 originally as a PCMCIA device.  If you say `Y' here, you
279           compile in support for Compact Flash devices directly connected to
280           a SuperH processor.  A Compact Flash FAQ is available at
281           <http://www.compactflash.org/faqs/faq.htm>.
283           If your board has "Directly Connected" CompactFlash at area 5 or 6,
284           you may want to enable this option.  Then, you can use CF as
285           primary IDE drive (only tested for SanDisk).
287           If in doubt, select 'N'.
289 choice
290         prompt "Compact Flash Connection Area"
291         depends on CF_ENABLER
292         default CF_AREA6
294 config CF_AREA5
295         bool "Area5"
296         help
297           If your board has "Directly Connected" CompactFlash, You should
298           select the area where your CF is connected to.
300           - "Area5" if CompactFlash is connected to Area 5 (0x14000000)
301           - "Area6" if it is connected to Area 6 (0x18000000)
303           "Area6" will work for most boards.
305 config CF_AREA6
306         bool "Area6"
308 endchoice
310 config CF_BASE_ADDR
311         hex
312         depends on CF_ENABLER
313         default "0xb8000000" if CF_AREA6
314         default "0xb4000000" if CF_AREA5
316 menu "Processor features"
318 config CPU_LITTLE_ENDIAN
319         bool "Little Endian"
320         help
321           Some SuperH machines can be configured for either little or big
322           endian byte order. These modes require different kernels. Say Y if
323           your machine is little endian, N if it's a big endian machine.
325 config SH_FPU
326         bool "FPU support"
327         depends on !CPU_SH3
328         default y
329         help
330           Selecting this option will enable support for SH processors that
331           have FPU units (ie, SH77xx).
333           This option must be set in order to enable the FPU.
335 config SH_FPU_EMU
336         bool "FPU emulation support"
337         depends on !SH_FPU && EXPERIMENTAL
338         default n
339         help
340           Selecting this option will enable support for software FPU emulation.
341           Most SH-3 users will want to say Y here, whereas most SH-4 users will
342           want to say N.
344 config SH_DSP
345         bool "DSP support"
346         default y if SH4AL_DSP || !CPU_SH4
347         default n
348         help
349           Selecting this option will enable support for SH processors that
350           have DSP units (ie, SH2-DSP, SH3-DSP, and SH4AL-DSP).
352           This option must be set in order to enable the DSP.
354 config SH_ADC
355         bool "ADC support"
356         depends on CPU_SH3
357         default y
358         help
359           Selecting this option will allow the Linux kernel to use SH3 on-chip
360           ADC module.
362           If unsure, say N.
364 config SH_STORE_QUEUES
365         bool "Support for Store Queues"
366         depends on CPU_SH4
367         help
368           Selecting this option will enable an in-kernel API for manipulating
369           the store queues integrated in the SH-4 processors.
371 config CPU_HAS_INTEVT
372         bool
374 config CPU_HAS_PINT_IRQ
375         bool
377 config CPU_HAS_MASKREG_IRQ
378         bool
380 config CPU_HAS_INTC2_IRQ
381         bool
383 config CPU_HAS_SR_RB
384         bool "CPU has SR.RB"
385         depends on CPU_SH3 || CPU_SH4
386         default y
387         help
388           This will enable the use of SR.RB register bank usage. Processors
389           that are lacking this bit must have another method in place for
390           accomplishing what is taken care of by the banked registers.
392           See <file:Documentation/sh/register-banks.txt> for further
393           information on SR.RB and register banking in the kernel in general.
395 endmenu
397 menu "Timer support"
398 depends on !GENERIC_TIME
400 config SH_TMU
401         bool "TMU timer support"
402         default y
403         help
404           This enables the use of the TMU as the system timer.
406 endmenu
408 source "arch/sh/boards/renesas/hs7751rvoip/Kconfig"
410 source "arch/sh/boards/renesas/rts7751r2d/Kconfig"
412 source "arch/sh/boards/renesas/r7780rp/Kconfig"
414 config SH_PCLK_FREQ
415         int "Peripheral clock frequency (in Hz)"
416         default "50000000" if CPU_SUBTYPE_SH7750 || CPU_SUBTYPE_SH7780
417         default "60000000" if CPU_SUBTYPE_SH7751
418         default "33333333" if CPU_SUBTYPE_SH7300 || CPU_SUBTYPE_SH7770 || \
419                               CPU_SUBTYPE_SH7760 || CPU_SUBTYPE_SH7705
420         default "27000000" if CPU_SUBTYPE_SH73180 || CPU_SUBTYPE_SH7343
421         default "66000000" if CPU_SUBTYPE_SH4_202
422         help
423           This option is used to specify the peripheral clock frequency.
424           This is necessary for determining the reference clock value on
425           platforms lacking an RTC.
427 menu "CPU Frequency scaling"
429 source "drivers/cpufreq/Kconfig"
431 config SH_CPU_FREQ
432         tristate "SuperH CPU Frequency driver"
433         depends on CPU_FREQ
434         select CPU_FREQ_TABLE
435         help
436           This adds the cpufreq driver for SuperH. At present, only
437           the SH-4 is supported.
439           For details, take a look at <file:Documentation/cpu-freq>.
441           If unsure, say N.
443 endmenu
445 source "arch/sh/drivers/dma/Kconfig"
447 source "arch/sh/cchips/Kconfig"
449 config HEARTBEAT
450         bool "Heartbeat LED"
451         depends on SH_MPC1211 || SH_SH03 || \
452                    SH_BIGSUR || SOLUTION_ENGINE || \
453                    SH_RTS7751R2D || SH_SH4202_MICRODEV || SH_LANDISK
454         help
455           Use the power-on LED on your machine as a load meter.  The exact
456           behavior is platform-dependent, but normally the flash frequency is
457           a hyperbolic function of the 5-minute load average.
459 endmenu
461 config ISA_DMA_API
462         bool
463         depends on SH_MPC1211
464         default y
466 menu "Kernel features"
468 source kernel/Kconfig.hz
470 config KEXEC
471         bool "kexec system call (EXPERIMENTAL)"
472         depends on EXPERIMENTAL
473         help
474           kexec is a system call that implements the ability to shutdown your
475           current kernel, and to start another kernel.  It is like a reboot
476           but it is independent of the system firmware.  And like a reboot
477           you can start any kernel with it, not just Linux.
479           The name comes from the similarity to the exec system call.
481           It is an ongoing process to be certain the hardware in a machine
482           is properly shutdown, so do not be surprised if this code does not
483           initially work for you.  It may help to enable device hotplugging
484           support.  As of this writing the exact hardware interface is
485           strongly in flux, so no good recommendation can be made.
487 config SMP
488         bool "Symmetric multi-processing support"
489         ---help---
490           This enables support for systems with more than one CPU. If you have
491           a system with only one CPU, like most personal computers, say N. If
492           you have a system with more than one CPU, say Y.
494           If you say N here, the kernel will run on single and multiprocessor
495           machines, but will use only one CPU of a multiprocessor machine. If
496           you say Y here, the kernel will run on many, but not all,
497           singleprocessor machines. On a singleprocessor machine, the kernel
498           will run faster if you say N here.
500           People using multiprocessor machines who say Y here should also say
501           Y to "Enhanced Real Time Clock Support", below.
503           See also the <file:Documentation/smp.txt>,
504           <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available
505           at <http://www.tldp.org/docs.html#howto>.
507           If you don't know what to do here, say N.
509 config NR_CPUS
510         int "Maximum number of CPUs (2-32)"
511         range 2 32
512         depends on SMP
513         default "2"
514         help
515           This allows you to specify the maximum number of CPUs which this
516           kernel will support.  The maximum supported value is 32 and the
517           minimum value which makes sense is 2.
519           This is purely to save memory - each supported CPU adds
520           approximately eight kilobytes to the kernel image.
522 source "kernel/Kconfig.preempt"
524 config CPU_HAS_SR_RB
525         bool "CPU has SR.RB"
526         depends on CPU_SH3 || CPU_SH4
527         default y
528         help
529           This will enable the use of SR.RB register bank usage. Processors
530           that are lacking this bit must have another method in place for
531           accomplishing what is taken care of by the banked registers.
533           See <file:Documentation/sh/register-banks.txt> for further
534           information on SR.RB and register banking in the kernel in general.
536 config NODES_SHIFT
537         int
538         default "1"
539         depends on NEED_MULTIPLE_NODES
541 endmenu
543 menu "Boot options"
545 config ZERO_PAGE_OFFSET
546         hex "Zero page offset"
547         default "0x00004000" if SH_MPC1211 || SH_SH03
548         default "0x00001000"
549         help
550           This sets the default offset of zero page.
552 config BOOT_LINK_OFFSET
553         hex "Link address offset for booting"
554         default "0x00800000"
555         help
556           This option allows you to set the link address offset of the zImage.
557           This can be useful if you are on a board which has a small amount of
558           memory.
560 config UBC_WAKEUP
561         bool "Wakeup UBC on startup"
562         help
563           Selecting this option will wakeup the User Break Controller (UBC) on
564           startup. Although the UBC is left in an awake state when the processor
565           comes up, some boot loaders misbehave by putting the UBC to sleep in a
566           power saving state, which causes issues with things like ptrace().
568           If unsure, say N.
570 config CMDLINE_BOOL
571         bool "Default bootloader kernel arguments"
573 config CMDLINE
574         string "Initial kernel command string"
575         depends on CMDLINE_BOOL
576         default "console=ttySC1,115200"
578 endmenu
580 menu "Bus options"
582 # Even on SuperH devices which don't have an ISA bus,
583 # this variable helps the PCMCIA modules handle
584 # IRQ requesting properly -- Greg Banks.
586 # Though we're generally not interested in it when
587 # we're not using PCMCIA, so we make it dependent on
588 # PCMCIA outright. -- PFM.
589 config ISA
590         bool
591         default y if PCMCIA
592         help
593           Find out whether you have ISA slots on your motherboard.  ISA is the
594           name of a bus system, i.e. the way the CPU talks to the other stuff
595           inside your box.  Other bus systems are PCI, EISA, MicroChannel
596           (MCA) or VESA.  ISA is an older system, now being displaced by PCI;
597           newer boards don't support it.  If you have ISA, say Y, otherwise N.
599 config EISA
600         bool
601         ---help---
602           The Extended Industry Standard Architecture (EISA) bus was
603           developed as an open alternative to the IBM MicroChannel bus.
605           The EISA bus provided some of the features of the IBM MicroChannel
606           bus while maintaining backward compatibility with cards made for
607           the older ISA bus.  The EISA bus saw limited use between 1988 and
608           1995 when it was made obsolete by the PCI bus.
610           Say Y here if you are building a kernel for an EISA-based machine.
612           Otherwise, say N.
614 config MCA
615         bool
616         help
617           MicroChannel Architecture is found in some IBM PS/2 machines and
618           laptops.  It is a bus system similar to PCI or ISA. See
619           <file:Documentation/mca.txt> (and especially the web page given
620           there) before attempting to build an MCA bus kernel.
622 config SBUS
623         bool
625 config SUPERHYWAY
626         tristate "SuperHyway Bus support"
627         depends on CPU_SUBTYPE_SH4_202
629 source "arch/sh/drivers/pci/Kconfig"
631 source "drivers/pci/Kconfig"
633 source "drivers/pcmcia/Kconfig"
635 source "drivers/pci/hotplug/Kconfig"
637 endmenu
639 menu "Executable file formats"
641 source "fs/Kconfig.binfmt"
643 endmenu
645 menu "Power management options (EXPERIMENTAL)"
646 depends on EXPERIMENTAL
648 source kernel/power/Kconfig
650 config APM
651         bool "Advanced Power Management Emulation"
652         depends on PM
653 endmenu
655 source "net/Kconfig"
657 source "drivers/Kconfig"
659 source "fs/Kconfig"
661 source "arch/sh/oprofile/Kconfig"
663 source "arch/sh/Kconfig.debug"
665 source "security/Kconfig"
667 source "crypto/Kconfig"
669 source "lib/Kconfig"