[IA64-SGI] sn_dma_alloc_coherent should use gfp flags
[linux-2.6/linux-acpi-2.6/ibm-acpi-2.6.git] / arch / sh / Kconfig
blob01bc7d589afe5afd4d43c0734548c89488f6aa85
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         help
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
18         bool
19         default y
21 config RWSEM_XCHGADD_ALGORITHM
22         bool
24 config GENERIC_HARDIRQS
25         bool
26         default y
28 config GENERIC_IRQ_PROBE
29         bool
30         default y
32 config GENERIC_CALIBRATE_DELAY
33         bool
34         default y
36 config GENERIC_IOMAP
37         bool
39 config ARCH_MAY_HAVE_PC_FDC
40         bool
42 source "init/Kconfig"
44 menu "System type"
46 choice
47         prompt "SuperH system type"
48         default SH_UNKNOWN
50 config SH_SOLUTION_ENGINE
51         bool "SolutionEngine"
52         help
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
59         help
60           Select 7751 SolutionEngine if configuring for a Hitachi SH7751
61           evaluation board.
63 config SH_7300_SOLUTION_ENGINE
64         bool "SolutionEngine7300"
65         select CPU_SUBTYPE_SH7300
66         help
67           Select 7300 SolutionEngine if configuring for a Hitachi SH7300(SH-Mobile V)
68           evaluation board.
70 config SH_73180_SOLUTION_ENGINE
71        bool "SolutionEngine73180"
72        select CPU_SUBTYPE_SH73180
73        help
74          Select 73180 SolutionEngine if configuring for a Hitachi SH73180(SH-Mobile 3)
75          evaluation board.
77 config SH_7751_SYSTEMH
78         bool "SystemH7751R"
79         select CPU_SUBTYPE_SH7751R
80         help
81           Select SystemH if you are configuring for a Renesas SystemH
82           7751R evaluation board.
84 config SH_STB1_HARP
85         bool "STB1_Harp"
87 config SH_STB1_OVERDRIVE
88         bool "STB1_Overdrive"
90 config SH_HP6XX
91         bool "HP6XX"
92         help
93           Select HP6XX if configuring for a HP jornada HP6xx.
94           More information (hardware only) at
95           <http://www.hp.com/jornada/>.
97 config SH_CQREEK
98         bool "CqREEK"
99         help
100           Select CqREEK if configuring for a CqREEK SH7708 or SH7750.
101           More information at
102           <http://sources.redhat.com/ecos/hardware.html#SuperH>.
104 config SH_DMIDA
105         bool "DMIDA"
106         help
107           Select DMIDA if configuring for a DataMyte 4000 Industrial
108           Digital Assistant. More information at <http://www.dmida.com/>.
110 config SH_EC3104
111         bool "EC3104"
112         help
113           Select EC3104 if configuring for a system with an Eclipse
114           International EC3104 chip, e.g. the Harris AD2000.
116 config SH_SATURN
117         bool "Saturn"
118         select CPU_SUBTYPE_SH7604
119         help
120           Select Saturn if configuring for a SEGA Saturn.
122 config SH_DREAMCAST
123         bool "Dreamcast"
124         select CPU_SUBTYPE_SH7091
125         help
126           Select Dreamcast if configuring for a SEGA Dreamcast.
127           More information at
128           <http://www.m17n.org/linux-sh/dreamcast/>.  There is a
129           Dreamcast project is at <http://linuxdc.sourceforge.net/>.
131 config SH_CAT68701
132         bool "CAT68701"
134 config SH_BIGSUR
135         bool "BigSur"
137 config SH_SH2000
138         bool "SH2000"
139         select CPU_SUBTYPE_SH7709
140         help
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>.
147 config SH_ADX
148         bool "ADX"
150 config SH_MPC1211
151         bool "Interface MPC1211"
152         help
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>
157 config SH_SH03
158         bool "Interface CTP/PCI-SH03"
159         help
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
167         help
168           Select SecureEdge5410 if configuring for a SnapGear SH board.
169           This includes both the OEM SecureEdge products as well as the
170           SME product line.
172 config SH_HS7751RVOIP
173         bool "HS7751RVOIP"
174         select CPU_SUBTYPE_SH7751R
175         help
176           Select HS7751RVOIP if configuring for a Renesas Technology
177           Sales VoIP board.
179 config SH_RTS7751R2D
180         bool "RTS7751R2D"
181         select CPU_SUBTYPE_SH7751R
182         help
183           Select RTS7751R2D if configuring for a Renesas Technology
184           Sales SH-Graphics board.
186 config SH_R7780RP
187         bool "R7780RP-1"
188         select CPU_SUBTYPE_SH7780
189         help
190           Select R7780RP-1 if configuring for a Renesas Solutions
191           HIGHLANDER board.
193 config SH_EDOSK7705
194         bool "EDOSK7705"
195         select CPU_SUBTYPE_SH7705
197 config SH_SH4202_MICRODEV
198         bool "SH4-202 MicroDev"
199         select CPU_SUBTYPE_SH4_202
200         help
201           Select SH4-202 MicroDev if configuring for a SuperH MicroDev board
202           with an SH4-202 CPU.
204 config SH_LANDISK
205         bool "LANDISK"
206         select CPU_SUBTYPE_SH7751R
207         help
208           I-O DATA DEVICE, INC. "LANDISK Series" support.
210 config SH_TITAN
211         bool "TITAN"
212         select CPU_SUBTYPE_SH7751R
213         help
214           Select Titan if you are configuring for a Nimble Microsystems
215           NetEngine NP51R.
217 config SH_UNKNOWN
218         bool "BareCPU"
219         help
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
225           not work.
227           This option is for the early stages of porting to a new machine.
229 endchoice
231 source "arch/sh/mm/Kconfig"
233 config MEMORY_START
234         hex "Physical memory start address"
235         default "0x08000000"
236         ---help---
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.
249 config MEMORY_SIZE
250         hex "Physical memory size"
251         default "0x00400000"
252         help
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
257           configurable.
259 config CF_ENABLER
260         bool "Compact Flash Enabler support"
261         depends on SH_ADX || SH_SOLUTION_ENGINE || SH_UNKNOWN || SH_CAT68701 || SH_SH03
262         ---help---
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'.
275 choice
276         prompt "Compact Flash Connection Area"
277         depends on CF_ENABLER
278         default CF_AREA6
280 config CF_AREA5
281         bool "Area5"
282         help
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".
291 config CF_AREA6
292         bool "Area6"
294 endchoice
296 config CF_BASE_ADDR
297         hex
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
305         bool "Little Endian"
306         help
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
312 config SH_RTC
313         bool
314         depends on !SH_DREAMCAST && !SH_SATURN && !SH_7300_SOLUTION_ENGINE && \
315                    !SH_73180_SOLUTION_ENGINE && !SH_LANDISK && \
316                    !SH_R7780RP
317         default y
318         help
319           Selecting this option will allow the Linux kernel to emulate
320           PC's RTC.
322           If unsure, say N.
324 config SH_FPU
325         bool "FPU support"
326         depends on !CPU_SH3
327         default y
328         help
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.
334 config SH_DSP
335         bool "DSP support"
336         depends on !CPU_SH4
337         default y
338         help
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.
345 config SH_ADC
346         bool "ADC support"
347         depends on CPU_SH3
348         default y
349         help
350           Selecting this option will allow the Linux kernel to use SH3 on-chip
351           ADC module.
353           If unsure, say N.
355 config SH_STORE_QUEUES
356         bool "Support for Store Queues"
357         depends on CPU_SH4
358         help
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
363         bool
365 config CPU_HAS_PINT_IRQ
366         bool
368 config CPU_HAS_INTC2_IRQ
369         bool
371 config CPU_HAS_SR_RB
372         bool "CPU has SR.RB"
373         depends on CPU_SH3 || CPU_SH4
374         default y
375         help
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.
383 endmenu
385 menu "Timer support"
387 config SH_TMU
388         bool "TMU timer support"
389         default y
390         help
391           This enables the use of the TMU as the system timer.
393 endmenu
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"
401         default y if !SH_RTC
402         default n
404 config SH_PCLK_FREQ
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
412         help
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"
421 config SH_CPU_FREQ
422         tristate "SuperH CPU Frequency driver"
423         depends on CPU_FREQ
424         select CPU_FREQ_TABLE
425         help
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>.
431           If unsure, say N.
433 endmenu
435 source "arch/sh/drivers/dma/Kconfig"
437 source "arch/sh/cchips/Kconfig"
439 config HEARTBEAT
440         bool "Heartbeat LED"
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
446         help
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.
451 endmenu
453 config ISA_DMA_API
454         bool
455         depends on MPC1211
456         default y
458 menu "Kernel features"
460 config KEXEC
461         bool "kexec system call (EXPERIMENTAL)"
462         depends on EXPERIMENTAL
463         help
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.
477 config PREEMPT
478         bool "Preemptible Kernel (EXPERIMENTAL)"
479         depends on EXPERIMENTAL
481 config SMP
482         bool "Symmetric multi-processing support"
483         ---help---
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.
503 config NR_CPUS
504         int "Maximum number of CPUs (2-32)"
505         range 2 32
506         depends on SMP
507         default "2"
508         help
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.
516 config CPU_HAS_SR_RB
517         bool "CPU has SR.RB"
518         depends on CPU_SH3 || CPU_SH4
519         default y
520         help
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.
528 endmenu
530 menu "Boot options"
532 config ZERO_PAGE_OFFSET
533         hex "Zero page offset"
534         default "0x00004000" if SH_MPC1211 || SH_SH03
535         default "0x00001000"
536         help
537           This sets the default offset of zero page.
539 config BOOT_LINK_OFFSET
540         hex "Link address offset for booting"
541         default "0x00800000"
542         help
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
545           memory.
547 config UBC_WAKEUP
548         bool "Wakeup UBC on startup"
549         help
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().
555           If unsure, say N.
557 config CMDLINE_BOOL
558         bool "Default bootloader kernel arguments"
560 config CMDLINE
561         string "Initial kernel command string"
562         depends on CMDLINE_BOOL
563         default "console=ttySC1,115200"
565 endmenu
567 menu "Bus options"
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.
576 config ISA
577         bool
578         default y if PCMCIA
579         help
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.
586 config EISA
587         bool
588         ---help---
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.
599           Otherwise, say N.
601 config MCA
602         bool
603         help
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.
609 config SBUS
610         bool
612 config SUPERHYWAY
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"
624 endmenu
626 menu "Executable file formats"
628 source "fs/Kconfig.binfmt"
630 endmenu
632 source "net/Kconfig"
634 source "drivers/Kconfig"
636 source "fs/Kconfig"
638 source "arch/sh/oprofile/Kconfig"
640 source "arch/sh/Kconfig.debug"
642 source "security/Kconfig"
644 source "crypto/Kconfig"
646 source "lib/Kconfig"