xref: /openbmc/linux/arch/sh/Kconfig (revision 8152a74b)
1ea0e1a9aSPaul Mundt#
2ea0e1a9aSPaul Mundt# For a description of the syntax of this configuration file,
3ea0e1a9aSPaul Mundt# see Documentation/kbuild/kconfig-language.txt.
4ea0e1a9aSPaul Mundt#
5ea0e1a9aSPaul Mundt
6ea0e1a9aSPaul Mundtmainmenu "Linux/SuperH Kernel Configuration"
7ea0e1a9aSPaul Mundt
8ea0e1a9aSPaul Mundtconfig SUPERH
9ea0e1a9aSPaul Mundt	def_bool y
10ea0e1a9aSPaul Mundt	select EMBEDDED
119483a578SDavid Brownell	select HAVE_CLK
12ec7748b5SSam Ravnborg	select HAVE_IDE
13c601a51aSMatt Fleming	select HAVE_LMB
1442d4b839SMathieu Desnoyers	select HAVE_OPROFILE
159de90ac2SDmitry Baryshkov	select HAVE_GENERIC_DMA_COHERENT
1621944781SPaul Mundt	select HAVE_IOREMAP_PROT if MMU
17d7b01f78SPaul Mundt	select HAVE_ARCH_TRACEHOOK
18f802d969SPaul Mundt	select HAVE_DMA_API_DEBUG
1973c926beSPaul Mundt	select HAVE_DMA_ATTRS
20cdd6c482SIngo Molnar	select HAVE_PERF_EVENTS
2172f0c137SPaul Mundt	select PERF_USE_VMALLOC
22df8ce259SPaul Mundt	select HAVE_KERNEL_GZIP
2307e88e1bSPaul Mundt	select HAVE_KERNEL_BZIP2
2407e88e1bSPaul Mundt	select HAVE_KERNEL_LZMA
25a74f7e04SPaul Mundt	select HAVE_SYSCALL_TRACEPOINTS
266eac1af0SPaul Mundt	select RTC_LIB
27f01789c6SPaul Mundt	select GENERIC_ATOMIC64
28ea0e1a9aSPaul Mundt	help
29ea0e1a9aSPaul Mundt	  The SuperH is a RISC processor targeted for use in embedded systems
30ea0e1a9aSPaul Mundt	  and consumer electronics; it was also used in the Sega Dreamcast
31ea0e1a9aSPaul Mundt	  gaming console.  The SuperH port has a home page at
32ea0e1a9aSPaul Mundt	  <http://www.linux-sh.org/>.
33ea0e1a9aSPaul Mundt
34ea0e1a9aSPaul Mundtconfig SUPERH32
353cc000b5SPaul Mundt	def_bool ARCH = "sh"
36d39f5450SChris Smith	select HAVE_KPROBES
37d39f5450SChris Smith	select HAVE_KRETPROBES
38694f94f2SPaul Mundt	select HAVE_FUNCTION_TRACER
39fad57febSMatt Fleming	select HAVE_FTRACE_MCOUNT_RECORD
40fad57febSMatt Fleming	select HAVE_DYNAMIC_FTRACE
41c1340c05SMatt Fleming	select HAVE_FUNCTION_TRACE_MCOUNT_TEST
42e4b053d9SPaul Mundt	select HAVE_FTRACE_NMI_ENTER if DYNAMIC_FTRACE
43327933f5SMatt Fleming	select HAVE_FUNCTION_GRAPH_TRACER
44ab6e570bSPaul Mundt	select HAVE_ARCH_KGDB
458dafc346SPaul Mundt	select ARCH_HIBERNATION_POSSIBLE if MMU
46ea0e1a9aSPaul Mundt
47ea0e1a9aSPaul Mundtconfig SUPERH64
483cc000b5SPaul Mundt	def_bool ARCH = "sh64"
49ea0e1a9aSPaul Mundt
50f42b7e3dSPaul Mundtconfig ARCH_DEFCONFIG
51f42b7e3dSPaul Mundt	string
52f42b7e3dSPaul Mundt	default "arch/sh/configs/shx3_defconfig" if SUPERH32
53f42b7e3dSPaul Mundt	default "arch/sh/configs/cayman_defconfig" if SUPERH64
54f42b7e3dSPaul Mundt
55ea0e1a9aSPaul Mundtconfig RWSEM_GENERIC_SPINLOCK
56d7ef4fb3SHarvey Harrison	def_bool y
57ea0e1a9aSPaul Mundt
58ea0e1a9aSPaul Mundtconfig RWSEM_XCHGADD_ALGORITHM
59ea0e1a9aSPaul Mundt	bool
60ea0e1a9aSPaul Mundt
61ea0e1a9aSPaul Mundtconfig GENERIC_BUG
62ea0e1a9aSPaul Mundt	def_bool y
63a82d53ecSPaul Mundt	depends on BUG && SUPERH32
64ea0e1a9aSPaul Mundt
653767f3f1SPaul Mundtconfig GENERIC_CSUM
663767f3f1SPaul Mundt	def_bool y
673767f3f1SPaul Mundt	depends on SUPERH64
683767f3f1SPaul Mundt
69ea0e1a9aSPaul Mundtconfig GENERIC_FIND_NEXT_BIT
70d7ef4fb3SHarvey Harrison	def_bool y
71ea0e1a9aSPaul Mundt
72ea0e1a9aSPaul Mundtconfig GENERIC_HWEIGHT
73d7ef4fb3SHarvey Harrison	def_bool y
74ea0e1a9aSPaul Mundt
75ea0e1a9aSPaul Mundtconfig GENERIC_HARDIRQS
76d7ef4fb3SHarvey Harrison	def_bool y
77ea0e1a9aSPaul Mundt
785093c9a4SPaul Mundtconfig GENERIC_HARDIRQS_NO__DO_IRQ
795093c9a4SPaul Mundt	def_bool y
805093c9a4SPaul Mundt
81ea0e1a9aSPaul Mundtconfig GENERIC_IRQ_PROBE
82d7ef4fb3SHarvey Harrison	def_bool y
83ea0e1a9aSPaul Mundt
842eb2a436SPaul Mundtconfig IRQ_PER_CPU
852eb2a436SPaul Mundt	def_bool y
862eb2a436SPaul Mundt
872967dab1SMagnus Dammconfig GENERIC_GPIO
882967dab1SMagnus Damm	def_bool n
892967dab1SMagnus Damm
90ea0e1a9aSPaul Mundtconfig GENERIC_CALIBRATE_DELAY
91cf204fa7SPaul Mundt	bool
92ea0e1a9aSPaul Mundt
93ea0e1a9aSPaul Mundtconfig GENERIC_IOMAP
94ea0e1a9aSPaul Mundt	bool
95ea0e1a9aSPaul Mundt
96ea0e1a9aSPaul Mundtconfig GENERIC_TIME
9775634311Sjohn stultz	def_bool y
98ea0e1a9aSPaul Mundt
99ea0e1a9aSPaul Mundtconfig GENERIC_CLOCKEVENTS
100938edae1SPaul Mundt	def_bool y
101ea0e1a9aSPaul Mundt
1028c24594dSPaul Mundtconfig GENERIC_CLOCKEVENTS_BROADCAST
1038c24594dSPaul Mundt	bool
1048c24594dSPaul Mundt
1056d134b9eSPaul Mundtconfig GENERIC_CMOS_UPDATE
1066d134b9eSPaul Mundt	def_bool y
1076d134b9eSPaul Mundt	depends on SH_SH03 || SH_DREAMCAST
1086d134b9eSPaul Mundt
109bdcab87bSPaul Mundtconfig GENERIC_LOCKBREAK
110bdcab87bSPaul Mundt	def_bool y
111bdcab87bSPaul Mundt	depends on SMP && PREEMPT
112bdcab87bSPaul Mundt
113ea0e1a9aSPaul Mundtconfig SYS_SUPPORTS_PM
114ea0e1a9aSPaul Mundt	bool
115af998a9aSMagnus Damm	depends on !SMP
116af998a9aSMagnus Damm
117af998a9aSMagnus Dammconfig ARCH_SUSPEND_POSSIBLE
118af998a9aSMagnus Damm	def_bool n
119af998a9aSMagnus Damm
120af998a9aSMagnus Dammconfig ARCH_HIBERNATION_POSSIBLE
121af998a9aSMagnus Damm	def_bool n
122ea0e1a9aSPaul Mundt
123ea0e1a9aSPaul Mundtconfig SYS_SUPPORTS_APM_EMULATION
124ea0e1a9aSPaul Mundt	bool
125af998a9aSMagnus Damm	select ARCH_SUSPEND_POSSIBLE
126ea0e1a9aSPaul Mundt
127ffb4a73dSPaul Mundtconfig SYS_SUPPORTS_HUGETLBFS
128ffb4a73dSPaul Mundt	bool
129ffb4a73dSPaul Mundt
130ea0e1a9aSPaul Mundtconfig SYS_SUPPORTS_SMP
131ea0e1a9aSPaul Mundt	bool
132ea0e1a9aSPaul Mundt
133ea0e1a9aSPaul Mundtconfig SYS_SUPPORTS_NUMA
134ea0e1a9aSPaul Mundt	bool
135ea0e1a9aSPaul Mundt
136ea0e1a9aSPaul Mundtconfig SYS_SUPPORTS_PCI
137ea0e1a9aSPaul Mundt	bool
138ea0e1a9aSPaul Mundt
139f5ad881bSPaul Mundtconfig SYS_SUPPORTS_CMT
140f5ad881bSPaul Mundt	bool
141f5ad881bSPaul Mundt
142d5ed4c2eSMagnus Dammconfig SYS_SUPPORTS_MTU2
143d5ed4c2eSMagnus Damm	bool
144d5ed4c2eSMagnus Damm
1459570ef20SMagnus Dammconfig SYS_SUPPORTS_TMU
1469570ef20SMagnus Damm	bool
1479570ef20SMagnus Damm
148ea0e1a9aSPaul Mundtconfig STACKTRACE_SUPPORT
149d7ef4fb3SHarvey Harrison	def_bool y
150ea0e1a9aSPaul Mundt
151ea0e1a9aSPaul Mundtconfig LOCKDEP_SUPPORT
152d7ef4fb3SHarvey Harrison	def_bool y
153ea0e1a9aSPaul Mundt
1545a89f1adSPaul Mundtconfig HAVE_LATENCYTOP_SUPPORT
1555a89f1adSPaul Mundt	def_bool y
1565a89f1adSPaul Mundt	depends on !SMP
1575a89f1adSPaul Mundt
158ea0e1a9aSPaul Mundtconfig ARCH_HAS_ILOG2_U32
159d7ef4fb3SHarvey Harrison	def_bool n
160ea0e1a9aSPaul Mundt
161ea0e1a9aSPaul Mundtconfig ARCH_HAS_ILOG2_U64
162d7ef4fb3SHarvey Harrison	def_bool n
163ea0e1a9aSPaul Mundt
164ea0e1a9aSPaul Mundtconfig ARCH_NO_VIRT_TO_BUS
165ea0e1a9aSPaul Mundt	def_bool y
166ea0e1a9aSPaul Mundt
167e869a90eSPaul Mundtconfig ARCH_HAS_DEFAULT_IDLE
168e869a90eSPaul Mundt	def_bool y
169e869a90eSPaul Mundt
1702e046b94SPaul Mundtconfig ARCH_HAS_CPU_IDLE_WAIT
1712e046b94SPaul Mundt	def_bool y
1722e046b94SPaul Mundt
173e7cc9a73SMagnus Dammconfig IO_TRAPPED
174e7cc9a73SMagnus Damm	bool
175e7cc9a73SMagnus Damm
17601be5d63SPaul Mundtconfig DMA_COHERENT
17701be5d63SPaul Mundt	bool
17801be5d63SPaul Mundt
17901be5d63SPaul Mundtconfig DMA_NONCOHERENT
18001be5d63SPaul Mundt	def_bool !DMA_COHERENT
18101be5d63SPaul Mundt
182ea0e1a9aSPaul Mundtsource "init/Kconfig"
183ea0e1a9aSPaul Mundt
184dc52ddc0SMatt Helsleysource "kernel/Kconfig.freezer"
185dc52ddc0SMatt Helsley
186ea0e1a9aSPaul Mundtmenu "System type"
187ea0e1a9aSPaul Mundt
188ea0e1a9aSPaul Mundt#
189ea0e1a9aSPaul Mundt# Processor families
190ea0e1a9aSPaul Mundt#
191ea0e1a9aSPaul Mundtconfig CPU_SH2
192ea0e1a9aSPaul Mundt	bool
193ea0e1a9aSPaul Mundt
194ea0e1a9aSPaul Mundtconfig CPU_SH2A
195ea0e1a9aSPaul Mundt	bool
196ea0e1a9aSPaul Mundt	select CPU_SH2
197ea0e1a9aSPaul Mundt
198ea0e1a9aSPaul Mundtconfig CPU_SH3
199ea0e1a9aSPaul Mundt	bool
200ea0e1a9aSPaul Mundt	select CPU_HAS_INTEVT
201ea0e1a9aSPaul Mundt	select CPU_HAS_SR_RB
2024fa48e17SPaul Mundt	select SYS_SUPPORTS_TMU
203ea0e1a9aSPaul Mundt
204ea0e1a9aSPaul Mundtconfig CPU_SH4
205ea0e1a9aSPaul Mundt	bool
206ea0e1a9aSPaul Mundt	select CPU_HAS_INTEVT
207ea0e1a9aSPaul Mundt	select CPU_HAS_SR_RB
208ea0e1a9aSPaul Mundt	select CPU_HAS_FPU if !CPU_SH4AL_DSP
2094fa48e17SPaul Mundt	select SYS_SUPPORTS_TMU
210ffb4a73dSPaul Mundt	select SYS_SUPPORTS_HUGETLBFS if MMU
211ea0e1a9aSPaul Mundt
212ea0e1a9aSPaul Mundtconfig CPU_SH4A
213ea0e1a9aSPaul Mundt	bool
214ea0e1a9aSPaul Mundt	select CPU_SH4
215ea0e1a9aSPaul Mundt
216ea0e1a9aSPaul Mundtconfig CPU_SH4AL_DSP
217ea0e1a9aSPaul Mundt	bool
218ea0e1a9aSPaul Mundt	select CPU_SH4A
219ea0e1a9aSPaul Mundt	select CPU_HAS_DSP
220ea0e1a9aSPaul Mundt
221ea0e1a9aSPaul Mundtconfig CPU_SH5
222ea0e1a9aSPaul Mundt	bool
223ea0e1a9aSPaul Mundt	select CPU_HAS_FPU
224add47067SPaul Mundt	select SYS_SUPPORTS_TMU
225ffb4a73dSPaul Mundt	select SYS_SUPPORTS_HUGETLBFS if MMU
226ea0e1a9aSPaul Mundt
227ea0e1a9aSPaul Mundtconfig CPU_SHX2
228ea0e1a9aSPaul Mundt	bool
229ea0e1a9aSPaul Mundt
230ea0e1a9aSPaul Mundtconfig CPU_SHX3
231ea0e1a9aSPaul Mundt	bool
23201be5d63SPaul Mundt	select DMA_COHERENT
233ea0e1a9aSPaul Mundt
234dc65a977SPaul Mundtconfig ARCH_SHMOBILE
235dc65a977SPaul Mundt	bool
23677594912SMagnus Damm	select ARCH_SUSPEND_POSSIBLE
237ac2c596bSMagnus Damm	select PM
238ac2c596bSMagnus Damm	select PM_RUNTIME
239dc65a977SPaul Mundt
2403cc000b5SPaul Mundtif SUPERH32
2413cc000b5SPaul Mundt
242ea0e1a9aSPaul Mundtchoice
243ea0e1a9aSPaul Mundt	prompt "Processor sub-type selection"
244ea0e1a9aSPaul Mundt
245ea0e1a9aSPaul Mundt#
246ea0e1a9aSPaul Mundt# Processor subtypes
247ea0e1a9aSPaul Mundt#
248ea0e1a9aSPaul Mundt
249ea0e1a9aSPaul Mundt# SH-2 Processor Support
250ea0e1a9aSPaul Mundt
251ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7619
252ea0e1a9aSPaul Mundt	bool "Support SH7619 processor"
253ea0e1a9aSPaul Mundt	select CPU_SH2
254f5ad881bSPaul Mundt	select SYS_SUPPORTS_CMT
255ea0e1a9aSPaul Mundt
256ea0e1a9aSPaul Mundt# SH-2A Processor Support
257ea0e1a9aSPaul Mundt
2582825999eSPeter Griffinconfig CPU_SUBTYPE_SH7201
2592825999eSPeter Griffin	bool "Support SH7201 processor"
2602825999eSPeter Griffin	select CPU_SH2A
2612825999eSPeter Griffin	select CPU_HAS_FPU
262da107c6eSMagnus Damm	select SYS_SUPPORTS_MTU2
2632825999eSPeter Griffin
2646d01f510SPaul Mundtconfig CPU_SUBTYPE_SH7203
2656d01f510SPaul Mundt	bool "Support SH7203 processor"
2666d01f510SPaul Mundt	select CPU_SH2A
26774d99a5eSPaul Mundt	select CPU_HAS_FPU
268f5ad881bSPaul Mundt	select SYS_SUPPORTS_CMT
269da107c6eSMagnus Damm	select SYS_SUPPORTS_MTU2
2706d01f510SPaul Mundt
271ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7206
272ea0e1a9aSPaul Mundt	bool "Support SH7206 processor"
273ea0e1a9aSPaul Mundt	select CPU_SH2A
274f5ad881bSPaul Mundt	select SYS_SUPPORTS_CMT
275da107c6eSMagnus Damm	select SYS_SUPPORTS_MTU2
276ea0e1a9aSPaul Mundt
277a8f67f4bSPaul Mundtconfig CPU_SUBTYPE_SH7263
278a8f67f4bSPaul Mundt	bool "Support SH7263 processor"
279a8f67f4bSPaul Mundt	select CPU_SH2A
28074d99a5eSPaul Mundt	select CPU_HAS_FPU
281f5ad881bSPaul Mundt	select SYS_SUPPORTS_CMT
282da107c6eSMagnus Damm	select SYS_SUPPORTS_MTU2
283a8f67f4bSPaul Mundt
2842ad69908SPaul Mundtconfig CPU_SUBTYPE_MXG
2852ad69908SPaul Mundt	bool "Support MX-G processor"
2862ad69908SPaul Mundt	select CPU_SH2A
287da107c6eSMagnus Damm	select SYS_SUPPORTS_MTU2
2882ad69908SPaul Mundt	help
2892ad69908SPaul Mundt	  Select MX-G if running on an R8A03022BG part.
2902ad69908SPaul Mundt
291ea0e1a9aSPaul Mundt# SH-3 Processor Support
292ea0e1a9aSPaul Mundt
293ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7705
294ea0e1a9aSPaul Mundt	bool "Support SH7705 processor"
295ea0e1a9aSPaul Mundt	select CPU_SH3
296ea0e1a9aSPaul Mundt
297ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7706
298ea0e1a9aSPaul Mundt	bool "Support SH7706 processor"
299ea0e1a9aSPaul Mundt	select CPU_SH3
300ea0e1a9aSPaul Mundt	help
301ea0e1a9aSPaul Mundt	  Select SH7706 if you have a 133 Mhz SH-3 HD6417706 CPU.
302ea0e1a9aSPaul Mundt
303ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7707
304ea0e1a9aSPaul Mundt	bool "Support SH7707 processor"
305ea0e1a9aSPaul Mundt	select CPU_SH3
306ea0e1a9aSPaul Mundt	help
307ea0e1a9aSPaul Mundt	  Select SH7707 if you have a  60 Mhz SH-3 HD6417707 CPU.
308ea0e1a9aSPaul Mundt
309ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7708
310ea0e1a9aSPaul Mundt	bool "Support SH7708 processor"
311ea0e1a9aSPaul Mundt	select CPU_SH3
312ea0e1a9aSPaul Mundt	help
313ea0e1a9aSPaul Mundt	  Select SH7708 if you have a  60 Mhz SH-3 HD6417708S or
314ea0e1a9aSPaul Mundt	  if you have a 100 Mhz SH-3 HD6417708R CPU.
315ea0e1a9aSPaul Mundt
316ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7709
317ea0e1a9aSPaul Mundt	bool "Support SH7709 processor"
318ea0e1a9aSPaul Mundt	select CPU_SH3
319ea0e1a9aSPaul Mundt	help
320ea0e1a9aSPaul Mundt	  Select SH7709 if you have a  80 Mhz SH-3 HD6417709 CPU.
321ea0e1a9aSPaul Mundt
322ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7710
323ea0e1a9aSPaul Mundt	bool "Support SH7710 processor"
324ea0e1a9aSPaul Mundt	select CPU_SH3
325ea0e1a9aSPaul Mundt	select CPU_HAS_DSP
326ea0e1a9aSPaul Mundt	help
327ea0e1a9aSPaul Mundt	  Select SH7710 if you have a SH3-DSP SH7710 CPU.
328ea0e1a9aSPaul Mundt
329ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7712
330ea0e1a9aSPaul Mundt	bool "Support SH7712 processor"
331ea0e1a9aSPaul Mundt	select CPU_SH3
332ea0e1a9aSPaul Mundt	select CPU_HAS_DSP
333ea0e1a9aSPaul Mundt	help
334ea0e1a9aSPaul Mundt	  Select SH7712 if you have a SH3-DSP SH7712 CPU.
335ea0e1a9aSPaul Mundt
336ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7720
337ea0e1a9aSPaul Mundt	bool "Support SH7720 processor"
338ea0e1a9aSPaul Mundt	select CPU_SH3
339ea0e1a9aSPaul Mundt	select CPU_HAS_DSP
3402b23a882SMagnus Damm	select SYS_SUPPORTS_CMT
341ea0e1a9aSPaul Mundt	help
342ea0e1a9aSPaul Mundt	  Select SH7720 if you have a SH3-DSP SH7720 CPU.
343ea0e1a9aSPaul Mundt
34431a49c4bSYoshihiro Shimodaconfig CPU_SUBTYPE_SH7721
34531a49c4bSYoshihiro Shimoda	bool "Support SH7721 processor"
34631a49c4bSYoshihiro Shimoda	select CPU_SH3
34731a49c4bSYoshihiro Shimoda	select CPU_HAS_DSP
3482b23a882SMagnus Damm	select SYS_SUPPORTS_CMT
34931a49c4bSYoshihiro Shimoda	help
35031a49c4bSYoshihiro Shimoda	  Select SH7721 if you have a SH3-DSP SH7721 CPU.
35131a49c4bSYoshihiro Shimoda
352ea0e1a9aSPaul Mundt# SH-4 Processor Support
353ea0e1a9aSPaul Mundt
354ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7750
355ea0e1a9aSPaul Mundt	bool "Support SH7750 processor"
356ea0e1a9aSPaul Mundt	select CPU_SH4
357ea0e1a9aSPaul Mundt	help
358ea0e1a9aSPaul Mundt	  Select SH7750 if you have a 200 Mhz SH-4 HD6417750 CPU.
359ea0e1a9aSPaul Mundt
360ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7091
361ea0e1a9aSPaul Mundt	bool "Support SH7091 processor"
362ea0e1a9aSPaul Mundt	select CPU_SH4
363ea0e1a9aSPaul Mundt	help
364ea0e1a9aSPaul Mundt	  Select SH7091 if you have an SH-4 based Sega device (such as
365ea0e1a9aSPaul Mundt	  the Dreamcast, Naomi, and Naomi 2).
366ea0e1a9aSPaul Mundt
367ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7750R
368ea0e1a9aSPaul Mundt	bool "Support SH7750R processor"
369ea0e1a9aSPaul Mundt	select CPU_SH4
370ea0e1a9aSPaul Mundt
371ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7750S
372ea0e1a9aSPaul Mundt	bool "Support SH7750S processor"
373ea0e1a9aSPaul Mundt	select CPU_SH4
374ea0e1a9aSPaul Mundt
375ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7751
376ea0e1a9aSPaul Mundt	bool "Support SH7751 processor"
377ea0e1a9aSPaul Mundt	select CPU_SH4
378ea0e1a9aSPaul Mundt	help
379ea0e1a9aSPaul Mundt	  Select SH7751 if you have a 166 Mhz SH-4 HD6417751 CPU,
380ea0e1a9aSPaul Mundt	  or if you have a HD6417751R CPU.
381ea0e1a9aSPaul Mundt
382ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7751R
383ea0e1a9aSPaul Mundt	bool "Support SH7751R processor"
384ea0e1a9aSPaul Mundt	select CPU_SH4
385ea0e1a9aSPaul Mundt
386ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7760
387ea0e1a9aSPaul Mundt	bool "Support SH7760 processor"
388ea0e1a9aSPaul Mundt	select CPU_SH4
389ea0e1a9aSPaul Mundt
390ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH4_202
391ea0e1a9aSPaul Mundt	bool "Support SH4-202 processor"
392ea0e1a9aSPaul Mundt	select CPU_SH4
393ea0e1a9aSPaul Mundt
394ea0e1a9aSPaul Mundt# SH-4A Processor Support
395ea0e1a9aSPaul Mundt
396178dd0cdSPaul Mundtconfig CPU_SUBTYPE_SH7723
397178dd0cdSPaul Mundt	bool "Support SH7723 processor"
398178dd0cdSPaul Mundt	select CPU_SH4A
399178dd0cdSPaul Mundt	select CPU_SHX2
400dc65a977SPaul Mundt	select ARCH_SHMOBILE
401178dd0cdSPaul Mundt	select ARCH_SPARSEMEM_ENABLE
402f5ad881bSPaul Mundt	select SYS_SUPPORTS_CMT
403178dd0cdSPaul Mundt	help
404178dd0cdSPaul Mundt	  Select SH7723 if you have an SH-MobileR2 CPU.
405178dd0cdSPaul Mundt
4060207a2efSKuninori Morimotoconfig CPU_SUBTYPE_SH7724
4070207a2efSKuninori Morimoto	bool "Support SH7724 processor"
4080207a2efSKuninori Morimoto	select CPU_SH4A
4090207a2efSKuninori Morimoto	select CPU_SHX2
41059fe700dSPaul Mundt	select ARCH_SHMOBILE
4110207a2efSKuninori Morimoto	select ARCH_SPARSEMEM_ENABLE
4120207a2efSKuninori Morimoto	select SYS_SUPPORTS_CMT
4130207a2efSKuninori Morimoto	help
4140207a2efSKuninori Morimoto	  Select SH7724 if you have an SH-MobileR2R CPU.
4150207a2efSKuninori Morimoto
416c01f0f1aSYoshihiro Shimodaconfig CPU_SUBTYPE_SH7757
417c01f0f1aSYoshihiro Shimoda	bool "Support SH7757 processor"
418c01f0f1aSYoshihiro Shimoda	select CPU_SH4A
419c01f0f1aSYoshihiro Shimoda	select CPU_SHX2
420c01f0f1aSYoshihiro Shimoda	help
421c01f0f1aSYoshihiro Shimoda	  Select SH7757 if you have a SH4A SH7757 CPU.
422c01f0f1aSYoshihiro Shimoda
4237d740a06SYoshihiro Shimodaconfig CPU_SUBTYPE_SH7763
4247d740a06SYoshihiro Shimoda	bool "Support SH7763 processor"
4257d740a06SYoshihiro Shimoda	select CPU_SH4A
4267d740a06SYoshihiro Shimoda	help
4277d740a06SYoshihiro Shimoda	  Select SH7763 if you have a SH4A SH7763(R5S77631) CPU.
4287d740a06SYoshihiro Shimoda
429ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7770
430ea0e1a9aSPaul Mundt	bool "Support SH7770 processor"
431ea0e1a9aSPaul Mundt	select CPU_SH4A
432ea0e1a9aSPaul Mundt
433ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7780
434ea0e1a9aSPaul Mundt	bool "Support SH7780 processor"
435ea0e1a9aSPaul Mundt	select CPU_SH4A
436ea0e1a9aSPaul Mundt
437ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7785
438ea0e1a9aSPaul Mundt	bool "Support SH7785 processor"
439ea0e1a9aSPaul Mundt	select CPU_SH4A
440ea0e1a9aSPaul Mundt	select CPU_SHX2
441ea0e1a9aSPaul Mundt	select ARCH_SPARSEMEM_ENABLE
442ea0e1a9aSPaul Mundt	select SYS_SUPPORTS_NUMA
443ea0e1a9aSPaul Mundt
44455ba99ebSKuninori Morimotoconfig CPU_SUBTYPE_SH7786
44555ba99ebSKuninori Morimoto	bool "Support SH7786 processor"
44655ba99ebSKuninori Morimoto	select CPU_SH4A
44737042fbdSPaul Mundt	select CPU_SHX3
4488263a67eSPaul Mundt	select CPU_HAS_PTEAEX
44955ba99ebSKuninori Morimoto	select ARCH_SPARSEMEM_ENABLE
45055ba99ebSKuninori Morimoto	select SYS_SUPPORTS_NUMA
4512eb2a436SPaul Mundt	select SYS_SUPPORTS_SMP
4522eb2a436SPaul Mundt	select GENERIC_CLOCKEVENTS_BROADCAST if SMP
45355ba99ebSKuninori Morimoto
454ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SHX3
455ea0e1a9aSPaul Mundt	bool "Support SH-X3 processor"
456ea0e1a9aSPaul Mundt	select CPU_SH4A
457ea0e1a9aSPaul Mundt	select CPU_SHX3
458ea0e1a9aSPaul Mundt	select ARCH_SPARSEMEM_ENABLE
459ea0e1a9aSPaul Mundt	select SYS_SUPPORTS_NUMA
460ea0e1a9aSPaul Mundt	select SYS_SUPPORTS_SMP
4615840263eSPaul Mundt	select GENERIC_CLOCKEVENTS_BROADCAST if SMP
462ea0e1a9aSPaul Mundt
463ea0e1a9aSPaul Mundt# SH4AL-DSP Processor Support
464ea0e1a9aSPaul Mundt
465ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7343
466ea0e1a9aSPaul Mundt	bool "Support SH7343 processor"
467ea0e1a9aSPaul Mundt	select CPU_SH4AL_DSP
468dc65a977SPaul Mundt	select ARCH_SHMOBILE
469f5ad881bSPaul Mundt	select SYS_SUPPORTS_CMT
470ea0e1a9aSPaul Mundt
471ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH7722
472ea0e1a9aSPaul Mundt	bool "Support SH7722 processor"
473ea0e1a9aSPaul Mundt	select CPU_SH4AL_DSP
474ea0e1a9aSPaul Mundt	select CPU_SHX2
475dc65a977SPaul Mundt	select ARCH_SHMOBILE
476ea0e1a9aSPaul Mundt	select ARCH_SPARSEMEM_ENABLE
477ea0e1a9aSPaul Mundt	select SYS_SUPPORTS_NUMA
478f5ad881bSPaul Mundt	select SYS_SUPPORTS_CMT
479ea0e1a9aSPaul Mundt
4809109a30eSMagnus Dammconfig CPU_SUBTYPE_SH7366
4819109a30eSMagnus Damm	bool "Support SH7366 processor"
4829109a30eSMagnus Damm	select CPU_SH4AL_DSP
4839109a30eSMagnus Damm	select CPU_SHX2
484dc65a977SPaul Mundt	select ARCH_SHMOBILE
4859109a30eSMagnus Damm	select ARCH_SPARSEMEM_ENABLE
4869109a30eSMagnus Damm	select SYS_SUPPORTS_NUMA
487f5ad881bSPaul Mundt	select SYS_SUPPORTS_CMT
4889109a30eSMagnus Damm
4893cc000b5SPaul Mundtendchoice
4903cc000b5SPaul Mundt
4913cc000b5SPaul Mundtendif
4923cc000b5SPaul Mundt
4933cc000b5SPaul Mundtif SUPERH64
4943cc000b5SPaul Mundt
4953cc000b5SPaul Mundtchoice
4963cc000b5SPaul Mundt	prompt "Processor sub-type selection"
4973cc000b5SPaul Mundt
498ea0e1a9aSPaul Mundt# SH-5 Processor Support
499ea0e1a9aSPaul Mundt
500ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH5_101
501ea0e1a9aSPaul Mundt	bool "Support SH5-101 processor"
502ea0e1a9aSPaul Mundt	select CPU_SH5
503ea0e1a9aSPaul Mundt
504ea0e1a9aSPaul Mundtconfig CPU_SUBTYPE_SH5_103
505ea0e1a9aSPaul Mundt	bool "Support SH5-103 processor"
5068ef97dd7SPaul Mundt	select CPU_SH5
507ea0e1a9aSPaul Mundt
508ea0e1a9aSPaul Mundtendchoice
509ea0e1a9aSPaul Mundt
5103cc000b5SPaul Mundtendif
5113cc000b5SPaul Mundt
512ea0e1a9aSPaul Mundtsource "arch/sh/mm/Kconfig"
513939a24a6SPaul Mundt
514ea0e1a9aSPaul Mundtsource "arch/sh/Kconfig.cpu"
515ea0e1a9aSPaul Mundt
516939a24a6SPaul Mundtsource "arch/sh/boards/Kconfig"
517ea0e1a9aSPaul Mundt
518ea0e1a9aSPaul Mundtmenu "Timer and clock configuration"
519ea0e1a9aSPaul Mundt
5209570ef20SMagnus Dammconfig SH_TIMER_TMU
5219570ef20SMagnus Damm	bool "TMU timer driver"
522f19900b2SMagnus Damm	depends on SYS_SUPPORTS_TMU
5239570ef20SMagnus Damm	default y
5249570ef20SMagnus Damm	help
5259570ef20SMagnus Damm	  This enables the build of the TMU timer driver.
5269570ef20SMagnus Damm
527f5ad881bSPaul Mundtconfig SH_TIMER_CMT
528f425752fSMagnus Damm	bool "CMT timer driver"
529f425752fSMagnus Damm	depends on SYS_SUPPORTS_CMT
530f425752fSMagnus Damm	default y
531f425752fSMagnus Damm	help
532f425752fSMagnus Damm	  This enables build of the CMT timer driver.
533f5ad881bSPaul Mundt
534d5ed4c2eSMagnus Dammconfig SH_TIMER_MTU2
535d5ed4c2eSMagnus Damm	bool "MTU2 timer driver"
5363280c886SMagnus Damm	depends on SYS_SUPPORTS_MTU2
537d5ed4c2eSMagnus Damm	default y
538d5ed4c2eSMagnus Damm	help
539d5ed4c2eSMagnus Damm	  This enables build of the MTU2 timer driver.
540d5ed4c2eSMagnus Damm
541ea0e1a9aSPaul Mundtconfig SH_PCLK_FREQ
542ea0e1a9aSPaul Mundt	int "Peripheral clock frequency (in Hz)"
5438152a74bSPaul Mundt	depends on SH_CLK_CPG_LEGACY
544ea0e1a9aSPaul Mundt	default "31250000" if CPU_SUBTYPE_SH7619
5458152a74bSPaul Mundt	default "33333333" if CPU_SUBTYPE_SH7770 || \
5468152a74bSPaul Mundt			      CPU_SUBTYPE_SH7760 || \
5478152a74bSPaul Mundt			      CPU_SUBTYPE_SH7705 || \
5488152a74bSPaul Mundt			      CPU_SUBTYPE_SH7203 || \
5498152a74bSPaul Mundt			      CPU_SUBTYPE_SH7206 || \
5508152a74bSPaul Mundt			      CPU_SUBTYPE_SH7263 || \
5518152a74bSPaul Mundt			      CPU_SUBTYPE_MXG    || \
5528152a74bSPaul Mundt			      CPU_SUBTYPE_SH7786
553ea0e1a9aSPaul Mundt	default "60000000" if CPU_SUBTYPE_SH7751 || CPU_SUBTYPE_SH7751R
554ea0e1a9aSPaul Mundt	default "66000000" if CPU_SUBTYPE_SH4_202
555ea0e1a9aSPaul Mundt	default "50000000"
556ea0e1a9aSPaul Mundt	help
557ea0e1a9aSPaul Mundt	  This option is used to specify the peripheral clock frequency.
558ea0e1a9aSPaul Mundt	  This is necessary for determining the reference clock value on
559ea0e1a9aSPaul Mundt	  platforms lacking an RTC.
560ea0e1a9aSPaul Mundt
56136aa1e32SPaul Mundtconfig SH_CLK_CPG
56236aa1e32SPaul Mundt	def_bool y
56336aa1e32SPaul Mundt
564253b0887SPaul Mundtconfig SH_CLK_CPG_LEGACY
56536aa1e32SPaul Mundt	depends on SH_CLK_CPG
56646e9371cSMagnus Damm	def_bool y if !CPU_SUBTYPE_SH7785 && !ARCH_SHMOBILE
567253b0887SPaul Mundt
568ea0e1a9aSPaul Mundtconfig SH_CLK_MD
569ea0e1a9aSPaul Mundt	int "CPU Mode Pin Setting"
5706d01f510SPaul Mundt	depends on CPU_SH2
571ea0e1a9aSPaul Mundt	default 6 if CPU_SUBTYPE_SH7206
572ea0e1a9aSPaul Mundt	default 5 if CPU_SUBTYPE_SH7619
573ea0e1a9aSPaul Mundt	default 0
574ea0e1a9aSPaul Mundt	help
575ea0e1a9aSPaul Mundt	  MD2 - MD0 pin setting.
576ea0e1a9aSPaul Mundt
577ea0e1a9aSPaul Mundtsource "kernel/time/Kconfig"
578ea0e1a9aSPaul Mundt
579ea0e1a9aSPaul Mundtendmenu
580ea0e1a9aSPaul Mundt
581ea0e1a9aSPaul Mundtmenu "CPU Frequency scaling"
582ea0e1a9aSPaul Mundt
583ea0e1a9aSPaul Mundtsource "drivers/cpufreq/Kconfig"
584ea0e1a9aSPaul Mundt
585ea0e1a9aSPaul Mundtconfig SH_CPU_FREQ
586ea0e1a9aSPaul Mundt	tristate "SuperH CPU Frequency driver"
587ea0e1a9aSPaul Mundt	depends on CPU_FREQ
588ea0e1a9aSPaul Mundt	select CPU_FREQ_TABLE
589ea0e1a9aSPaul Mundt	help
5908a655053SPaul Mundt	  This adds the cpufreq driver for SuperH. Any CPU that supports
5918a655053SPaul Mundt	  clock rate rounding through the clock framework can use this
5928a655053SPaul Mundt	  driver. While it will make the kernel slightly larger, this is
5938a655053SPaul Mundt	  harmless for CPUs that don't support rate rounding. The driver
5948a655053SPaul Mundt	  will also generate a notice in the boot log before disabling
5958a655053SPaul Mundt	  itself if the CPU in question is not capable of rate rounding.
596ea0e1a9aSPaul Mundt
597ea0e1a9aSPaul Mundt	  For details, take a look at <file:Documentation/cpu-freq>.
598ea0e1a9aSPaul Mundt
599ea0e1a9aSPaul Mundt	  If unsure, say N.
600ea0e1a9aSPaul Mundt
601ea0e1a9aSPaul Mundtendmenu
602ea0e1a9aSPaul Mundt
603ea0e1a9aSPaul Mundtsource "arch/sh/drivers/Kconfig"
604ea0e1a9aSPaul Mundt
605ea0e1a9aSPaul Mundtendmenu
606ea0e1a9aSPaul Mundt
607ea0e1a9aSPaul Mundtmenu "Kernel features"
608ea0e1a9aSPaul Mundt
609ea0e1a9aSPaul Mundtsource kernel/Kconfig.hz
610ea0e1a9aSPaul Mundt
611ea0e1a9aSPaul Mundtconfig KEXEC
612ea0e1a9aSPaul Mundt	bool "kexec system call (EXPERIMENTAL)"
613f36b59d1SNobuhiro Iwamatsu	depends on SUPERH32 && EXPERIMENTAL && MMU
614ea0e1a9aSPaul Mundt	help
615ea0e1a9aSPaul Mundt	  kexec is a system call that implements the ability to shutdown your
616ea0e1a9aSPaul Mundt	  current kernel, and to start another kernel.  It is like a reboot
617ea0e1a9aSPaul Mundt	  but it is independent of the system firmware.  And like a reboot
618ea0e1a9aSPaul Mundt	  you can start any kernel with it, not just Linux.
619ea0e1a9aSPaul Mundt
620ea0e1a9aSPaul Mundt	  The name comes from the similarity to the exec system call.
621ea0e1a9aSPaul Mundt
622ea0e1a9aSPaul Mundt	  It is an ongoing process to be certain the hardware in a machine
623ea0e1a9aSPaul Mundt	  is properly shutdown, so do not be surprised if this code does not
624ea0e1a9aSPaul Mundt	  initially work for you.  It may help to enable device hotplugging
625ea0e1a9aSPaul Mundt	  support.  As of this writing the exact hardware interface is
626ea0e1a9aSPaul Mundt	  strongly in flux, so no good recommendation can be made.
627ea0e1a9aSPaul Mundt
628ea0e1a9aSPaul Mundtconfig CRASH_DUMP
629ea0e1a9aSPaul Mundt	bool "kernel crash dumps (EXPERIMENTAL)"
630640f7487SPaul Mundt	depends on SUPERH32 && EXPERIMENTAL
631ea0e1a9aSPaul Mundt	help
632ea0e1a9aSPaul Mundt	  Generate crash dump after being started by kexec.
633ea0e1a9aSPaul Mundt	  This should be normally only set in special crash dump kernels
634ea0e1a9aSPaul Mundt	  which are loaded in the main kernel with kexec-tools into
635ea0e1a9aSPaul Mundt	  a specially reserved region and then later executed after
636ea0e1a9aSPaul Mundt	  a crash by kdump/kexec. The crash dump kernel must be compiled
637ea0e1a9aSPaul Mundt	  to a memory address not used by the main kernel using
638ea0e1a9aSPaul Mundt	  MEMORY_START.
639ea0e1a9aSPaul Mundt
640ea0e1a9aSPaul Mundt	  For more details see Documentation/kdump/kdump.txt
641ea0e1a9aSPaul Mundt
642b7cf6ddcSMagnus Dammconfig KEXEC_JUMP
643b7cf6ddcSMagnus Damm	bool "kexec jump (EXPERIMENTAL)"
644b7cf6ddcSMagnus Damm	depends on SUPERH32 && KEXEC && HIBERNATION && EXPERIMENTAL
645b7cf6ddcSMagnus Damm	help
646b7cf6ddcSMagnus Damm	  Jump between original kernel and kexeced kernel and invoke
647b7cf6ddcSMagnus Damm	  code via KEXEC
648b7cf6ddcSMagnus Damm
649c4637d47SPaul Mundtconfig SECCOMP
650c4637d47SPaul Mundt	bool "Enable seccomp to safely compute untrusted bytecode"
651c4637d47SPaul Mundt	depends on PROC_FS
652c4637d47SPaul Mundt	help
653c4637d47SPaul Mundt	  This kernel feature is useful for number crunching applications
654c4637d47SPaul Mundt	  that may need to compute untrusted bytecode during their
655c4637d47SPaul Mundt	  execution. By using pipes or other transports made available to
656c4637d47SPaul Mundt	  the process as file descriptors supporting the read/write
657c4637d47SPaul Mundt	  syscalls, it's possible to isolate those applications in
658c4637d47SPaul Mundt	  their own address space using seccomp. Once seccomp is
659c4637d47SPaul Mundt	  enabled via prctl, it cannot be disabled and the task is only
660c4637d47SPaul Mundt	  allowed to execute a few safe syscalls defined by each seccomp
661c4637d47SPaul Mundt	  mode.
662c4637d47SPaul Mundt
663c4637d47SPaul Mundt	  If unsure, say N.
664c4637d47SPaul Mundt
665ea0e1a9aSPaul Mundtconfig SMP
666ea0e1a9aSPaul Mundt	bool "Symmetric multi-processing support"
667ea0e1a9aSPaul Mundt	depends on SYS_SUPPORTS_SMP
668490f5de5SJens Axboe	select USE_GENERIC_SMP_HELPERS
669ea0e1a9aSPaul Mundt	---help---
670ea0e1a9aSPaul Mundt	  This enables support for systems with more than one CPU. If you have
671ea0e1a9aSPaul Mundt	  a system with only one CPU, like most personal computers, say N. If
672ea0e1a9aSPaul Mundt	  you have a system with more than one CPU, say Y.
673ea0e1a9aSPaul Mundt
674ea0e1a9aSPaul Mundt	  If you say N here, the kernel will run on single and multiprocessor
675ea0e1a9aSPaul Mundt	  machines, but will use only one CPU of a multiprocessor machine. If
676ea0e1a9aSPaul Mundt	  you say Y here, the kernel will run on many, but not all,
677ea0e1a9aSPaul Mundt	  singleprocessor machines. On a singleprocessor machine, the kernel
678ea0e1a9aSPaul Mundt	  will run faster if you say N here.
679ea0e1a9aSPaul Mundt
680ea0e1a9aSPaul Mundt	  People using multiprocessor machines who say Y here should also say
681ea0e1a9aSPaul Mundt	  Y to "Enhanced Real Time Clock Support", below.
682ea0e1a9aSPaul Mundt
68303502faaSAdrian Bunk	  See also <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO
68403502faaSAdrian Bunk	  available at <http://www.tldp.org/docs.html#howto>.
685ea0e1a9aSPaul Mundt
686ea0e1a9aSPaul Mundt	  If you don't know what to do here, say N.
687ea0e1a9aSPaul Mundt
688ea0e1a9aSPaul Mundtconfig NR_CPUS
689ea0e1a9aSPaul Mundt	int "Maximum number of CPUs (2-32)"
690ea0e1a9aSPaul Mundt	range 2 32
691ea0e1a9aSPaul Mundt	depends on SMP
6922eb2a436SPaul Mundt	default "4" if CPU_SUBTYPE_SHX3
693ea0e1a9aSPaul Mundt	default "2"
694ea0e1a9aSPaul Mundt	help
695ea0e1a9aSPaul Mundt	  This allows you to specify the maximum number of CPUs which this
696ea0e1a9aSPaul Mundt	  kernel will support.  The maximum supported value is 32 and the
697ea0e1a9aSPaul Mundt	  minimum value which makes sense is 2.
698ea0e1a9aSPaul Mundt
699ea0e1a9aSPaul Mundt	  This is purely to save memory - each supported CPU adds
700ea0e1a9aSPaul Mundt	  approximately eight kilobytes to the kernel image.
701ea0e1a9aSPaul Mundt
702ea0e1a9aSPaul Mundtsource "kernel/Kconfig.preempt"
703ea0e1a9aSPaul Mundt
704ea0e1a9aSPaul Mundtconfig GUSA
705ea0e1a9aSPaul Mundt	def_bool y
7061efe4ce3SStuart Menefy	depends on !SMP && SUPERH32
707ea0e1a9aSPaul Mundt	help
708ea0e1a9aSPaul Mundt	  This enables support for gUSA (general UserSpace Atomicity).
709ea0e1a9aSPaul Mundt	  This is the default implementation for both UP and non-ll/sc
710ea0e1a9aSPaul Mundt	  CPUs, and is used by the libc, amongst others.
711ea0e1a9aSPaul Mundt
712ea0e1a9aSPaul Mundt	  For additional information, design information can be found
713ea0e1a9aSPaul Mundt	  in <http://lc.linux.or.jp/lc2002/papers/niibe0919p.pdf>.
714ea0e1a9aSPaul Mundt
715ea0e1a9aSPaul Mundt	  This should only be disabled for special cases where alternate
716ea0e1a9aSPaul Mundt	  atomicity implementations exist.
717ea0e1a9aSPaul Mundt
7181efe4ce3SStuart Menefyconfig GUSA_RB
7191efe4ce3SStuart Menefy	bool "Implement atomic operations by roll-back (gRB) (EXPERIMENTAL)"
7201efe4ce3SStuart Menefy	depends on GUSA && CPU_SH3 || (CPU_SH4 && !CPU_SH4A)
7211efe4ce3SStuart Menefy	help
7221efe4ce3SStuart Menefy	  Enabling this option will allow the kernel to implement some
723692105b8SMatt LaPlante	  atomic operations using a software implementation of load-locked/
7241efe4ce3SStuart Menefy	  store-conditional (LLSC). On machines which do not have hardware
7251efe4ce3SStuart Menefy	  LLSC, this should be more efficient than the other alternative of
726692105b8SMatt LaPlante	  disabling interrupts around the atomic sequence.
7271efe4ce3SStuart Menefy
72854ff328bSPaul Mundtconfig SPARSE_IRQ
72954ff328bSPaul Mundt	bool "Support sparse irq numbering"
73054ff328bSPaul Mundt	depends on EXPERIMENTAL
73154ff328bSPaul Mundt	help
73254ff328bSPaul Mundt	  This enables support for sparse irqs. This is useful in general
73354ff328bSPaul Mundt	  as most CPUs have a fairly sparse array of IRQ vectors, which
73454ff328bSPaul Mundt	  the irq_desc then maps directly on to. Systems with a high
73554ff328bSPaul Mundt	  number of off-chip IRQs will want to treat this as
73654ff328bSPaul Mundt	  experimental until they have been independently verified.
73754ff328bSPaul Mundt
73854ff328bSPaul Mundt	  If you don't know what to do here, say N.
73954ff328bSPaul Mundt
740ea0e1a9aSPaul Mundtendmenu
741ea0e1a9aSPaul Mundt
742ea0e1a9aSPaul Mundtmenu "Boot options"
743ea0e1a9aSPaul Mundt
744ea0e1a9aSPaul Mundtconfig ZERO_PAGE_OFFSET
745b412a49aSPaul Mundt	hex
746b412a49aSPaul Mundt	default "0x00010000" if PAGE_SIZE_64KB || SH_RTS7751R2D || \
747b412a49aSPaul Mundt				SH_7751_SOLUTION_ENGINE
748b412a49aSPaul Mundt	default "0x00004000" if PAGE_SIZE_16KB || SH_SH03
749ea0e1a9aSPaul Mundt	default "0x00002000" if PAGE_SIZE_8KB
750ea0e1a9aSPaul Mundt	default "0x00001000"
751ea0e1a9aSPaul Mundt	help
752ea0e1a9aSPaul Mundt	  This sets the default offset of zero page.
753ea0e1a9aSPaul Mundt
754ea0e1a9aSPaul Mundtconfig BOOT_LINK_OFFSET
755b412a49aSPaul Mundt	hex
756b412a49aSPaul Mundt	default "0x00210000" if SH_SHMIN
757a2e76c80SPaul Mundt	default "0x00400000" if SH_CAYMAN
758b412a49aSPaul Mundt	default "0x00810000" if SH_7780_SOLUTION_ENGINE
759b412a49aSPaul Mundt	default "0x009e0000" if SH_TITAN
760b412a49aSPaul Mundt	default "0x01800000" if SH_SDK7780
761b412a49aSPaul Mundt	default "0x02000000" if SH_EDOSK7760
762ea0e1a9aSPaul Mundt	default "0x00800000"
763ea0e1a9aSPaul Mundt	help
764ea0e1a9aSPaul Mundt	  This option allows you to set the link address offset of the zImage.
765ea0e1a9aSPaul Mundt	  This can be useful if you are on a board which has a small amount of
766ea0e1a9aSPaul Mundt	  memory.
767ea0e1a9aSPaul Mundt
768b412a49aSPaul Mundtconfig ENTRY_OFFSET
769b412a49aSPaul Mundt	hex
770b412a49aSPaul Mundt	default "0x00001000" if PAGE_SIZE_4KB
771b412a49aSPaul Mundt	default "0x00002000" if PAGE_SIZE_8KB
772b412a49aSPaul Mundt	default "0x00004000" if PAGE_SIZE_16KB
773b412a49aSPaul Mundt	default "0x00010000" if PAGE_SIZE_64KB
774b412a49aSPaul Mundt	default "0x00000000"
775b412a49aSPaul Mundt
776d724a9c9SPawel Mollchoice
777d724a9c9SPawel Moll	prompt "Kernel command line"
778d724a9c9SPawel Moll	optional
779d724a9c9SPawel Moll	default CMDLINE_OVERWRITE
780d724a9c9SPawel Moll	help
781d724a9c9SPawel Moll	  Setting this option allows the kernel command line arguments
782d724a9c9SPawel Moll	  to be set.
783d724a9c9SPawel Moll
784d724a9c9SPawel Mollconfig CMDLINE_OVERWRITE
785d724a9c9SPawel Moll	bool "Overwrite bootloader kernel arguments"
786d724a9c9SPawel Moll	help
787d724a9c9SPawel Moll	  Given string will overwrite any arguments passed in by
788d724a9c9SPawel Moll	  a bootloader.
789d724a9c9SPawel Moll
790d724a9c9SPawel Mollconfig CMDLINE_EXTEND
791d724a9c9SPawel Moll	bool "Extend bootloader kernel arguments"
792d724a9c9SPawel Moll	help
793d724a9c9SPawel Moll	  Given string will be concatenated with arguments passed in
794d724a9c9SPawel Moll	  by a bootloader.
795d724a9c9SPawel Moll
796d724a9c9SPawel Mollendchoice
797ea0e1a9aSPaul Mundt
798ea0e1a9aSPaul Mundtconfig CMDLINE
799d724a9c9SPawel Moll	string "Kernel command line arguments string"
800d724a9c9SPawel Moll	depends on CMDLINE_OVERWRITE || CMDLINE_EXTEND
801ea0e1a9aSPaul Mundt	default "console=ttySC1,115200"
802ea0e1a9aSPaul Mundt
803ea0e1a9aSPaul Mundtendmenu
804ea0e1a9aSPaul Mundt
805ea0e1a9aSPaul Mundtmenu "Bus options"
806ea0e1a9aSPaul Mundt
807ea0e1a9aSPaul Mundtconfig SUPERHYWAY
808ea0e1a9aSPaul Mundt	tristate "SuperHyway Bus support"
809ea0e1a9aSPaul Mundt	depends on CPU_SUBTYPE_SH4_202
810ea0e1a9aSPaul Mundt
811ea0e1a9aSPaul Mundtconfig MAPLE
812ea0e1a9aSPaul Mundt	bool "Maple Bus support"
813ea0e1a9aSPaul Mundt	depends on SH_DREAMCAST
814ea0e1a9aSPaul Mundt	help
815ea0e1a9aSPaul Mundt	 The Maple Bus is SEGA's serial communication bus for peripherals
816ea0e1a9aSPaul Mundt	 on the Dreamcast. Without this bus support you won't be able to
817ea0e1a9aSPaul Mundt	 get your Dreamcast keyboard etc to work, so most users
818ea0e1a9aSPaul Mundt	 probably want to say 'Y' here, unless you are only using the
819ea0e1a9aSPaul Mundt	 Dreamcast with a serial line terminal or a remote network
820ea0e1a9aSPaul Mundt	 connection.
821ea0e1a9aSPaul Mundt
8227693465dSPaul Mundtconfig PCI
8237693465dSPaul Mundt	bool "PCI support"
8247693465dSPaul Mundt	depends on SYS_SUPPORTS_PCI
8257693465dSPaul Mundt	help
8267693465dSPaul Mundt	  Find out whether you have a PCI motherboard. PCI is the name of a
8277693465dSPaul Mundt	  bus system, i.e. the way the CPU talks to the other stuff inside
8287693465dSPaul Mundt	  your box. If you have PCI, say Y, otherwise N.
829ea0e1a9aSPaul Mundt
830e16038abSPaul Mundtsource "drivers/pci/pcie/Kconfig"
831e16038abSPaul Mundt
832ea0e1a9aSPaul Mundtsource "drivers/pci/Kconfig"
833ea0e1a9aSPaul Mundt
834ea0e1a9aSPaul Mundtsource "drivers/pcmcia/Kconfig"
835ea0e1a9aSPaul Mundt
836ea0e1a9aSPaul Mundtsource "drivers/pci/hotplug/Kconfig"
837ea0e1a9aSPaul Mundt
838ea0e1a9aSPaul Mundtendmenu
839ea0e1a9aSPaul Mundt
840ea0e1a9aSPaul Mundtmenu "Executable file formats"
841ea0e1a9aSPaul Mundt
842ea0e1a9aSPaul Mundtsource "fs/Kconfig.binfmt"
843ea0e1a9aSPaul Mundt
844ea0e1a9aSPaul Mundtendmenu
845ea0e1a9aSPaul Mundt
846ea0e1a9aSPaul Mundtmenu "Power management options (EXPERIMENTAL)"
847af998a9aSMagnus Dammdepends on EXPERIMENTAL
848f4cb5700SJohannes Berg
849c6f17cb2SMagnus Dammsource "kernel/power/Kconfig"
850c6f17cb2SMagnus Damm
851c6f17cb2SMagnus Dammsource "drivers/cpuidle/Kconfig"
852ea0e1a9aSPaul Mundt
853ea0e1a9aSPaul Mundtendmenu
854ea0e1a9aSPaul Mundt
855ea0e1a9aSPaul Mundtsource "net/Kconfig"
856ea0e1a9aSPaul Mundt
857ea0e1a9aSPaul Mundtsource "drivers/Kconfig"
858ea0e1a9aSPaul Mundt
859ea0e1a9aSPaul Mundtsource "fs/Kconfig"
860ea0e1a9aSPaul Mundt
861ea0e1a9aSPaul Mundtsource "arch/sh/Kconfig.debug"
862ea0e1a9aSPaul Mundt
863ea0e1a9aSPaul Mundtsource "security/Kconfig"
864ea0e1a9aSPaul Mundt
865ea0e1a9aSPaul Mundtsource "crypto/Kconfig"
866ea0e1a9aSPaul Mundt
867ea0e1a9aSPaul Mundtsource "lib/Kconfig"
868