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