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