sh: add SH_CLK_MD Kconfig default.
[firefly-linux-kernel-4.4.55.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         default 0
485         depends on CPU_SUBTYPE_SH7619 || CPU_SUBTYPE_SH7206
486         help
487           MD2 - MD0 pin setting.
488
489 menu "CPU Frequency scaling"
490
491 source "drivers/cpufreq/Kconfig"
492
493 config SH_CPU_FREQ
494         tristate "SuperH CPU Frequency driver"
495         depends on CPU_FREQ
496         select CPU_FREQ_TABLE
497         help
498           This adds the cpufreq driver for SuperH. At present, only
499           the SH-4 is supported.
500
501           For details, take a look at <file:Documentation/cpu-freq>.
502
503           If unsure, say N.
504
505 endmenu
506
507 source "arch/sh/drivers/dma/Kconfig"
508
509 source "arch/sh/cchips/Kconfig"
510
511 config HEARTBEAT
512         bool "Heartbeat LED"
513         depends on SH_MPC1211 || SH_SH03 || \
514                    SH_BIGSUR || SOLUTION_ENGINE || \
515                    SH_RTS7751R2D || SH_SH4202_MICRODEV || SH_LANDISK
516         help
517           Use the power-on LED on your machine as a load meter.  The exact
518           behavior is platform-dependent, but normally the flash frequency is
519           a hyperbolic function of the 5-minute load average.
520
521 source "arch/sh/drivers/Kconfig"
522
523 endmenu
524
525 config ISA_DMA_API
526         bool
527         depends on SH_MPC1211
528         default y
529
530 menu "Kernel features"
531
532 source kernel/Kconfig.hz
533
534 config KEXEC
535         bool "kexec system call (EXPERIMENTAL)"
536         depends on EXPERIMENTAL
537         help
538           kexec is a system call that implements the ability to shutdown your
539           current kernel, and to start another kernel.  It is like a reboot
540           but it is independent of the system firmware.  And like a reboot
541           you can start any kernel with it, not just Linux.
542
543           The name comes from the similarity to the exec system call.
544
545           It is an ongoing process to be certain the hardware in a machine
546           is properly shutdown, so do not be surprised if this code does not
547           initially work for you.  It may help to enable device hotplugging
548           support.  As of this writing the exact hardware interface is
549           strongly in flux, so no good recommendation can be made.
550
551 config SMP
552         bool "Symmetric multi-processing support"
553         ---help---
554           This enables support for systems with more than one CPU. If you have
555           a system with only one CPU, like most personal computers, say N. If
556           you have a system with more than one CPU, say Y.
557
558           If you say N here, the kernel will run on single and multiprocessor
559           machines, but will use only one CPU of a multiprocessor machine. If
560           you say Y here, the kernel will run on many, but not all,
561           singleprocessor machines. On a singleprocessor machine, the kernel
562           will run faster if you say N here.
563
564           People using multiprocessor machines who say Y here should also say
565           Y to "Enhanced Real Time Clock Support", below.
566
567           See also the <file:Documentation/smp.txt>,
568           <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available
569           at <http://www.tldp.org/docs.html#howto>.
570
571           If you don't know what to do here, say N.
572
573 config NR_CPUS
574         int "Maximum number of CPUs (2-32)"
575         range 2 32
576         depends on SMP
577         default "2"
578         help
579           This allows you to specify the maximum number of CPUs which this
580           kernel will support.  The maximum supported value is 32 and the
581           minimum value which makes sense is 2.
582
583           This is purely to save memory - each supported CPU adds
584           approximately eight kilobytes to the kernel image.
585
586 source "kernel/Kconfig.preempt"
587
588 config NODES_SHIFT
589         int
590         default "1"
591         depends on NEED_MULTIPLE_NODES
592
593 endmenu
594
595 menu "Boot options"
596
597 config ZERO_PAGE_OFFSET
598         hex "Zero page offset"
599         default "0x00004000" if SH_MPC1211 || SH_SH03
600         default "0x00010000" if PAGE_SIZE_64KB
601         default "0x00002000" if PAGE_SIZE_8KB
602         default "0x00001000"
603         help
604           This sets the default offset of zero page.
605
606 config BOOT_LINK_OFFSET
607         hex "Link address offset for booting"
608         default "0x00800000"
609         help
610           This option allows you to set the link address offset of the zImage.
611           This can be useful if you are on a board which has a small amount of
612           memory.
613
614 config UBC_WAKEUP
615         bool "Wakeup UBC on startup"
616         help
617           Selecting this option will wakeup the User Break Controller (UBC) on
618           startup. Although the UBC is left in an awake state when the processor
619           comes up, some boot loaders misbehave by putting the UBC to sleep in a
620           power saving state, which causes issues with things like ptrace().
621
622           If unsure, say N.
623
624 config CMDLINE_BOOL
625         bool "Default bootloader kernel arguments"
626
627 config CMDLINE
628         string "Initial kernel command string"
629         depends on CMDLINE_BOOL
630         default "console=ttySC1,115200"
631
632 endmenu
633
634 menu "Bus options"
635
636 # Even on SuperH devices which don't have an ISA bus,
637 # this variable helps the PCMCIA modules handle
638 # IRQ requesting properly -- Greg Banks.
639 #
640 # Though we're generally not interested in it when
641 # we're not using PCMCIA, so we make it dependent on
642 # PCMCIA outright. -- PFM.
643 config ISA
644         bool
645         default y if PCMCIA
646         help
647           Find out whether you have ISA slots on your motherboard.  ISA is the
648           name of a bus system, i.e. the way the CPU talks to the other stuff
649           inside your box.  Other bus systems are PCI, EISA, MicroChannel
650           (MCA) or VESA.  ISA is an older system, now being displaced by PCI;
651           newer boards don't support it.  If you have ISA, say Y, otherwise N.
652
653 config EISA
654         bool
655         ---help---
656           The Extended Industry Standard Architecture (EISA) bus was
657           developed as an open alternative to the IBM MicroChannel bus.
658
659           The EISA bus provided some of the features of the IBM MicroChannel
660           bus while maintaining backward compatibility with cards made for
661           the older ISA bus.  The EISA bus saw limited use between 1988 and
662           1995 when it was made obsolete by the PCI bus.
663
664           Say Y here if you are building a kernel for an EISA-based machine.
665
666           Otherwise, say N.
667
668 config MCA
669         bool
670         help
671           MicroChannel Architecture is found in some IBM PS/2 machines and
672           laptops.  It is a bus system similar to PCI or ISA. See
673           <file:Documentation/mca.txt> (and especially the web page given
674           there) before attempting to build an MCA bus kernel.
675
676 config SBUS
677         bool
678
679 config SUPERHYWAY
680         tristate "SuperHyway Bus support"
681         depends on CPU_SUBTYPE_SH4_202
682
683 source "arch/sh/drivers/pci/Kconfig"
684
685 source "drivers/pci/Kconfig"
686
687 source "drivers/pcmcia/Kconfig"
688
689 source "drivers/pci/hotplug/Kconfig"
690
691 endmenu
692
693 menu "Executable file formats"
694
695 source "fs/Kconfig.binfmt"
696
697 endmenu
698
699 menu "Power management options (EXPERIMENTAL)"
700 depends on EXPERIMENTAL
701
702 source kernel/power/Kconfig
703
704 endmenu
705
706 source "net/Kconfig"
707
708 source "drivers/Kconfig"
709
710 source "fs/Kconfig"
711
712 source "arch/sh/oprofile/Kconfig"
713
714 source "arch/sh/Kconfig.debug"
715
716 source "security/Kconfig"
717
718 source "crypto/Kconfig"
719
720 source "lib/Kconfig"