sh: Add SH7785 Highlander board support (R7785RP).
[linux-2.6/cjktty.git] / arch / sh / Kconfig
blob9932d1aa8494aa656e7655b727410e9dad477357
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_BUG
26         def_bool y
27         depends on BUG
29 config GENERIC_FIND_NEXT_BIT
30         bool
31         default y
33 config GENERIC_HWEIGHT
34         bool
35         default y
37 config GENERIC_HARDIRQS
38         bool
39         default y
41 config GENERIC_IRQ_PROBE
42         bool
43         default y
45 config GENERIC_CALIBRATE_DELAY
46         bool
47         default y
49 config GENERIC_IOMAP
50         bool
52 config GENERIC_TIME
53         def_bool n
55 config SYS_SUPPORTS_APM_EMULATION
56         bool
58 config ARCH_MAY_HAVE_PC_FDC
59         bool
61 config STACKTRACE_SUPPORT
62         bool
63         default y
65 config LOCKDEP_SUPPORT
66         bool
67         default y
69 config ARCH_HAS_ILOG2_U32
70         bool
71         default n
73 config ARCH_HAS_ILOG2_U64
74         bool
75         default n
77 source "init/Kconfig"
79 menu "System type"
81 config SOLUTION_ENGINE
82         bool
84 choice
85         prompt "SuperH system type"
86         default SH_UNKNOWN
88 config SH_SOLUTION_ENGINE
89         bool "SolutionEngine"
90         select SOLUTION_ENGINE
91         help
92           Select SolutionEngine if configuring for a Hitachi SH7709
93           or SH7750 evaluation board.
95 config SH_7751_SOLUTION_ENGINE
96         bool "SolutionEngine7751"
97         select SOLUTION_ENGINE
98         select CPU_SUBTYPE_SH7751
99         help
100           Select 7751 SolutionEngine if configuring for a Hitachi SH7751
101           evaluation board.
103 config SH_7300_SOLUTION_ENGINE
104         bool "SolutionEngine7300"
105         select SOLUTION_ENGINE
106         select CPU_SUBTYPE_SH7300
107         help
108           Select 7300 SolutionEngine if configuring for a Hitachi
109           SH7300(SH-Mobile V) evaluation board.
111 config SH_7343_SOLUTION_ENGINE
112         bool "SolutionEngine7343"
113         select SOLUTION_ENGINE
114         select CPU_SUBTYPE_SH7343
115         help
116           Select 7343 SolutionEngine if configuring for a Hitachi
117           SH7343 (SH-Mobile 3AS) evaluation board.
119 config SH_73180_SOLUTION_ENGINE
120        bool "SolutionEngine73180"
121         select SOLUTION_ENGINE
122         select CPU_SUBTYPE_SH73180
123         help
124           Select 73180 SolutionEngine if configuring for a Hitachi
125           SH73180(SH-Mobile 3) evaluation board.
127 config SH_7751_SYSTEMH
128         bool "SystemH7751R"
129         select CPU_SUBTYPE_SH7751R
130         help
131           Select SystemH if you are configuring for a Renesas SystemH
132           7751R evaluation board.
134 config SH_HP6XX
135         bool "HP6XX"
136         select SYS_SUPPORTS_APM_EMULATION
137         help
138           Select HP6XX if configuring for a HP jornada HP6xx.
139           More information (hardware only) at
140           <http://www.hp.com/jornada/>.
142 config SH_SATURN
143         bool "Saturn"
144         select CPU_SUBTYPE_SH7604
145         help
146           Select Saturn if configuring for a SEGA Saturn.
148 config SH_DREAMCAST
149         bool "Dreamcast"
150         select CPU_SUBTYPE_SH7091
151         help
152           Select Dreamcast if configuring for a SEGA Dreamcast.
153           More information at
154           <http://www.m17n.org/linux-sh/dreamcast/>.  There is a
155           Dreamcast project is at <http://linuxdc.sourceforge.net/>.
157 config SH_MPC1211
158         bool "Interface MPC1211"
159         help
160           CTP/PCI-SH02 is a CPU module computer that is produced
161           by Interface Corporation.
162           More information at <http://www.interface.co.jp>
164 config SH_SH03
165         bool "Interface CTP/PCI-SH03"
166         help
167           CTP/PCI-SH03 is a CPU module computer that is produced
168           by Interface Corporation.
169           More information at <http://www.interface.co.jp>
171 config SH_SECUREEDGE5410
172         bool "SecureEdge5410"
173         select CPU_SUBTYPE_SH7751R
174         help
175           Select SecureEdge5410 if configuring for a SnapGear SH board.
176           This includes both the OEM SecureEdge products as well as the
177           SME product line.
179 config SH_HS7751RVOIP
180         bool "HS7751RVOIP"
181         select CPU_SUBTYPE_SH7751R
182         help
183           Select HS7751RVOIP if configuring for a Renesas Technology
184           Sales VoIP board.
186 config SH_7710VOIPGW
187         bool "SH7710-VOIP-GW"
188         select CPU_SUBTYPE_SH7710
189         help
190           Select this option to build a kernel for the SH7710 based
191           VOIP GW.
193 config SH_RTS7751R2D
194         bool "RTS7751R2D"
195         select CPU_SUBTYPE_SH7751R
196         help
197           Select RTS7751R2D if configuring for a Renesas Technology
198           Sales SH-Graphics board.
200 config SH_HIGHLANDER
201         bool "Highlander"
203 config SH_EDOSK7705
204         bool "EDOSK7705"
205         select CPU_SUBTYPE_SH7705
207 config SH_SH4202_MICRODEV
208         bool "SH4-202 MicroDev"
209         select CPU_SUBTYPE_SH4_202
210         help
211           Select SH4-202 MicroDev if configuring for a SuperH MicroDev board
212           with an SH4-202 CPU.
214 config SH_LANDISK
215         bool "LANDISK"
216         select CPU_SUBTYPE_SH7751R
217         help
218           I-O DATA DEVICE, INC. "LANDISK Series" support.
220 config SH_TITAN
221         bool "TITAN"
222         select CPU_SUBTYPE_SH7751R
223         help
224           Select Titan if you are configuring for a Nimble Microsystems
225           NetEngine NP51R.
227 config SH_SHMIN
228         bool "SHMIN"
229         select CPU_SUBTYPE_SH7706
230         help
231           Select SHMIN if configuring for the SHMIN board.
233 config SH_7206_SOLUTION_ENGINE
234         bool "SolutionEngine7206"
235         select CPU_SUBTYPE_SH7206
236         help
237           Select 7206 SolutionEngine if configuring for a Hitachi SH7206
238           evaluation board.
240 config SH_7619_SOLUTION_ENGINE
241         bool "SolutionEngine7619"
242         select CPU_SUBTYPE_SH7619
243         help
244           Select 7619 SolutionEngine if configuring for a Hitachi SH7619
245           evaluation board.
247 config SH_UNKNOWN
248         bool "BareCPU"
249         help
250           "Bare CPU" aka "unknown" means an SH-based system which is not one
251           of the specific ones mentioned above, which means you need to enter
252           all sorts of stuff like CONFIG_MEMORY_START because the config
253           system doesn't already know what it is.  You get a machine vector
254           without any platform-specific code in it, so things like the RTC may
255           not work.
257           This option is for the early stages of porting to a new machine.
259 endchoice
261 source "arch/sh/boards/renesas/hs7751rvoip/Kconfig"
262 source "arch/sh/boards/renesas/rts7751r2d/Kconfig"
263 source "arch/sh/boards/renesas/r7780rp/Kconfig"
265 source "arch/sh/mm/Kconfig"
267 config CF_ENABLER
268         bool "Compact Flash Enabler support"
269         depends on SH_SOLUTION_ENGINE || SH_UNKNOWN || SH_SH03
270         ---help---
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'.
283 choice
284         prompt "Compact Flash Connection Area"
285         depends on CF_ENABLER
286         default CF_AREA6
288 config CF_AREA5
289         bool "Area5"
290         help
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.
299 config CF_AREA6
300         bool "Area6"
302 endchoice
304 config CF_BASE_ADDR
305         hex
306         depends on CF_ENABLER
307         default "0xb8000000" if CF_AREA6
308         default "0xb4000000" if CF_AREA5
310 menu "Processor features"
312 choice
313         prompt "Endianess selection" 
314         default CPU_LITTLE_ENDIAN
315         help
316           Some SuperH machines can be configured for either little or big
317           endian byte order. These modes require different kernels.
319 config CPU_LITTLE_ENDIAN
320         bool "Little Endian"
322 config CPU_BIG_ENDIAN
323         bool "Big Endian"
325 endchoice
327 config SH_FPU
328         bool "FPU support"
329         depends on !CPU_SH3
330         default y
331         help
332           Selecting this option will enable support for SH processors that
333           have FPU units (ie, SH77xx).
335           This option must be set in order to enable the FPU.
337 config SH_FPU_EMU
338         bool "FPU emulation support"
339         depends on !SH_FPU && EXPERIMENTAL
340         default n
341         help
342           Selecting this option will enable support for software FPU emulation.
343           Most SH-3 users will want to say Y here, whereas most SH-4 users will
344           want to say N.
346 config SH_DSP
347         bool "DSP support"
348         default y if SH4AL_DSP || !CPU_SH4
349         default n
350         help
351           Selecting this option will enable support for SH processors that
352           have DSP units (ie, SH2-DSP, SH3-DSP, and SH4AL-DSP).
354           This option must be set in order to enable the DSP.
356 config SH_ADC
357         bool "ADC support"
358         depends on CPU_SH3
359         default y
360         help
361           Selecting this option will allow the Linux kernel to use SH3 on-chip
362           ADC module.
364           If unsure, say N.
366 config SH_STORE_QUEUES
367         bool "Support for Store Queues"
368         depends on CPU_SH4
369         help
370           Selecting this option will enable an in-kernel API for manipulating
371           the store queues integrated in the SH-4 processors.
373 config SPECULATIVE_EXECUTION
374         bool "Speculative subroutine return"
375         depends on CPU_SUBTYPE_SH7780 && EXPERIMENTAL
376         help
377           This enables support for a speculative instruction fetch for
378           subroutine return. There are various pitfalls associated with
379           this, as outlined in the SH7780 hardware manual.
381           If unsure, say N.
383 config CPU_HAS_INTEVT
384         bool
386 config CPU_HAS_PINT_IRQ
387         bool
389 config CPU_HAS_MASKREG_IRQ
390         bool
392 config CPU_HAS_INTC2_IRQ
393         bool
395 config CPU_HAS_IPR_IRQ
396         bool
398 config CPU_HAS_SR_RB
399         bool "CPU has SR.RB"
400         depends on CPU_SH3 || CPU_SH4
401         default y
402         help
403           This will enable the use of SR.RB register bank usage. Processors
404           that are lacking this bit must have another method in place for
405           accomplishing what is taken care of by the banked registers.
407           See <file:Documentation/sh/register-banks.txt> for further
408           information on SR.RB and register banking in the kernel in general.
410 config CPU_HAS_PTEA
411         bool
413 endmenu
415 menu "Timer and clock configuration"
417 if !GENERIC_TIME
419 config SH_TMU
420         bool "TMU timer support"
421         depends on CPU_SH3 || CPU_SH4
422         default y
423         help
424           This enables the use of the TMU as the system timer.
426 config SH_CMT
427         bool "CMT timer support"
428         depends on CPU_SH2
429         default y
430         help
431           This enables the use of the CMT as the system timer.
433 config SH_MTU2
434         bool "MTU2 timer support"
435         depends on CPU_SH2A
436         default n
437         help
438           This enables the use of the MTU2 as the system timer.
440 endif
442 config SH_TIMER_IRQ
443         int
444         default "28" if CPU_SUBTYPE_SH7780 || CPU_SUBTYPE_SH7785
445         default "86" if CPU_SUBTYPE_SH7619
446         default "140" if CPU_SUBTYPE_SH7206
447         default "16"
449 config NO_IDLE_HZ
450         bool "Dynamic tick timer"
451         help
452           Select this option if you want to disable continuous timer ticks
453           and have them programmed to occur as required. This option saves
454           power as the system can remain in idle state for longer.
456           By default dynamic tick is disabled during the boot, and can be
457           manually enabled with:
459             echo 1 > /sys/devices/system/timer/timer0/dyn_tick
461           Alternatively, if you want dynamic tick automatically enabled
462           during boot, pass "dyntick=enable" via the kernel command string.
464           Please note that dynamic tick may affect the accuracy of
465           timekeeping on some platforms depending on the implementation.
467 config SH_PCLK_FREQ
468         int "Peripheral clock frequency (in Hz)"
469         default "27000000" if CPU_SUBTYPE_SH73180 || CPU_SUBTYPE_SH7343
470         default "31250000" if CPU_SUBTYPE_SH7619
471         default "33333333" if CPU_SUBTYPE_SH7300 || CPU_SUBTYPE_SH7770 || \
472                               CPU_SUBTYPE_SH7760 || CPU_SUBTYPE_SH7705 || \
473                               CPU_SUBTYPE_SH7206
474         default "50000000" if CPU_SUBTYPE_SH7750 || CPU_SUBTYPE_SH7780 || \
475                               CPU_SUBTYPE_SH7785
476         default "60000000" if CPU_SUBTYPE_SH7751
477         default "66000000" if CPU_SUBTYPE_SH4_202
478         help
479           This option is used to specify the peripheral clock frequency.
480           This is necessary for determining the reference clock value on
481           platforms lacking an RTC.
483 config SH_CLK_MD
484         int "CPU Mode Pin Setting"
485         default 0
486         depends on CPU_SUBTYPE_SH7619 || CPU_SUBTYPE_SH7206
487         help
488           MD2 - MD0 pin setting.
490 endmenu
492 menu "CPU Frequency scaling"
494 source "drivers/cpufreq/Kconfig"
496 config SH_CPU_FREQ
497         tristate "SuperH CPU Frequency driver"
498         depends on CPU_FREQ
499         select CPU_FREQ_TABLE
500         help
501           This adds the cpufreq driver for SuperH. At present, only
502           the SH-4 is supported.
504           For details, take a look at <file:Documentation/cpu-freq>.
506           If unsure, say N.
508 endmenu
510 source "arch/sh/drivers/Kconfig"
512 endmenu
514 config ISA_DMA_API
515         bool
516         depends on SH_MPC1211
517         default y
519 menu "Kernel features"
521 source kernel/Kconfig.hz
523 config KEXEC
524         bool "kexec system call (EXPERIMENTAL)"
525         depends on EXPERIMENTAL
526         help
527           kexec is a system call that implements the ability to shutdown your
528           current kernel, and to start another kernel.  It is like a reboot
529           but it is independent of the system firmware.  And like a reboot
530           you can start any kernel with it, not just Linux.
532           The name comes from the similarity to the exec system call.
534           It is an ongoing process to be certain the hardware in a machine
535           is properly shutdown, so do not be surprised if this code does not
536           initially work for you.  It may help to enable device hotplugging
537           support.  As of this writing the exact hardware interface is
538           strongly in flux, so no good recommendation can be made.
540 config SMP
541         bool "Symmetric multi-processing support"
542         ---help---
543           This enables support for systems with more than one CPU. If you have
544           a system with only one CPU, like most personal computers, say N. If
545           you have a system with more than one CPU, say Y.
547           If you say N here, the kernel will run on single and multiprocessor
548           machines, but will use only one CPU of a multiprocessor machine. If
549           you say Y here, the kernel will run on many, but not all,
550           singleprocessor machines. On a singleprocessor machine, the kernel
551           will run faster if you say N here.
553           People using multiprocessor machines who say Y here should also say
554           Y to "Enhanced Real Time Clock Support", below.
556           See also the <file:Documentation/smp.txt>,
557           <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available
558           at <http://www.tldp.org/docs.html#howto>.
560           If you don't know what to do here, say N.
562 config NR_CPUS
563         int "Maximum number of CPUs (2-32)"
564         range 2 32
565         depends on SMP
566         default "2"
567         help
568           This allows you to specify the maximum number of CPUs which this
569           kernel will support.  The maximum supported value is 32 and the
570           minimum value which makes sense is 2.
572           This is purely to save memory - each supported CPU adds
573           approximately eight kilobytes to the kernel image.
575 source "kernel/Kconfig.preempt"
577 config NODES_SHIFT
578         int
579         default "1"
580         depends on NEED_MULTIPLE_NODES
582 endmenu
584 menu "Boot options"
586 config ZERO_PAGE_OFFSET
587         hex "Zero page offset"
588         default "0x00004000" if SH_MPC1211 || SH_SH03
589         default "0x00010000" if PAGE_SIZE_64KB
590         default "0x00002000" if PAGE_SIZE_8KB
591         default "0x00001000"
592         help
593           This sets the default offset of zero page.
595 config BOOT_LINK_OFFSET
596         hex "Link address offset for booting"
597         default "0x00800000"
598         help
599           This option allows you to set the link address offset of the zImage.
600           This can be useful if you are on a board which has a small amount of
601           memory.
603 config UBC_WAKEUP
604         bool "Wakeup UBC on startup"
605         help
606           Selecting this option will wakeup the User Break Controller (UBC) on
607           startup. Although the UBC is left in an awake state when the processor
608           comes up, some boot loaders misbehave by putting the UBC to sleep in a
609           power saving state, which causes issues with things like ptrace().
611           If unsure, say N.
613 config CMDLINE_BOOL
614         bool "Default bootloader kernel arguments"
616 config CMDLINE
617         string "Initial kernel command string"
618         depends on CMDLINE_BOOL
619         default "console=ttySC1,115200"
621 endmenu
623 menu "Bus options"
625 # Even on SuperH devices which don't have an ISA bus,
626 # this variable helps the PCMCIA modules handle
627 # IRQ requesting properly -- Greg Banks.
629 # Though we're generally not interested in it when
630 # we're not using PCMCIA, so we make it dependent on
631 # PCMCIA outright. -- PFM.
632 config ISA
633         bool
634         default y if PCMCIA
635         help
636           Find out whether you have ISA slots on your motherboard.  ISA is the
637           name of a bus system, i.e. the way the CPU talks to the other stuff
638           inside your box.  Other bus systems are PCI, EISA, MicroChannel
639           (MCA) or VESA.  ISA is an older system, now being displaced by PCI;
640           newer boards don't support it.  If you have ISA, say Y, otherwise N.
642 config EISA
643         bool
644         ---help---
645           The Extended Industry Standard Architecture (EISA) bus was
646           developed as an open alternative to the IBM MicroChannel bus.
648           The EISA bus provided some of the features of the IBM MicroChannel
649           bus while maintaining backward compatibility with cards made for
650           the older ISA bus.  The EISA bus saw limited use between 1988 and
651           1995 when it was made obsolete by the PCI bus.
653           Say Y here if you are building a kernel for an EISA-based machine.
655           Otherwise, say N.
657 config MCA
658         bool
659         help
660           MicroChannel Architecture is found in some IBM PS/2 machines and
661           laptops.  It is a bus system similar to PCI or ISA. See
662           <file:Documentation/mca.txt> (and especially the web page given
663           there) before attempting to build an MCA bus kernel.
665 config SBUS
666         bool
668 config SUPERHYWAY
669         tristate "SuperHyway Bus support"
670         depends on CPU_SUBTYPE_SH4_202
672 source "arch/sh/drivers/pci/Kconfig"
674 source "drivers/pci/Kconfig"
676 source "drivers/pcmcia/Kconfig"
678 source "drivers/pci/hotplug/Kconfig"
680 endmenu
682 menu "Executable file formats"
684 source "fs/Kconfig.binfmt"
686 endmenu
688 menu "Power management options (EXPERIMENTAL)"
689 depends on EXPERIMENTAL
691 source kernel/power/Kconfig
693 endmenu
695 source "net/Kconfig"
697 source "drivers/Kconfig"
699 source "fs/Kconfig"
701 source "arch/sh/oprofile/Kconfig"
703 source "arch/sh/Kconfig.debug"
705 source "security/Kconfig"
707 source "crypto/Kconfig"
709 source "lib/Kconfig"