]> pilppa.org Git - linux-2.6-omap-h63xx.git/blob - arch/sh/Kconfig
sh: Fix up cf-enabler dependency for SE boards.
[linux-2.6-omap-h63xx.git] / arch / sh / Kconfig
1 #
2 # For a description of the syntax of this configuration file,
3 # see Documentation/kbuild/kconfig-language.txt.
4 #
5
6 mainmenu "Linux/SuperH Kernel Configuration"
7
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/>.
17
18 config RWSEM_GENERIC_SPINLOCK
19         bool
20         default y
21
22 config RWSEM_XCHGADD_ALGORITHM
23         bool
24
25 config GENERIC_BUG
26         def_bool y
27         depends on BUG
28
29 config GENERIC_FIND_NEXT_BIT
30         bool
31         default y
32
33 config GENERIC_HWEIGHT
34         bool
35         default y
36
37 config GENERIC_HARDIRQS
38         bool
39         default y
40
41 config GENERIC_IRQ_PROBE
42         bool
43         default y
44
45 config GENERIC_CALIBRATE_DELAY
46         bool
47         default y
48
49 config GENERIC_IOMAP
50         bool
51
52 config GENERIC_TIME
53         def_bool n
54
55 config GENERIC_CLOCKEVENTS
56         def_bool n
57
58 config SYS_SUPPORTS_PM
59         bool
60
61 config SYS_SUPPORTS_APM_EMULATION
62         bool
63         select SYS_SUPPORTS_PM
64
65 config SYS_SUPPORTS_SMP
66         bool
67
68 config SYS_SUPPORTS_NUMA
69         bool
70
71 config SYS_SUPPORTS_PCI
72         bool
73
74 config ARCH_MAY_HAVE_PC_FDC
75         bool
76
77 config STACKTRACE_SUPPORT
78         bool
79         default y
80
81 config LOCKDEP_SUPPORT
82         bool
83         default y
84
85 config ARCH_HAS_ILOG2_U32
86         bool
87         default n
88
89 config ARCH_HAS_ILOG2_U64
90         bool
91         default n
92
93 source "init/Kconfig"
94
95 menu "System type"
96
97 source "arch/sh/mm/Kconfig"
98
99 menu "Processor features"
100
101 choice
102         prompt "Endianess selection" 
103         default CPU_LITTLE_ENDIAN
104         help
105           Some SuperH machines can be configured for either little or big
106           endian byte order. These modes require different kernels.
107
108 config CPU_LITTLE_ENDIAN
109         bool "Little Endian"
110
111 config CPU_BIG_ENDIAN
112         bool "Big Endian"
113
114 endchoice
115
116 config SH_FPU
117         bool "FPU support"
118         depends on CPU_SH4
119         default y
120         help
121           Selecting this option will enable support for SH processors that
122           have FPU units (ie, SH77xx).
123
124           This option must be set in order to enable the FPU.
125
126 config SH_FPU_EMU
127         bool "FPU emulation support"
128         depends on !SH_FPU && EXPERIMENTAL
129         default n
130         help
131           Selecting this option will enable support for software FPU emulation.
132           Most SH-3 users will want to say Y here, whereas most SH-4 users will
133           want to say N.
134
135 config SH_DSP
136         bool "DSP support"
137         default y if SH4AL_DSP || !CPU_SH4
138         default n
139         help
140           Selecting this option will enable support for SH processors that
141           have DSP units (ie, SH2-DSP, SH3-DSP, and SH4AL-DSP).
142
143           This option must be set in order to enable the DSP.
144
145 config SH_ADC
146         bool "ADC support"
147         depends on CPU_SH3
148         default y
149         help
150           Selecting this option will allow the Linux kernel to use SH3 on-chip
151           ADC module.
152
153           If unsure, say N.
154
155 config SH_STORE_QUEUES
156         bool "Support for Store Queues"
157         depends on CPU_SH4
158         help
159           Selecting this option will enable an in-kernel API for manipulating
160           the store queues integrated in the SH-4 processors.
161
162 config SPECULATIVE_EXECUTION
163         bool "Speculative subroutine return"
164         depends on CPU_SUBTYPE_SH7780 && EXPERIMENTAL
165         help
166           This enables support for a speculative instruction fetch for
167           subroutine return. There are various pitfalls associated with
168           this, as outlined in the SH7780 hardware manual.
169
170           If unsure, say N.
171
172 config CPU_HAS_INTEVT
173         bool
174
175 config CPU_HAS_PINT_IRQ
176         bool
177
178 config CPU_HAS_MASKREG_IRQ
179         bool
180
181 config CPU_HAS_INTC2_IRQ
182         bool
183
184 config CPU_HAS_IPR_IRQ
185         bool
186
187 config CPU_HAS_SR_RB
188         bool "CPU has SR.RB"
189         depends on CPU_SH3 || CPU_SH4
190         default y
191         help
192           This will enable the use of SR.RB register bank usage. Processors
193           that are lacking this bit must have another method in place for
194           accomplishing what is taken care of by the banked registers.
195
196           See <file:Documentation/sh/register-banks.txt> for further
197           information on SR.RB and register banking in the kernel in general.
198
199 config CPU_HAS_PTEA
200         bool
201
202 endmenu
203
204 menu "Board support"
205
206 config SOLUTION_ENGINE
207         bool
208
209 config SH_SOLUTION_ENGINE
210         bool "SolutionEngine"
211         select SOLUTION_ENGINE
212         depends on CPU_SUBTYPE_SH7709 || CPU_SUBTYPE_SH7750
213         help
214           Select SolutionEngine if configuring for a Hitachi SH7709
215           or SH7750 evaluation board.
216
217 config SH_7206_SOLUTION_ENGINE
218         bool "SolutionEngine7206"
219         select SOLUTION_ENGINE
220         depends on CPU_SUBTYPE_SH7206
221         help
222           Select 7206 SolutionEngine if configuring for a Hitachi SH7206
223           evaluation board.
224
225 config SH_7619_SOLUTION_ENGINE
226         bool "SolutionEngine7619"
227         select SOLUTION_ENGINE
228         depends on CPU_SUBTYPE_SH7619
229         help
230           Select 7619 SolutionEngine if configuring for a Hitachi SH7619
231           evaluation board.
232         
233 config SH_7722_SOLUTION_ENGINE
234         bool "SolutionEngine7722"
235         select SOLUTION_ENGINE
236         depends on CPU_SUBTYPE_SH7722
237         help
238           Select 7722 SolutionEngine if configuring for a Hitachi SH772
239           evaluation board.
240
241 config SH_7751_SOLUTION_ENGINE
242         bool "SolutionEngine7751"
243         select SOLUTION_ENGINE
244         depends on CPU_SUBTYPE_SH7751
245         help
246           Select 7751 SolutionEngine if configuring for a Hitachi SH7751
247           evaluation board.
248           
249 config SH_7780_SOLUTION_ENGINE
250         bool "SolutionEngine7780"
251         select SOLUTION_ENGINE
252         select SYS_SUPPORTS_PCI
253         depends on CPU_SUBTYPE_SH7780
254         help
255           Select 7780 SolutionEngine if configuring for a Renesas SH7780
256           evaluation board.
257
258 config SH_7300_SOLUTION_ENGINE
259         bool "SolutionEngine7300"
260         select SOLUTION_ENGINE
261         depends on CPU_SUBTYPE_SH7300
262         help
263           Select 7300 SolutionEngine if configuring for a Hitachi
264           SH7300(SH-Mobile V) evaluation board.
265
266 config SH_7343_SOLUTION_ENGINE
267         bool "SolutionEngine7343"
268         select SOLUTION_ENGINE
269         depends on CPU_SUBTYPE_SH7343
270         help
271           Select 7343 SolutionEngine if configuring for a Hitachi
272           SH7343 (SH-Mobile 3AS) evaluation board.
273
274 config SH_73180_SOLUTION_ENGINE
275         bool "SolutionEngine73180"
276         select SOLUTION_ENGINE
277         depends on CPU_SUBTYPE_SH73180
278         help
279           Select 73180 SolutionEngine if configuring for a Hitachi
280           SH73180(SH-Mobile 3) evaluation board.
281
282 config SH_7751_SYSTEMH
283         bool "SystemH7751R"
284         depends on CPU_SUBTYPE_SH7751R
285         help
286           Select SystemH if you are configuring for a Renesas SystemH
287           7751R evaluation board.
288
289 config SH_HP6XX
290         bool "HP6XX"
291         select SYS_SUPPORTS_APM_EMULATION
292         select HD6446X_SERIES
293         depends on CPU_SUBTYPE_SH7709
294         help
295           Select HP6XX if configuring for a HP jornada HP6xx.
296           More information (hardware only) at
297           <http://www.hp.com/jornada/>.
298
299 config SH_DREAMCAST
300         bool "Dreamcast"
301         select SYS_SUPPORTS_PCI
302         depends on CPU_SUBTYPE_SH7091
303         help
304           Select Dreamcast if configuring for a SEGA Dreamcast.
305           More information at
306           <http://www.m17n.org/linux-sh/dreamcast/>.  There is a
307           Dreamcast project is at <http://linuxdc.sourceforge.net/>.
308
309 config SH_MPC1211
310         bool "Interface MPC1211"
311         depends on CPU_SUBTYPE_SH7751 && BROKEN
312         help
313           CTP/PCI-SH02 is a CPU module computer that is produced
314           by Interface Corporation.
315           More information at <http://www.interface.co.jp>
316
317 config SH_SH03
318         bool "Interface CTP/PCI-SH03"
319         depends on CPU_SUBTYPE_SH7751 && BROKEN
320         select SYS_SUPPORTS_PCI
321         help
322           CTP/PCI-SH03 is a CPU module computer that is produced
323           by Interface Corporation.
324           More information at <http://www.interface.co.jp>
325
326 config SH_SECUREEDGE5410
327         bool "SecureEdge5410"
328         depends on CPU_SUBTYPE_SH7751R
329         select SYS_SUPPORTS_PCI
330         help
331           Select SecureEdge5410 if configuring for a SnapGear SH board.
332           This includes both the OEM SecureEdge products as well as the
333           SME product line.
334
335 config SH_HS7751RVOIP
336         bool "HS7751RVOIP"
337         depends on CPU_SUBTYPE_SH7751R
338         help
339           Select HS7751RVOIP if configuring for a Renesas Technology
340           Sales VoIP board.
341
342 config SH_7710VOIPGW
343         bool "SH7710-VOIP-GW"
344         depends on CPU_SUBTYPE_SH7710
345         help
346           Select this option to build a kernel for the SH7710 based
347           VOIP GW.
348
349 config SH_RTS7751R2D
350         bool "RTS7751R2D"
351         depends on CPU_SUBTYPE_SH7751R
352         select SYS_SUPPORTS_PCI
353         help
354           Select RTS7751R2D if configuring for a Renesas Technology
355           Sales SH-Graphics board.
356
357 config SH_HIGHLANDER
358         bool "Highlander"
359         depends on CPU_SUBTYPE_SH7780 || CPU_SUBTYPE_SH7785
360         select SYS_SUPPORTS_PCI
361
362 config SH_EDOSK7705
363         bool "EDOSK7705"
364         depends on CPU_SUBTYPE_SH7705
365
366 config SH_SH4202_MICRODEV
367         bool "SH4-202 MicroDev"
368         depends on CPU_SUBTYPE_SH4_202
369         help
370           Select SH4-202 MicroDev if configuring for a SuperH MicroDev board
371           with an SH4-202 CPU.
372
373 config SH_LANDISK
374         bool "LANDISK"
375         depends on CPU_SUBTYPE_SH7751R
376         select SYS_SUPPORTS_PCI
377         help
378           I-O DATA DEVICE, INC. "LANDISK Series" support.
379
380 config SH_TITAN
381         bool "TITAN"
382         depends on CPU_SUBTYPE_SH7751R
383         select SYS_SUPPORTS_PCI
384         help
385           Select Titan if you are configuring for a Nimble Microsystems
386           NetEngine NP51R.
387
388 config SH_SHMIN
389         bool "SHMIN"
390         depends on CPU_SUBTYPE_SH7706
391         help
392           Select SHMIN if configuring for the SHMIN board.
393
394 config SH_LBOX_RE2
395         bool "L-BOX RE2"
396         depends on CPU_SUBTYPE_SH7751R
397         select SYS_SUPPORTS_PCI
398         help
399           Select L-BOX RE2 if configuring for the NTT COMWARE L-BOX RE2.
400
401 endmenu
402
403 source "arch/sh/boards/renesas/hs7751rvoip/Kconfig"
404 source "arch/sh/boards/renesas/rts7751r2d/Kconfig"
405 source "arch/sh/boards/renesas/r7780rp/Kconfig"
406
407 menu "Timer and clock configuration"
408
409 config SH_TMU
410         bool "TMU timer support"
411         depends on CPU_SH3 || CPU_SH4
412         select GENERIC_TIME
413         select GENERIC_CLOCKEVENTS
414         default y
415         help
416           This enables the use of the TMU as the system timer.
417
418 config SH_CMT
419         bool "CMT timer support"
420         depends on CPU_SH2
421         default y
422         help
423           This enables the use of the CMT as the system timer.
424
425 config SH_MTU2
426         bool "MTU2 timer support"
427         depends on CPU_SH2A
428         default n
429         help
430           This enables the use of the MTU2 as the system timer.
431
432 config SH_TIMER_IRQ
433         int
434         default "28" if CPU_SUBTYPE_SH7780 || CPU_SUBTYPE_SH7785
435         default "86" if CPU_SUBTYPE_SH7619
436         default "140" if CPU_SUBTYPE_SH7206
437         default "16"
438
439 config SH_PCLK_FREQ
440         int "Peripheral clock frequency (in Hz)"
441         default "27000000" if CPU_SUBTYPE_SH73180 || CPU_SUBTYPE_SH7343
442         default "31250000" if CPU_SUBTYPE_SH7619
443         default "32000000" if CPU_SUBTYPE_SH7722
444         default "33333333" if CPU_SUBTYPE_SH7300 || CPU_SUBTYPE_SH7770 || \
445                               CPU_SUBTYPE_SH7760 || CPU_SUBTYPE_SH7705 || \
446                               CPU_SUBTYPE_SH7206
447         default "60000000" if CPU_SUBTYPE_SH7751 || CPU_SUBTYPE_SH7751R
448         default "66000000" if CPU_SUBTYPE_SH4_202
449         default "50000000"
450         help
451           This option is used to specify the peripheral clock frequency.
452           This is necessary for determining the reference clock value on
453           platforms lacking an RTC.
454
455 config SH_CLK_MD
456         int "CPU Mode Pin Setting"
457         depends on CPU_SUBTYPE_SH7619 || CPU_SUBTYPE_SH7206
458         default 6 if CPU_SUBTYPE_SH7206
459         default 5 if CPU_SUBTYPE_SH7619
460         default 0
461         help
462           MD2 - MD0 pin setting.
463
464 source "kernel/time/Kconfig"
465
466 endmenu
467
468 menu "CPU Frequency scaling"
469
470 source "drivers/cpufreq/Kconfig"
471
472 config SH_CPU_FREQ
473         tristate "SuperH CPU Frequency driver"
474         depends on CPU_FREQ
475         select CPU_FREQ_TABLE
476         help
477           This adds the cpufreq driver for SuperH. At present, only
478           the SH-4 is supported.
479
480           For details, take a look at <file:Documentation/cpu-freq>.
481
482           If unsure, say N.
483
484 endmenu
485
486 source "arch/sh/drivers/Kconfig"
487
488 endmenu
489
490 config ISA_DMA_API
491         bool
492         depends on SH_MPC1211
493         default y
494
495 menu "Kernel features"
496
497 source kernel/Kconfig.hz
498
499 config KEXEC
500         bool "kexec system call (EXPERIMENTAL)"
501         depends on EXPERIMENTAL
502         help
503           kexec is a system call that implements the ability to shutdown your
504           current kernel, and to start another kernel.  It is like a reboot
505           but it is independent of the system firmware.  And like a reboot
506           you can start any kernel with it, not just Linux.
507
508           The name comes from the similarity to the exec system call.
509
510           It is an ongoing process to be certain the hardware in a machine
511           is properly shutdown, so do not be surprised if this code does not
512           initially work for you.  It may help to enable device hotplugging
513           support.  As of this writing the exact hardware interface is
514           strongly in flux, so no good recommendation can be made.
515
516 config CRASH_DUMP
517         bool "kernel crash dumps (EXPERIMENTAL)"
518         depends on EXPERIMENTAL
519         help
520           Generate crash dump after being started by kexec.
521           This should be normally only set in special crash dump kernels
522           which are loaded in the main kernel with kexec-tools into
523           a specially reserved region and then later executed after
524           a crash by kdump/kexec. The crash dump kernel must be compiled
525           to a memory address not used by the main kernel using
526           MEMORY_START.
527
528           For more details see Documentation/kdump/kdump.txt
529
530 config SMP
531         bool "Symmetric multi-processing support"
532         depends on SYS_SUPPORTS_SMP
533         ---help---
534           This enables support for systems with more than one CPU. If you have
535           a system with only one CPU, like most personal computers, say N. If
536           you have a system with more than one CPU, say Y.
537
538           If you say N here, the kernel will run on single and multiprocessor
539           machines, but will use only one CPU of a multiprocessor machine. If
540           you say Y here, the kernel will run on many, but not all,
541           singleprocessor machines. On a singleprocessor machine, the kernel
542           will run faster if you say N here.
543
544           People using multiprocessor machines who say Y here should also say
545           Y to "Enhanced Real Time Clock Support", below.
546
547           See also the <file:Documentation/smp.txt>,
548           <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available
549           at <http://www.tldp.org/docs.html#howto>.
550
551           If you don't know what to do here, say N.
552
553 config NR_CPUS
554         int "Maximum number of CPUs (2-32)"
555         range 2 32
556         depends on SMP
557         default "2"
558         help
559           This allows you to specify the maximum number of CPUs which this
560           kernel will support.  The maximum supported value is 32 and the
561           minimum value which makes sense is 2.
562
563           This is purely to save memory - each supported CPU adds
564           approximately eight kilobytes to the kernel image.
565
566 source "kernel/Kconfig.preempt"
567
568 config NODES_SHIFT
569         int
570         default "1"
571         depends on NEED_MULTIPLE_NODES
572
573 endmenu
574
575 menu "Boot options"
576
577 config ZERO_PAGE_OFFSET
578         hex "Zero page offset"
579         default "0x00004000" if SH_MPC1211 || SH_SH03
580         default "0x00010000" if PAGE_SIZE_64KB
581         default "0x00002000" if PAGE_SIZE_8KB
582         default "0x00001000"
583         help
584           This sets the default offset of zero page.
585
586 config BOOT_LINK_OFFSET
587         hex "Link address offset for booting"
588         default "0x00800000"
589         help
590           This option allows you to set the link address offset of the zImage.
591           This can be useful if you are on a board which has a small amount of
592           memory.
593
594 config UBC_WAKEUP
595         bool "Wakeup UBC on startup"
596         depends on CPU_SH4
597         help
598           Selecting this option will wakeup the User Break Controller (UBC) on
599           startup. Although the UBC is left in an awake state when the processor
600           comes up, some boot loaders misbehave by putting the UBC to sleep in a
601           power saving state, which causes issues with things like ptrace().
602
603           If unsure, say N.
604
605 config CMDLINE_BOOL
606         bool "Default bootloader kernel arguments"
607
608 config CMDLINE
609         string "Initial kernel command string"
610         depends on CMDLINE_BOOL
611         default "console=ttySC1,115200"
612
613 endmenu
614
615 menu "Bus options"
616
617 # Even on SuperH devices which don't have an ISA bus,
618 # this variable helps the PCMCIA modules handle
619 # IRQ requesting properly -- Greg Banks.
620 #
621 # Though we're generally not interested in it when
622 # we're not using PCMCIA, so we make it dependent on
623 # PCMCIA outright. -- PFM.
624 config ISA
625         def_bool y
626         depends on PCMCIA && HD6446X_SERIES
627         help
628           Find out whether you have ISA slots on your motherboard.  ISA is the
629           name of a bus system, i.e. the way the CPU talks to the other stuff
630           inside your box.  Other bus systems are PCI, EISA, MicroChannel
631           (MCA) or VESA.  ISA is an older system, now being displaced by PCI;
632           newer boards don't support it.  If you have ISA, say Y, otherwise N.
633
634 config EISA
635         bool
636         ---help---
637           The Extended Industry Standard Architecture (EISA) bus was
638           developed as an open alternative to the IBM MicroChannel bus.
639
640           The EISA bus provided some of the features of the IBM MicroChannel
641           bus while maintaining backward compatibility with cards made for
642           the older ISA bus.  The EISA bus saw limited use between 1988 and
643           1995 when it was made obsolete by the PCI bus.
644
645           Say Y here if you are building a kernel for an EISA-based machine.
646
647           Otherwise, say N.
648
649 config MCA
650         bool
651         help
652           MicroChannel Architecture is found in some IBM PS/2 machines and
653           laptops.  It is a bus system similar to PCI or ISA. See
654           <file:Documentation/mca.txt> (and especially the web page given
655           there) before attempting to build an MCA bus kernel.
656
657 config SBUS
658         bool
659
660 config SUPERHYWAY
661         tristate "SuperHyway Bus support"
662         depends on CPU_SUBTYPE_SH4_202
663
664 config CF_ENABLER
665         bool "Compact Flash Enabler support"
666         depends on SOLUTION_ENGINE || SH_SH03
667         ---help---
668           Compact Flash is a small, removable mass storage device introduced
669           in 1994 originally as a PCMCIA device.  If you say `Y' here, you
670           compile in support for Compact Flash devices directly connected to
671           a SuperH processor.  A Compact Flash FAQ is available at
672           <http://www.compactflash.org/faqs/faq.htm>.
673
674           If your board has "Directly Connected" CompactFlash at area 5 or 6,
675           you may want to enable this option.  Then, you can use CF as
676           primary IDE drive (only tested for SanDisk).
677
678           If in doubt, select 'N'.
679
680 choice
681         prompt "Compact Flash Connection Area"
682         depends on CF_ENABLER
683         default CF_AREA6
684
685 config CF_AREA5
686         bool "Area5"
687         help
688           If your board has "Directly Connected" CompactFlash, You should
689           select the area where your CF is connected to.
690
691           - "Area5" if CompactFlash is connected to Area 5 (0x14000000)
692           - "Area6" if it is connected to Area 6 (0x18000000)
693
694           "Area6" will work for most boards.
695
696 config CF_AREA6
697         bool "Area6"
698
699 endchoice
700
701 config CF_BASE_ADDR
702         hex
703         depends on CF_ENABLER
704         default "0xb8000000" if CF_AREA6
705         default "0xb4000000" if CF_AREA5
706
707 source "arch/sh/drivers/pci/Kconfig"
708
709 source "drivers/pci/Kconfig"
710
711 source "drivers/pcmcia/Kconfig"
712
713 source "drivers/pci/hotplug/Kconfig"
714
715 endmenu
716
717 menu "Executable file formats"
718
719 source "fs/Kconfig.binfmt"
720
721 endmenu
722
723 menu "Power management options (EXPERIMENTAL)"
724 depends on EXPERIMENTAL && SYS_SUPPORTS_PM
725
726 source kernel/power/Kconfig
727
728 endmenu
729
730 source "net/Kconfig"
731
732 source "drivers/Kconfig"
733
734 source "fs/Kconfig"
735
736 source "arch/sh/oprofile/Kconfig"
737
738 source "arch/sh/Kconfig.debug"
739
740 source "security/Kconfig"
741
742 source "crypto/Kconfig"
743
744 source "lib/Kconfig"