xref: /linux/arch/sh/Kconfig (revision cbe9da029d9cc4fff59d559789885079a84a0af8)
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	def_bool y
10	select EMBEDDED
11	select HAVE_CLK
12	select HAVE_IDE
13	select HAVE_OPROFILE
14	help
15	  The SuperH is a RISC processor targeted for use in embedded systems
16	  and consumer electronics; it was also used in the Sega Dreamcast
17	  gaming console.  The SuperH port has a home page at
18	  <http://www.linux-sh.org/>.
19
20config SUPERH32
21	def_bool !SUPERH64
22
23config SUPERH64
24	def_bool y if CPU_SH5
25
26config RWSEM_GENERIC_SPINLOCK
27	def_bool y
28
29config RWSEM_XCHGADD_ALGORITHM
30	bool
31
32config GENERIC_BUG
33	def_bool y
34	depends on BUG && SUPERH32
35
36config GENERIC_FIND_NEXT_BIT
37	def_bool y
38
39config GENERIC_HWEIGHT
40	def_bool y
41
42config GENERIC_HARDIRQS
43	def_bool y
44
45config GENERIC_IRQ_PROBE
46	def_bool y
47
48config GENERIC_CALIBRATE_DELAY
49	def_bool y
50
51config GENERIC_IOMAP
52	bool
53
54config GENERIC_TIME
55	def_bool n
56
57config GENERIC_CLOCKEVENTS
58	def_bool n
59
60config SYS_SUPPORTS_PM
61	bool
62
63config SYS_SUPPORTS_APM_EMULATION
64	bool
65	select SYS_SUPPORTS_PM
66
67config SYS_SUPPORTS_SMP
68	bool
69
70config SYS_SUPPORTS_NUMA
71	bool
72
73config SYS_SUPPORTS_PCI
74	bool
75
76config STACKTRACE_SUPPORT
77	def_bool y
78
79config LOCKDEP_SUPPORT
80	def_bool y
81
82config ARCH_HAS_ILOG2_U32
83	def_bool n
84
85config ARCH_HAS_ILOG2_U64
86	def_bool n
87
88config ARCH_NO_VIRT_TO_BUS
89	def_bool y
90
91config ARCH_SUPPORTS_AOUT
92	def_bool y
93
94config IO_TRAPPED
95	bool
96
97source "init/Kconfig"
98
99menu "System type"
100
101#
102# Processor families
103#
104config CPU_SH2
105	bool
106
107config CPU_SH2A
108	bool
109	select CPU_SH2
110
111config CPU_SH3
112	bool
113	select CPU_HAS_INTEVT
114	select CPU_HAS_SR_RB
115
116config CPU_SH4
117	bool
118	select CPU_HAS_INTEVT
119	select CPU_HAS_SR_RB
120	select CPU_HAS_PTEA if !CPU_SH4A || CPU_SHX2
121	select CPU_HAS_FPU if !CPU_SH4AL_DSP
122
123config CPU_SH4A
124	bool
125	select CPU_SH4
126
127config CPU_SH4AL_DSP
128	bool
129	select CPU_SH4A
130	select CPU_HAS_DSP
131
132config CPU_SH5
133	bool
134	select CPU_HAS_FPU
135
136config CPU_SHX2
137	bool
138
139config CPU_SHX3
140	bool
141
142choice
143	prompt "Processor sub-type selection"
144
145#
146# Processor subtypes
147#
148
149# SH-2 Processor Support
150
151config CPU_SUBTYPE_SH7619
152	bool "Support SH7619 processor"
153	select CPU_SH2
154
155# SH-2A Processor Support
156
157config CPU_SUBTYPE_SH7203
158	bool "Support SH7203 processor"
159	select CPU_SH2A
160	select CPU_HAS_FPU
161
162config CPU_SUBTYPE_SH7206
163	bool "Support SH7206 processor"
164	select CPU_SH2A
165
166config CPU_SUBTYPE_SH7263
167	bool "Support SH7263 processor"
168	select CPU_SH2A
169	select CPU_HAS_FPU
170
171config CPU_SUBTYPE_MXG
172	bool "Support MX-G processor"
173	select CPU_SH2A
174	help
175	  Select MX-G if running on an R8A03022BG part.
176
177# SH-3 Processor Support
178
179config CPU_SUBTYPE_SH7705
180	bool "Support SH7705 processor"
181	select CPU_SH3
182
183config CPU_SUBTYPE_SH7706
184	bool "Support SH7706 processor"
185	select CPU_SH3
186	help
187	  Select SH7706 if you have a 133 Mhz SH-3 HD6417706 CPU.
188
189config CPU_SUBTYPE_SH7707
190	bool "Support SH7707 processor"
191	select CPU_SH3
192	help
193	  Select SH7707 if you have a  60 Mhz SH-3 HD6417707 CPU.
194
195config CPU_SUBTYPE_SH7708
196	bool "Support SH7708 processor"
197	select CPU_SH3
198	help
199	  Select SH7708 if you have a  60 Mhz SH-3 HD6417708S or
200	  if you have a 100 Mhz SH-3 HD6417708R CPU.
201
202config CPU_SUBTYPE_SH7709
203	bool "Support SH7709 processor"
204	select CPU_SH3
205	help
206	  Select SH7709 if you have a  80 Mhz SH-3 HD6417709 CPU.
207
208config CPU_SUBTYPE_SH7710
209	bool "Support SH7710 processor"
210	select CPU_SH3
211	select CPU_HAS_DSP
212	help
213	  Select SH7710 if you have a SH3-DSP SH7710 CPU.
214
215config CPU_SUBTYPE_SH7712
216	bool "Support SH7712 processor"
217	select CPU_SH3
218	select CPU_HAS_DSP
219	help
220	  Select SH7712 if you have a SH3-DSP SH7712 CPU.
221
222config CPU_SUBTYPE_SH7720
223	bool "Support SH7720 processor"
224	select CPU_SH3
225	select CPU_HAS_DSP
226	help
227	  Select SH7720 if you have a SH3-DSP SH7720 CPU.
228
229config CPU_SUBTYPE_SH7721
230	bool "Support SH7721 processor"
231	select CPU_SH3
232	select CPU_HAS_DSP
233	help
234	  Select SH7721 if you have a SH3-DSP SH7721 CPU.
235
236# SH-4 Processor Support
237
238config CPU_SUBTYPE_SH7750
239	bool "Support SH7750 processor"
240	select CPU_SH4
241	help
242	  Select SH7750 if you have a 200 Mhz SH-4 HD6417750 CPU.
243
244config CPU_SUBTYPE_SH7091
245	bool "Support SH7091 processor"
246	select CPU_SH4
247	help
248	  Select SH7091 if you have an SH-4 based Sega device (such as
249	  the Dreamcast, Naomi, and Naomi 2).
250
251config CPU_SUBTYPE_SH7750R
252	bool "Support SH7750R processor"
253	select CPU_SH4
254
255config CPU_SUBTYPE_SH7750S
256	bool "Support SH7750S processor"
257	select CPU_SH4
258
259config CPU_SUBTYPE_SH7751
260	bool "Support SH7751 processor"
261	select CPU_SH4
262	help
263	  Select SH7751 if you have a 166 Mhz SH-4 HD6417751 CPU,
264	  or if you have a HD6417751R CPU.
265
266config CPU_SUBTYPE_SH7751R
267	bool "Support SH7751R processor"
268	select CPU_SH4
269
270config CPU_SUBTYPE_SH7760
271	bool "Support SH7760 processor"
272	select CPU_SH4
273
274config CPU_SUBTYPE_SH4_202
275	bool "Support SH4-202 processor"
276	select CPU_SH4
277
278# SH-4A Processor Support
279
280config CPU_SUBTYPE_SH7723
281	bool "Support SH7723 processor"
282	select CPU_SH4A
283	select CPU_SHX2
284	select ARCH_SPARSEMEM_ENABLE
285	help
286	  Select SH7723 if you have an SH-MobileR2 CPU.
287
288config CPU_SUBTYPE_SH7763
289	bool "Support SH7763 processor"
290	select CPU_SH4A
291	help
292	  Select SH7763 if you have a SH4A SH7763(R5S77631) CPU.
293
294config CPU_SUBTYPE_SH7770
295	bool "Support SH7770 processor"
296	select CPU_SH4A
297
298config CPU_SUBTYPE_SH7780
299	bool "Support SH7780 processor"
300	select CPU_SH4A
301
302config CPU_SUBTYPE_SH7785
303	bool "Support SH7785 processor"
304	select CPU_SH4A
305	select CPU_SHX2
306	select ARCH_SPARSEMEM_ENABLE
307	select SYS_SUPPORTS_NUMA
308
309config CPU_SUBTYPE_SHX3
310	bool "Support SH-X3 processor"
311	select CPU_SH4A
312	select CPU_SHX3
313	select ARCH_SPARSEMEM_ENABLE
314	select SYS_SUPPORTS_NUMA
315	select SYS_SUPPORTS_SMP
316
317# SH4AL-DSP Processor Support
318
319config CPU_SUBTYPE_SH7343
320	bool "Support SH7343 processor"
321	select CPU_SH4AL_DSP
322
323config CPU_SUBTYPE_SH7722
324	bool "Support SH7722 processor"
325	select CPU_SH4AL_DSP
326	select CPU_SHX2
327	select ARCH_SPARSEMEM_ENABLE
328	select SYS_SUPPORTS_NUMA
329
330config CPU_SUBTYPE_SH7366
331	bool "Support SH7366 processor"
332	select CPU_SH4AL_DSP
333	select CPU_SHX2
334	select ARCH_SPARSEMEM_ENABLE
335	select SYS_SUPPORTS_NUMA
336
337# SH-5 Processor Support
338
339config CPU_SUBTYPE_SH5_101
340	bool "Support SH5-101 processor"
341	select CPU_SH5
342
343config CPU_SUBTYPE_SH5_103
344	bool "Support SH5-103 processor"
345	select CPU_SH5
346
347endchoice
348
349source "arch/sh/mm/Kconfig"
350source "arch/sh/Kconfig.cpu"
351
352menu "Board support"
353
354config SOLUTION_ENGINE
355	bool
356
357config SH_SOLUTION_ENGINE
358	bool "SolutionEngine"
359	select SOLUTION_ENGINE
360	select CPU_HAS_IPR_IRQ
361	depends on CPU_SUBTYPE_SH7705 || CPU_SUBTYPE_SH7709 || CPU_SUBTYPE_SH7710 || \
362	  CPU_SUBTYPE_SH7712 || CPU_SUBTYPE_SH7750 || CPU_SUBTYPE_SH7750S || \
363	  CPU_SUBTYPE_SH7750R
364	help
365	  Select SolutionEngine if configuring for a Hitachi SH7705, SH7709,
366	  SH7710, SH7712, SH7750, SH7750S or SH7750R evaluation board.
367
368config SH_7206_SOLUTION_ENGINE
369	bool "SolutionEngine7206"
370	select SOLUTION_ENGINE
371	depends on CPU_SUBTYPE_SH7206
372	help
373	  Select 7206 SolutionEngine if configuring for a Hitachi SH7206
374	  evaluation board.
375
376config SH_7619_SOLUTION_ENGINE
377	bool "SolutionEngine7619"
378	select SOLUTION_ENGINE
379	depends on CPU_SUBTYPE_SH7619
380	help
381	  Select 7619 SolutionEngine if configuring for a Hitachi SH7619
382	  evaluation board.
383
384config SH_7721_SOLUTION_ENGINE
385	bool "SolutionEngine7721"
386	select SOLUTION_ENGINE
387	depends on CPU_SUBTYPE_SH7721
388	help
389	  Select 7721 SolutionEngine if configuring for a Hitachi SH7721
390	  evaluation board.
391
392config SH_7722_SOLUTION_ENGINE
393	bool "SolutionEngine7722"
394	select SOLUTION_ENGINE
395	depends on CPU_SUBTYPE_SH7722
396	help
397	  Select 7722 SolutionEngine if configuring for a Hitachi SH772
398	  evaluation board.
399
400config SH_7751_SOLUTION_ENGINE
401	bool "SolutionEngine7751"
402	select SOLUTION_ENGINE
403	select CPU_HAS_IPR_IRQ
404	depends on CPU_SUBTYPE_SH7751
405	help
406	  Select 7751 SolutionEngine if configuring for a Hitachi SH7751
407	  evaluation board.
408
409config SH_7780_SOLUTION_ENGINE
410	bool "SolutionEngine7780"
411	select SOLUTION_ENGINE
412	select SYS_SUPPORTS_PCI
413	depends on CPU_SUBTYPE_SH7780
414	help
415	  Select 7780 SolutionEngine if configuring for a Renesas SH7780
416	  evaluation board.
417
418config SH_7343_SOLUTION_ENGINE
419	bool "SolutionEngine7343"
420	select SOLUTION_ENGINE
421	depends on CPU_SUBTYPE_SH7343
422	help
423	  Select 7343 SolutionEngine if configuring for a Hitachi
424	  SH7343 (SH-Mobile 3AS) evaluation board.
425
426config SH_7751_SYSTEMH
427	bool "SystemH7751R"
428	depends on CPU_SUBTYPE_SH7751R
429	help
430	  Select SystemH if you are configuring for a Renesas SystemH
431	  7751R evaluation board.
432
433config SH_HP6XX
434	bool "HP6XX"
435	select SYS_SUPPORTS_APM_EMULATION
436	select HD6446X_SERIES
437	depends on CPU_SUBTYPE_SH7709
438	help
439	  Select HP6XX if configuring for a HP jornada HP6xx.
440	  More information (hardware only) at
441	  <http://www.hp.com/jornada/>.
442
443config SH_DREAMCAST
444	bool "Dreamcast"
445	select SYS_SUPPORTS_PCI
446	depends on CPU_SUBTYPE_SH7091
447	help
448	  Select Dreamcast if configuring for a SEGA Dreamcast.
449	  More information at <http://www.linux-sh.org>
450
451config SH_SH03
452	bool "Interface CTP/PCI-SH03"
453	depends on CPU_SUBTYPE_SH7751
454	select CPU_HAS_IPR_IRQ
455	select SYS_SUPPORTS_PCI
456	help
457	  CTP/PCI-SH03 is a CPU module computer that is produced
458	  by Interface Corporation.
459	  More information at <http://www.interface.co.jp>
460
461config SH_SECUREEDGE5410
462	bool "SecureEdge5410"
463	depends on CPU_SUBTYPE_SH7751R
464	select CPU_HAS_IPR_IRQ
465	select SYS_SUPPORTS_PCI
466	help
467	  Select SecureEdge5410 if configuring for a SnapGear SH board.
468	  This includes both the OEM SecureEdge products as well as the
469	  SME product line.
470
471config SH_RTS7751R2D
472	bool "RTS7751R2D"
473	depends on CPU_SUBTYPE_SH7751R
474	select SYS_SUPPORTS_PCI
475	select IO_TRAPPED
476	help
477	  Select RTS7751R2D if configuring for a Renesas Technology
478	  Sales SH-Graphics board.
479
480config SH_RSK7203
481	bool "RSK7203"
482	depends on CPU_SUBTYPE_SH7203
483
484config SH_SDK7780
485	bool "SDK7780R3"
486	depends on CPU_SUBTYPE_SH7780
487	select SYS_SUPPORTS_PCI
488	help
489	  Select SDK7780 if configuring for a Renesas SH7780 SDK7780R3
490	  evaluation board.
491
492config SH_HIGHLANDER
493	bool "Highlander"
494	depends on CPU_SUBTYPE_SH7780 || CPU_SUBTYPE_SH7785
495	select SYS_SUPPORTS_PCI
496	select IO_TRAPPED
497
498config SH_SH7785LCR
499	bool "SH7785LCR"
500	depends on CPU_SUBTYPE_SH7785
501	select SYS_SUPPORTS_PCI
502	select IO_TRAPPED
503
504config SH_SH7785LCR_29BIT_PHYSMAPS
505	bool "SH7785LCR 29bit physmaps"
506	depends on SH_SH7785LCR
507	default y
508	help
509	  This board has 2 physical memory maps. It can be changed with
510	  DIP switch(S2-5). If you set the DIP switch for S2-5 = ON,
511	  you can access all on-board device in 29bit address mode.
512
513config SH_MIGOR
514	bool "Migo-R"
515	depends on CPU_SUBTYPE_SH7722
516	help
517	  Select Migo-R if configuring for the SH7722 Migo-R platform
518          by Renesas System Solutions Asia Pte. Ltd.
519
520config SH_AP325RXA
521	bool "AP-325RXA"
522	depends on CPU_SUBTYPE_SH7723
523	help
524	  Renesas "AP-325RXA" support.
525	  Compatible with ALGO SYSTEM CO.,LTD. "AP-320A"
526
527config SH_SH7763RDP
528	bool "SH7763RDP"
529	depends on CPU_SUBTYPE_SH7763
530	help
531	  Select SH7763RDP if configuring for a Renesas SH7763
532	  evaluation board.
533
534config SH_EDOSK7705
535	bool "EDOSK7705"
536	depends on CPU_SUBTYPE_SH7705
537
538config SH_SH4202_MICRODEV
539	bool "SH4-202 MicroDev"
540	depends on CPU_SUBTYPE_SH4_202
541	help
542	  Select SH4-202 MicroDev if configuring for a SuperH MicroDev board
543	  with an SH4-202 CPU.
544
545config SH_LANDISK
546	bool "LANDISK"
547	depends on CPU_SUBTYPE_SH7751R
548	select SYS_SUPPORTS_PCI
549	help
550	  I-O DATA DEVICE, INC. "LANDISK Series" support.
551
552config SH_TITAN
553	bool "TITAN"
554	depends on CPU_SUBTYPE_SH7751R
555	select CPU_HAS_IPR_IRQ
556	select SYS_SUPPORTS_PCI
557	help
558	  Select Titan if you are configuring for a Nimble Microsystems
559	  NetEngine NP51R.
560
561config SH_SHMIN
562	bool "SHMIN"
563	depends on CPU_SUBTYPE_SH7706
564	select CPU_HAS_IPR_IRQ
565	help
566	  Select SHMIN if configuring for the SHMIN board.
567
568config SH_LBOX_RE2
569	bool "L-BOX RE2"
570	depends on CPU_SUBTYPE_SH7751R
571	select SYS_SUPPORTS_PCI
572	help
573	  Select L-BOX RE2 if configuring for the NTT COMWARE L-BOX RE2.
574
575config SH_X3PROTO
576	bool "SH-X3 Prototype board"
577	depends on CPU_SUBTYPE_SHX3
578
579config SH_MAGIC_PANEL_R2
580	bool "Magic Panel R2"
581	depends on CPU_SUBTYPE_SH7720
582	help
583	  Select Magic Panel R2 if configuring for Magic Panel R2.
584
585config SH_CAYMAN
586	bool "Hitachi Cayman"
587	depends on CPU_SUBTYPE_SH5_101 || CPU_SUBTYPE_SH5_103
588	select SYS_SUPPORTS_PCI
589
590endmenu
591
592source "arch/sh/boards/renesas/rts7751r2d/Kconfig"
593source "arch/sh/boards/renesas/r7780rp/Kconfig"
594source "arch/sh/boards/renesas/sdk7780/Kconfig"
595source "arch/sh/boards/magicpanelr2/Kconfig"
596
597menu "Timer and clock configuration"
598
599config SH_TMU
600	def_bool y
601	prompt "TMU timer support"
602	depends on CPU_SH3 || CPU_SH4
603	select GENERIC_TIME
604	select GENERIC_CLOCKEVENTS
605	help
606	  This enables the use of the TMU as the system timer.
607
608config SH_CMT
609	def_bool y
610	prompt "CMT timer support"
611	depends on CPU_SH2 && !CPU_SUBTYPE_MXG
612	help
613	  This enables the use of the CMT as the system timer.
614
615config SH_MTU2
616	def_bool n
617	prompt "MTU2 timer support"
618	depends on CPU_SH2A
619	help
620	  This enables the use of the MTU2 as the system timer.
621
622config SH_TIMER_IRQ
623	int
624	default "28" if CPU_SUBTYPE_SH7780 || CPU_SUBTYPE_SH7785 || \
625			CPU_SUBTYPE_SH7763
626	default "86" if CPU_SUBTYPE_SH7619
627	default "140" if CPU_SUBTYPE_SH7206
628	default "142" if CPU_SUBTYPE_SH7203
629	default "238" if CPU_SUBTYPE_MXG
630	default "16"
631
632config SH_PCLK_FREQ
633	int "Peripheral clock frequency (in Hz)"
634	default "27000000" if CPU_SUBTYPE_SH7343
635	default "31250000" if CPU_SUBTYPE_SH7619
636	default "32000000" if CPU_SUBTYPE_SH7722
637	default "33333333" if CPU_SUBTYPE_SH7770 || CPU_SUBTYPE_SH7723 || \
638			      CPU_SUBTYPE_SH7760 || CPU_SUBTYPE_SH7705 || \
639			      CPU_SUBTYPE_SH7203 || CPU_SUBTYPE_SH7206 || \
640			      CPU_SUBTYPE_SH7263 || CPU_SUBTYPE_MXG
641	default "60000000" if CPU_SUBTYPE_SH7751 || CPU_SUBTYPE_SH7751R
642	default "66000000" if CPU_SUBTYPE_SH4_202
643	default "50000000"
644	help
645	  This option is used to specify the peripheral clock frequency.
646	  This is necessary for determining the reference clock value on
647	  platforms lacking an RTC.
648
649config SH_CLK_MD
650	int "CPU Mode Pin Setting"
651	depends on CPU_SH2
652	default 6 if CPU_SUBTYPE_SH7206
653	default 5 if CPU_SUBTYPE_SH7619
654	default 0
655	help
656	  MD2 - MD0 pin setting.
657
658source "kernel/time/Kconfig"
659
660endmenu
661
662menu "CPU Frequency scaling"
663
664source "drivers/cpufreq/Kconfig"
665
666config SH_CPU_FREQ
667	tristate "SuperH CPU Frequency driver"
668	depends on CPU_FREQ
669	select CPU_FREQ_TABLE
670	help
671	  This adds the cpufreq driver for SuperH. At present, only
672	  the SH-4 is supported.
673
674	  For details, take a look at <file:Documentation/cpu-freq>.
675
676	  If unsure, say N.
677
678endmenu
679
680source "arch/sh/drivers/Kconfig"
681
682endmenu
683
684config ISA_DMA_API
685	bool
686
687menu "Kernel features"
688
689source kernel/Kconfig.hz
690
691config KEXEC
692	bool "kexec system call (EXPERIMENTAL)"
693	depends on SUPERH32 && EXPERIMENTAL
694	help
695	  kexec is a system call that implements the ability to shutdown your
696	  current kernel, and to start another kernel.  It is like a reboot
697	  but it is independent of the system firmware.  And like a reboot
698	  you can start any kernel with it, not just Linux.
699
700	  The name comes from the similarity to the exec system call.
701
702	  It is an ongoing process to be certain the hardware in a machine
703	  is properly shutdown, so do not be surprised if this code does not
704	  initially work for you.  It may help to enable device hotplugging
705	  support.  As of this writing the exact hardware interface is
706	  strongly in flux, so no good recommendation can be made.
707
708config CRASH_DUMP
709	bool "kernel crash dumps (EXPERIMENTAL)"
710	depends on SUPERH32 && EXPERIMENTAL
711	help
712	  Generate crash dump after being started by kexec.
713	  This should be normally only set in special crash dump kernels
714	  which are loaded in the main kernel with kexec-tools into
715	  a specially reserved region and then later executed after
716	  a crash by kdump/kexec. The crash dump kernel must be compiled
717	  to a memory address not used by the main kernel using
718	  MEMORY_START.
719
720	  For more details see Documentation/kdump/kdump.txt
721
722config SMP
723	bool "Symmetric multi-processing support"
724	depends on SYS_SUPPORTS_SMP
725	select USE_GENERIC_SMP_HELPERS
726	---help---
727	  This enables support for systems with more than one CPU. If you have
728	  a system with only one CPU, like most personal computers, say N. If
729	  you have a system with more than one CPU, say Y.
730
731	  If you say N here, the kernel will run on single and multiprocessor
732	  machines, but will use only one CPU of a multiprocessor machine. If
733	  you say Y here, the kernel will run on many, but not all,
734	  singleprocessor machines. On a singleprocessor machine, the kernel
735	  will run faster if you say N here.
736
737	  People using multiprocessor machines who say Y here should also say
738	  Y to "Enhanced Real Time Clock Support", below.
739
740	  See also <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO
741	  available at <http://www.tldp.org/docs.html#howto>.
742
743	  If you don't know what to do here, say N.
744
745config NR_CPUS
746	int "Maximum number of CPUs (2-32)"
747	range 2 32
748	depends on SMP
749	default "4" if CPU_SHX3
750	default "2"
751	help
752	  This allows you to specify the maximum number of CPUs which this
753	  kernel will support.  The maximum supported value is 32 and the
754	  minimum value which makes sense is 2.
755
756	  This is purely to save memory - each supported CPU adds
757	  approximately eight kilobytes to the kernel image.
758
759source "kernel/Kconfig.preempt"
760
761config GUSA
762	def_bool y
763	depends on !SMP && SUPERH32
764	help
765	  This enables support for gUSA (general UserSpace Atomicity).
766	  This is the default implementation for both UP and non-ll/sc
767	  CPUs, and is used by the libc, amongst others.
768
769	  For additional information, design information can be found
770	  in <http://lc.linux.or.jp/lc2002/papers/niibe0919p.pdf>.
771
772	  This should only be disabled for special cases where alternate
773	  atomicity implementations exist.
774
775config GUSA_RB
776	bool "Implement atomic operations by roll-back (gRB) (EXPERIMENTAL)"
777	depends on GUSA && CPU_SH3 || (CPU_SH4 && !CPU_SH4A)
778	help
779	  Enabling this option will allow the kernel to implement some
780	  atomic operations using a software implemention of load-locked/
781	  store-conditional (LLSC). On machines which do not have hardware
782	  LLSC, this should be more efficient than the other alternative of
783	  disabling insterrupts around the atomic sequence.
784
785endmenu
786
787menu "Boot options"
788
789config ZERO_PAGE_OFFSET
790	hex "Zero page offset"
791	default "0x00004000" if SH_SH03
792	default "0x00010000" if PAGE_SIZE_64KB
793	default "0x00002000" if PAGE_SIZE_8KB
794	default "0x00001000"
795	help
796	  This sets the default offset of zero page.
797
798config BOOT_LINK_OFFSET
799	hex "Link address offset for booting"
800	default "0x00800000"
801	help
802	  This option allows you to set the link address offset of the zImage.
803	  This can be useful if you are on a board which has a small amount of
804	  memory.
805
806config UBC_WAKEUP
807	bool "Wakeup UBC on startup"
808	depends on CPU_SH4 && !CPU_SH4A
809	help
810	  Selecting this option will wakeup the User Break Controller (UBC) on
811	  startup. Although the UBC is left in an awake state when the processor
812	  comes up, some boot loaders misbehave by putting the UBC to sleep in a
813	  power saving state, which causes issues with things like ptrace().
814
815	  If unsure, say N.
816
817config CMDLINE_BOOL
818	bool "Default bootloader kernel arguments"
819
820config CMDLINE
821	string "Initial kernel command string"
822	depends on CMDLINE_BOOL
823	default "console=ttySC1,115200"
824
825endmenu
826
827menu "Bus options"
828
829# Even on SuperH devices which don't have an ISA bus,
830# this variable helps the PCMCIA modules handle
831# IRQ requesting properly -- Greg Banks.
832#
833# Though we're generally not interested in it when
834# we're not using PCMCIA, so we make it dependent on
835# PCMCIA outright. -- PFM.
836config ISA
837	def_bool y
838	depends on PCMCIA && HD6446X_SERIES
839	help
840	  Find out whether you have ISA slots on your motherboard.  ISA is the
841	  name of a bus system, i.e. the way the CPU talks to the other stuff
842	  inside your box.  Other bus systems are PCI, EISA, MicroChannel
843	  (MCA) or VESA.  ISA is an older system, now being displaced by PCI;
844	  newer boards don't support it.  If you have ISA, say Y, otherwise N.
845
846config EISA
847	bool
848	---help---
849	  The Extended Industry Standard Architecture (EISA) bus was
850	  developed as an open alternative to the IBM MicroChannel bus.
851
852	  The EISA bus provided some of the features of the IBM MicroChannel
853	  bus while maintaining backward compatibility with cards made for
854	  the older ISA bus.  The EISA bus saw limited use between 1988 and
855	  1995 when it was made obsolete by the PCI bus.
856
857	  Say Y here if you are building a kernel for an EISA-based machine.
858
859	  Otherwise, say N.
860
861config MCA
862	bool
863	help
864	  MicroChannel Architecture is found in some IBM PS/2 machines and
865	  laptops.  It is a bus system similar to PCI or ISA. See
866	  <file:Documentation/mca.txt> (and especially the web page given
867	  there) before attempting to build an MCA bus kernel.
868
869config SBUS
870	bool
871
872config SUPERHYWAY
873	tristate "SuperHyway Bus support"
874	depends on CPU_SUBTYPE_SH4_202
875
876config MAPLE
877       bool "Maple Bus support"
878       depends on SH_DREAMCAST
879       help
880         The Maple Bus is SEGA's serial communication bus for peripherals
881         on the Dreamcast. Without this bus support you won't be able to
882         get your Dreamcast keyboard etc to work, so most users
883         probably want to say 'Y' here, unless you are only using the
884         Dreamcast with a serial line terminal or a remote network
885         connection.
886
887config CF_ENABLER
888	bool "Compact Flash Enabler support"
889	depends on SOLUTION_ENGINE || SH_SH03
890	---help---
891	  Compact Flash is a small, removable mass storage device introduced
892	  in 1994 originally as a PCMCIA device.  If you say `Y' here, you
893	  compile in support for Compact Flash devices directly connected to
894	  a SuperH processor.  A Compact Flash FAQ is available at
895	  <http://www.compactflash.org/faqs/faq.htm>.
896
897	  If your board has "Directly Connected" CompactFlash at area 5 or 6,
898	  you may want to enable this option.  Then, you can use CF as
899	  primary IDE drive (only tested for SanDisk).
900
901	  If in doubt, select 'N'.
902
903choice
904	prompt "Compact Flash Connection Area"
905	depends on CF_ENABLER
906	default CF_AREA6
907
908config CF_AREA5
909	bool "Area5"
910	help
911	  If your board has "Directly Connected" CompactFlash, You should
912	  select the area where your CF is connected to.
913
914	  - "Area5" if CompactFlash is connected to Area 5 (0x14000000)
915	  - "Area6" if it is connected to Area 6 (0x18000000)
916
917	  "Area6" will work for most boards.
918
919config CF_AREA6
920	bool "Area6"
921
922endchoice
923
924config CF_BASE_ADDR
925	hex
926	depends on CF_ENABLER
927	default "0xb8000000" if CF_AREA6
928	default "0xb4000000" if CF_AREA5
929
930source "arch/sh/drivers/pci/Kconfig"
931
932source "drivers/pci/Kconfig"
933
934source "drivers/pcmcia/Kconfig"
935
936source "drivers/pci/hotplug/Kconfig"
937
938endmenu
939
940menu "Executable file formats"
941
942source "fs/Kconfig.binfmt"
943
944endmenu
945
946menu "Power management options (EXPERIMENTAL)"
947depends on EXPERIMENTAL && SYS_SUPPORTS_PM
948
949config ARCH_SUSPEND_POSSIBLE
950	def_bool y
951	depends on !SMP
952
953source kernel/power/Kconfig
954
955endmenu
956
957source "net/Kconfig"
958
959source "drivers/Kconfig"
960
961source "fs/Kconfig"
962
963source "arch/sh/Kconfig.debug"
964
965source "security/Kconfig"
966
967source "crypto/Kconfig"
968
969source "lib/Kconfig"
970