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