sh: Restrict DSP support to specific CPUs.
[deliverable/linux.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 depends on CPU_HAS_DSP
138 default y
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_MASKREG_IRQ
176 bool
177
178 config CPU_HAS_INTC_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 config CPU_HAS_DSP
203 bool
204
205 endmenu
206
207 menu "Board support"
208
209 config SOLUTION_ENGINE
210 bool
211
212 config SH_SOLUTION_ENGINE
213 bool "SolutionEngine"
214 select SOLUTION_ENGINE
215 select CPU_HAS_IPR_IRQ
216 depends on CPU_SUBTYPE_SH7709 || CPU_SUBTYPE_SH7750
217 help
218 Select SolutionEngine if configuring for a Hitachi SH7709
219 or SH7750 evaluation board.
220
221 config SH_7206_SOLUTION_ENGINE
222 bool "SolutionEngine7206"
223 select SOLUTION_ENGINE
224 depends on CPU_SUBTYPE_SH7206
225 help
226 Select 7206 SolutionEngine if configuring for a Hitachi SH7206
227 evaluation board.
228
229 config SH_7619_SOLUTION_ENGINE
230 bool "SolutionEngine7619"
231 select SOLUTION_ENGINE
232 depends on CPU_SUBTYPE_SH7619
233 help
234 Select 7619 SolutionEngine if configuring for a Hitachi SH7619
235 evaluation board.
236
237 config SH_7722_SOLUTION_ENGINE
238 bool "SolutionEngine7722"
239 select SOLUTION_ENGINE
240 depends on CPU_SUBTYPE_SH7722
241 help
242 Select 7722 SolutionEngine if configuring for a Hitachi SH772
243 evaluation board.
244
245 config SH_7751_SOLUTION_ENGINE
246 bool "SolutionEngine7751"
247 select SOLUTION_ENGINE
248 select CPU_HAS_IPR_IRQ
249 depends on CPU_SUBTYPE_SH7751
250 help
251 Select 7751 SolutionEngine if configuring for a Hitachi SH7751
252 evaluation board.
253
254 config SH_7780_SOLUTION_ENGINE
255 bool "SolutionEngine7780"
256 select SOLUTION_ENGINE
257 select SYS_SUPPORTS_PCI
258 select CPU_HAS_INTC2_IRQ
259 depends on CPU_SUBTYPE_SH7780
260 help
261 Select 7780 SolutionEngine if configuring for a Renesas SH7780
262 evaluation board.
263
264 config SH_7300_SOLUTION_ENGINE
265 bool "SolutionEngine7300"
266 select SOLUTION_ENGINE
267 depends on CPU_SUBTYPE_SH7300
268 help
269 Select 7300 SolutionEngine if configuring for a Hitachi
270 SH7300(SH-Mobile V) evaluation board.
271
272 config SH_7343_SOLUTION_ENGINE
273 bool "SolutionEngine7343"
274 select SOLUTION_ENGINE
275 depends on CPU_SUBTYPE_SH7343
276 help
277 Select 7343 SolutionEngine if configuring for a Hitachi
278 SH7343 (SH-Mobile 3AS) evaluation board.
279
280 config SH_7751_SYSTEMH
281 bool "SystemH7751R"
282 depends on CPU_SUBTYPE_SH7751R
283 help
284 Select SystemH if you are configuring for a Renesas SystemH
285 7751R evaluation board.
286
287 config SH_HP6XX
288 bool "HP6XX"
289 select SYS_SUPPORTS_APM_EMULATION
290 select HD6446X_SERIES
291 depends on CPU_SUBTYPE_SH7709
292 help
293 Select HP6XX if configuring for a HP jornada HP6xx.
294 More information (hardware only) at
295 <http://www.hp.com/jornada/>.
296
297 config SH_DREAMCAST
298 bool "Dreamcast"
299 select SYS_SUPPORTS_PCI
300 depends on CPU_SUBTYPE_SH7091
301 help
302 Select Dreamcast if configuring for a SEGA Dreamcast.
303 More information at
304 <http://www.m17n.org/linux-sh/dreamcast/>. There is a
305 Dreamcast project is at <http://linuxdc.sourceforge.net/>.
306
307 config SH_MPC1211
308 bool "Interface MPC1211"
309 depends on CPU_SUBTYPE_SH7751 && BROKEN
310 help
311 CTP/PCI-SH02 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_SH03
316 bool "Interface CTP/PCI-SH03"
317 depends on CPU_SUBTYPE_SH7751 && BROKEN
318 select CPU_HAS_IPR_IRQ
319 select SYS_SUPPORTS_PCI
320 help
321 CTP/PCI-SH03 is a CPU module computer that is produced
322 by Interface Corporation.
323 More information at <http://www.interface.co.jp>
324
325 config SH_SECUREEDGE5410
326 bool "SecureEdge5410"
327 depends on CPU_SUBTYPE_SH7751R
328 select CPU_HAS_IPR_IRQ
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 CPU_HAS_IPR_IRQ
384 select SYS_SUPPORTS_PCI
385 help
386 Select Titan if you are configuring for a Nimble Microsystems
387 NetEngine NP51R.
388
389 config SH_SHMIN
390 bool "SHMIN"
391 depends on CPU_SUBTYPE_SH7706
392 select CPU_HAS_IPR_IRQ
393 help
394 Select SHMIN if configuring for the SHMIN board.
395
396 config SH_LBOX_RE2
397 bool "L-BOX RE2"
398 depends on CPU_SUBTYPE_SH7751R
399 select SYS_SUPPORTS_PCI
400 help
401 Select L-BOX RE2 if configuring for the NTT COMWARE L-BOX RE2.
402
403 endmenu
404
405 source "arch/sh/boards/renesas/hs7751rvoip/Kconfig"
406 source "arch/sh/boards/renesas/rts7751r2d/Kconfig"
407 source "arch/sh/boards/renesas/r7780rp/Kconfig"
408
409 menu "Timer and clock configuration"
410
411 config SH_TMU
412 bool "TMU timer support"
413 depends on CPU_SH3 || CPU_SH4
414 select GENERIC_TIME
415 select GENERIC_CLOCKEVENTS
416 default y
417 help
418 This enables the use of the TMU as the system timer.
419
420 config SH_CMT
421 bool "CMT timer support"
422 depends on CPU_SH2
423 default y
424 help
425 This enables the use of the CMT as the system timer.
426
427 config SH_MTU2
428 bool "MTU2 timer support"
429 depends on CPU_SH2A
430 default n
431 help
432 This enables the use of the MTU2 as the system timer.
433
434 config SH_TIMER_IRQ
435 int
436 default "28" if CPU_SUBTYPE_SH7780 || CPU_SUBTYPE_SH7785
437 default "86" if CPU_SUBTYPE_SH7619
438 default "140" if CPU_SUBTYPE_SH7206
439 default "16"
440
441 config SH_PCLK_FREQ
442 int "Peripheral clock frequency (in Hz)"
443 default "27000000" if CPU_SUBTYPE_SH7343
444 default "31250000" if CPU_SUBTYPE_SH7619
445 default "32000000" if CPU_SUBTYPE_SH7722
446 default "33333333" if CPU_SUBTYPE_SH7300 || CPU_SUBTYPE_SH7770 || \
447 CPU_SUBTYPE_SH7760 || CPU_SUBTYPE_SH7705 || \
448 CPU_SUBTYPE_SH7206
449 default "60000000" if CPU_SUBTYPE_SH7751 || CPU_SUBTYPE_SH7751R
450 default "66000000" if CPU_SUBTYPE_SH4_202
451 default "50000000"
452 help
453 This option is used to specify the peripheral clock frequency.
454 This is necessary for determining the reference clock value on
455 platforms lacking an RTC.
456
457 config SH_CLK_MD
458 int "CPU Mode Pin Setting"
459 depends on CPU_SUBTYPE_SH7619 || CPU_SUBTYPE_SH7206
460 default 6 if CPU_SUBTYPE_SH7206
461 default 5 if CPU_SUBTYPE_SH7619
462 default 0
463 help
464 MD2 - MD0 pin setting.
465
466 source "kernel/time/Kconfig"
467
468 endmenu
469
470 menu "CPU Frequency scaling"
471
472 source "drivers/cpufreq/Kconfig"
473
474 config SH_CPU_FREQ
475 tristate "SuperH CPU Frequency driver"
476 depends on CPU_FREQ
477 select CPU_FREQ_TABLE
478 help
479 This adds the cpufreq driver for SuperH. At present, only
480 the SH-4 is supported.
481
482 For details, take a look at <file:Documentation/cpu-freq>.
483
484 If unsure, say N.
485
486 endmenu
487
488 source "arch/sh/drivers/Kconfig"
489
490 endmenu
491
492 config ISA_DMA_API
493 bool
494 depends on SH_MPC1211
495 default y
496
497 menu "Kernel features"
498
499 source kernel/Kconfig.hz
500
501 config KEXEC
502 bool "kexec system call (EXPERIMENTAL)"
503 depends on EXPERIMENTAL
504 help
505 kexec is a system call that implements the ability to shutdown your
506 current kernel, and to start another kernel. It is like a reboot
507 but it is independent of the system firmware. And like a reboot
508 you can start any kernel with it, not just Linux.
509
510 The name comes from the similarity to the exec system call.
511
512 It is an ongoing process to be certain the hardware in a machine
513 is properly shutdown, so do not be surprised if this code does not
514 initially work for you. It may help to enable device hotplugging
515 support. As of this writing the exact hardware interface is
516 strongly in flux, so no good recommendation can be made.
517
518 config CRASH_DUMP
519 bool "kernel crash dumps (EXPERIMENTAL)"
520 depends on EXPERIMENTAL
521 help
522 Generate crash dump after being started by kexec.
523 This should be normally only set in special crash dump kernels
524 which are loaded in the main kernel with kexec-tools into
525 a specially reserved region and then later executed after
526 a crash by kdump/kexec. The crash dump kernel must be compiled
527 to a memory address not used by the main kernel using
528 MEMORY_START.
529
530 For more details see Documentation/kdump/kdump.txt
531
532 config SMP
533 bool "Symmetric multi-processing support"
534 depends on SYS_SUPPORTS_SMP
535 ---help---
536 This enables support for systems with more than one CPU. If you have
537 a system with only one CPU, like most personal computers, say N. If
538 you have a system with more than one CPU, say Y.
539
540 If you say N here, the kernel will run on single and multiprocessor
541 machines, but will use only one CPU of a multiprocessor machine. If
542 you say Y here, the kernel will run on many, but not all,
543 singleprocessor machines. On a singleprocessor machine, the kernel
544 will run faster if you say N here.
545
546 People using multiprocessor machines who say Y here should also say
547 Y to "Enhanced Real Time Clock Support", below.
548
549 See also the <file:Documentation/smp.txt>,
550 <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available
551 at <http://www.tldp.org/docs.html#howto>.
552
553 If you don't know what to do here, say N.
554
555 config NR_CPUS
556 int "Maximum number of CPUs (2-32)"
557 range 2 32
558 depends on SMP
559 default "4" if CPU_SHX3
560 default "2"
561 help
562 This allows you to specify the maximum number of CPUs which this
563 kernel will support. The maximum supported value is 32 and the
564 minimum value which makes sense is 2.
565
566 This is purely to save memory - each supported CPU adds
567 approximately eight kilobytes to the kernel image.
568
569 source "kernel/Kconfig.preempt"
570
571 config NODES_SHIFT
572 int
573 default "1"
574 depends on NEED_MULTIPLE_NODES
575
576 endmenu
577
578 menu "Boot options"
579
580 config ZERO_PAGE_OFFSET
581 hex "Zero page offset"
582 default "0x00004000" if SH_MPC1211 || SH_SH03
583 default "0x00010000" if PAGE_SIZE_64KB
584 default "0x00002000" if PAGE_SIZE_8KB
585 default "0x00001000"
586 help
587 This sets the default offset of zero page.
588
589 config BOOT_LINK_OFFSET
590 hex "Link address offset for booting"
591 default "0x00800000"
592 help
593 This option allows you to set the link address offset of the zImage.
594 This can be useful if you are on a board which has a small amount of
595 memory.
596
597 config UBC_WAKEUP
598 bool "Wakeup UBC on startup"
599 depends on CPU_SH4
600 help
601 Selecting this option will wakeup the User Break Controller (UBC) on
602 startup. Although the UBC is left in an awake state when the processor
603 comes up, some boot loaders misbehave by putting the UBC to sleep in a
604 power saving state, which causes issues with things like ptrace().
605
606 If unsure, say N.
607
608 config CMDLINE_BOOL
609 bool "Default bootloader kernel arguments"
610
611 config CMDLINE
612 string "Initial kernel command string"
613 depends on CMDLINE_BOOL
614 default "console=ttySC1,115200"
615
616 endmenu
617
618 menu "Bus options"
619
620 # Even on SuperH devices which don't have an ISA bus,
621 # this variable helps the PCMCIA modules handle
622 # IRQ requesting properly -- Greg Banks.
623 #
624 # Though we're generally not interested in it when
625 # we're not using PCMCIA, so we make it dependent on
626 # PCMCIA outright. -- PFM.
627 config ISA
628 def_bool y
629 depends on PCMCIA && HD6446X_SERIES
630 help
631 Find out whether you have ISA slots on your motherboard. ISA is the
632 name of a bus system, i.e. the way the CPU talks to the other stuff
633 inside your box. Other bus systems are PCI, EISA, MicroChannel
634 (MCA) or VESA. ISA is an older system, now being displaced by PCI;
635 newer boards don't support it. If you have ISA, say Y, otherwise N.
636
637 config EISA
638 bool
639 ---help---
640 The Extended Industry Standard Architecture (EISA) bus was
641 developed as an open alternative to the IBM MicroChannel bus.
642
643 The EISA bus provided some of the features of the IBM MicroChannel
644 bus while maintaining backward compatibility with cards made for
645 the older ISA bus. The EISA bus saw limited use between 1988 and
646 1995 when it was made obsolete by the PCI bus.
647
648 Say Y here if you are building a kernel for an EISA-based machine.
649
650 Otherwise, say N.
651
652 config MCA
653 bool
654 help
655 MicroChannel Architecture is found in some IBM PS/2 machines and
656 laptops. It is a bus system similar to PCI or ISA. See
657 <file:Documentation/mca.txt> (and especially the web page given
658 there) before attempting to build an MCA bus kernel.
659
660 config SBUS
661 bool
662
663 config SUPERHYWAY
664 tristate "SuperHyway Bus support"
665 depends on CPU_SUBTYPE_SH4_202
666
667 config CF_ENABLER
668 bool "Compact Flash Enabler support"
669 depends on SOLUTION_ENGINE || SH_SH03
670 ---help---
671 Compact Flash is a small, removable mass storage device introduced
672 in 1994 originally as a PCMCIA device. If you say `Y' here, you
673 compile in support for Compact Flash devices directly connected to
674 a SuperH processor. A Compact Flash FAQ is available at
675 <http://www.compactflash.org/faqs/faq.htm>.
676
677 If your board has "Directly Connected" CompactFlash at area 5 or 6,
678 you may want to enable this option. Then, you can use CF as
679 primary IDE drive (only tested for SanDisk).
680
681 If in doubt, select 'N'.
682
683 choice
684 prompt "Compact Flash Connection Area"
685 depends on CF_ENABLER
686 default CF_AREA6
687
688 config CF_AREA5
689 bool "Area5"
690 help
691 If your board has "Directly Connected" CompactFlash, You should
692 select the area where your CF is connected to.
693
694 - "Area5" if CompactFlash is connected to Area 5 (0x14000000)
695 - "Area6" if it is connected to Area 6 (0x18000000)
696
697 "Area6" will work for most boards.
698
699 config CF_AREA6
700 bool "Area6"
701
702 endchoice
703
704 config CF_BASE_ADDR
705 hex
706 depends on CF_ENABLER
707 default "0xb8000000" if CF_AREA6
708 default "0xb4000000" if CF_AREA5
709
710 source "arch/sh/drivers/pci/Kconfig"
711
712 source "drivers/pci/Kconfig"
713
714 source "drivers/pcmcia/Kconfig"
715
716 source "drivers/pci/hotplug/Kconfig"
717
718 endmenu
719
720 menu "Executable file formats"
721
722 source "fs/Kconfig.binfmt"
723
724 endmenu
725
726 menu "Power management options (EXPERIMENTAL)"
727 depends on EXPERIMENTAL && SYS_SUPPORTS_PM
728
729 source kernel/power/Kconfig
730
731 endmenu
732
733 source "net/Kconfig"
734
735 source "drivers/Kconfig"
736
737 source "fs/Kconfig"
738
739 source "arch/sh/oprofile/Kconfig"
740
741 source "arch/sh/Kconfig.debug"
742
743 source "security/Kconfig"
744
745 source "crypto/Kconfig"
746
747 source "lib/Kconfig"
This page took 0.109031 seconds and 6 git commands to generate.