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