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