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