blob: 5e4babecf934067645ff92704a25cb0bb2458a1a [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001#
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
Paul Mundtea0e1a92007-11-21 15:58:01 +09009 def_bool y
Paul Mundt7a440c92006-09-27 18:18:31 +090010 select EMBEDDED
David Brownell9483a572008-07-23 21:26:48 -070011 select HAVE_CLK
Sam Ravnborgec7748b2008-02-09 10:46:40 +010012 select HAVE_IDE
Mathieu Desnoyers42d4b832008-02-02 15:10:34 -050013 select HAVE_OPROFILE
Dmitry Baryshkov9de90ac2008-07-18 13:30:31 +040014 select HAVE_GENERIC_DMA_COHERENT
Paul Mundt21944782008-09-17 23:26:44 +090015 select HAVE_IOREMAP_PROT if MMU
Paul Mundtd7b01f72008-12-10 20:17:15 +090016 select HAVE_ARCH_TRACEHOOK
Linus Torvalds1da177e2005-04-16 15:20:36 -070017 help
18 The SuperH is a RISC processor targeted for use in embedded systems
19 and consumer electronics; it was also used in the Sega Dreamcast
20 gaming console. The SuperH port has a home page at
21 <http://www.linux-sh.org/>.
22
Paul Mundt39d28a22007-11-08 18:39:33 +090023config SUPERH32
Paul Mundtea0e1a92007-11-21 15:58:01 +090024 def_bool !SUPERH64
Chris Smithd39f5452008-09-05 17:15:39 +090025 select HAVE_KPROBES
26 select HAVE_KRETPROBES
Paul Mundt694f94f2008-10-31 16:20:36 +090027 select HAVE_FUNCTION_TRACER
Matt Flemingfad57fe2008-11-12 20:11:47 +090028 select HAVE_FTRACE_MCOUNT_RECORD
29 select HAVE_DYNAMIC_FTRACE
Paul Mundtab6e5702008-12-11 18:46:46 +090030 select HAVE_ARCH_KGDB
Paul Mundt8dafc342009-04-02 11:56:38 +090031 select ARCH_HIBERNATION_POSSIBLE if MMU
Paul Mundtea0e1a92007-11-21 15:58:01 +090032
33config SUPERH64
34 def_bool y if CPU_SH5
Paul Mundt39d28a22007-11-08 18:39:33 +090035
Paul Mundtf42b7e32008-07-29 20:12:51 +090036config ARCH_DEFCONFIG
37 string
38 default "arch/sh/configs/shx3_defconfig" if SUPERH32
39 default "arch/sh/configs/cayman_defconfig" if SUPERH64
40
Linus Torvalds1da177e2005-04-16 15:20:36 -070041config RWSEM_GENERIC_SPINLOCK
Harvey Harrisond7ef4fb2007-12-11 13:49:35 +090042 def_bool y
Linus Torvalds1da177e2005-04-16 15:20:36 -070043
44config RWSEM_XCHGADD_ALGORITHM
45 bool
46
Paul Mundtfa691512007-03-08 19:41:21 +090047config GENERIC_BUG
48 def_bool y
Paul Mundta82d53e2007-11-21 18:22:05 +090049 depends on BUG && SUPERH32
Paul Mundtfa691512007-03-08 19:41:21 +090050
Akinobu Mitae2268c72006-03-26 01:39:35 -080051config GENERIC_FIND_NEXT_BIT
Harvey Harrisond7ef4fb2007-12-11 13:49:35 +090052 def_bool y
Akinobu Mitae2268c72006-03-26 01:39:35 -080053
54config GENERIC_HWEIGHT
Harvey Harrisond7ef4fb2007-12-11 13:49:35 +090055 def_bool y
Akinobu Mitae2268c72006-03-26 01:39:35 -080056
Linus Torvalds1da177e2005-04-16 15:20:36 -070057config GENERIC_HARDIRQS
Harvey Harrisond7ef4fb2007-12-11 13:49:35 +090058 def_bool y
Linus Torvalds1da177e2005-04-16 15:20:36 -070059
Paul Mundt5093c9a2008-08-04 14:17:13 +090060config GENERIC_HARDIRQS_NO__DO_IRQ
61 def_bool y
62
Linus Torvalds1da177e2005-04-16 15:20:36 -070063config GENERIC_IRQ_PROBE
Harvey Harrisond7ef4fb2007-12-11 13:49:35 +090064 def_bool y
Linus Torvalds1da177e2005-04-16 15:20:36 -070065
Magnus Damm2967dab2008-10-08 20:41:43 +090066config GENERIC_GPIO
67 def_bool n
68
Linus Torvalds1da177e2005-04-16 15:20:36 -070069config GENERIC_CALIBRATE_DELAY
Paul Mundtcf204fa2008-09-08 20:47:42 +090070 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -070071
Paul Mundtcad82442006-01-16 22:14:19 -080072config GENERIC_IOMAP
73 bool
74
Paul Mundt45882142006-10-04 13:21:45 +090075config GENERIC_TIME
76 def_bool n
77
Paul Mundt57be2b42007-05-09 17:33:24 +090078config GENERIC_CLOCKEVENTS
79 def_bool n
80
Paul Mundt8c245942008-08-06 18:37:07 +090081config GENERIC_CLOCKEVENTS_BROADCAST
82 bool
83
Paul Mundtbdcab872008-08-04 14:09:15 +090084config GENERIC_LOCKBREAK
85 def_bool y
86 depends on SMP && PREEMPT
87
Paul Mundt357d5942007-06-11 15:32:07 +090088config SYS_SUPPORTS_PM
89 bool
Magnus Dammaf998a92008-12-04 22:45:12 +090090 depends on !SMP
91
92config ARCH_SUSPEND_POSSIBLE
93 def_bool n
94
95config ARCH_HIBERNATION_POSSIBLE
96 def_bool n
Paul Mundt357d5942007-06-11 15:32:07 +090097
Paul Mundt0a9b0db2007-01-24 21:56:20 +090098config SYS_SUPPORTS_APM_EMULATION
99 bool
Magnus Dammaf998a92008-12-04 22:45:12 +0900100 select ARCH_SUSPEND_POSSIBLE
Paul Mundt357d5942007-06-11 15:32:07 +0900101
102config SYS_SUPPORTS_SMP
103 bool
104
105config SYS_SUPPORTS_NUMA
106 bool
107
108config SYS_SUPPORTS_PCI
109 bool
Paul Mundt0a9b0db2007-01-24 21:56:20 +0900110
Paul Mundtf5ad8812009-01-29 18:08:58 +0900111config SYS_SUPPORTS_CMT
112 bool
113
Paul Mundtafbfb522006-12-04 18:17:28 +0900114config STACKTRACE_SUPPORT
Harvey Harrisond7ef4fb2007-12-11 13:49:35 +0900115 def_bool y
Paul Mundtafbfb522006-12-04 18:17:28 +0900116
117config LOCKDEP_SUPPORT
Harvey Harrisond7ef4fb2007-12-11 13:49:35 +0900118 def_bool y
Paul Mundtafbfb522006-12-04 18:17:28 +0900119
Paul Mundt5a89f1a2008-09-13 01:44:03 +0900120config HAVE_LATENCYTOP_SUPPORT
121 def_bool y
122 depends on !SMP
123
David Howellsf0d1b0b2006-12-08 02:37:49 -0800124config ARCH_HAS_ILOG2_U32
Harvey Harrisond7ef4fb2007-12-11 13:49:35 +0900125 def_bool n
David Howellsf0d1b0b2006-12-08 02:37:49 -0800126
127config ARCH_HAS_ILOG2_U64
Harvey Harrisond7ef4fb2007-12-11 13:49:35 +0900128 def_bool n
David Howellsf0d1b0b2006-12-08 02:37:49 -0800129
Paul Mundte257ad02007-07-25 11:18:00 +0900130config ARCH_NO_VIRT_TO_BUS
131 def_bool y
132
Paul Mundte869a902009-04-02 13:08:31 +0900133config ARCH_HAS_DEFAULT_IDLE
134 def_bool y
135
Magnus Damme7cc9a72008-02-07 20:18:21 +0900136config IO_TRAPPED
137 bool
138
Linus Torvalds1da177e2005-04-16 15:20:36 -0700139source "init/Kconfig"
140
Matt Helsleydc52ddc2008-10-18 20:27:21 -0700141source "kernel/Kconfig.freezer"
142
Linus Torvalds1da177e2005-04-16 15:20:36 -0700143menu "System type"
144
Paul Mundtb5f42db2007-11-08 18:38:14 +0900145#
146# Processor families
147#
148config CPU_SH2
149 bool
150
151config CPU_SH2A
152 bool
153 select CPU_SH2
154
155config CPU_SH3
156 bool
157 select CPU_HAS_INTEVT
158 select CPU_HAS_SR_RB
159
160config CPU_SH4
161 bool
162 select CPU_HAS_INTEVT
163 select CPU_HAS_SR_RB
164 select CPU_HAS_PTEA if !CPU_SH4A || CPU_SHX2
165 select CPU_HAS_FPU if !CPU_SH4AL_DSP
166
167config CPU_SH4A
168 bool
169 select CPU_SH4
170
171config CPU_SH4AL_DSP
172 bool
173 select CPU_SH4A
174 select CPU_HAS_DSP
175
Paul Mundtea0e1a92007-11-21 15:58:01 +0900176config CPU_SH5
177 bool
178 select CPU_HAS_FPU
179
Paul Mundtb5f42db2007-11-08 18:38:14 +0900180config CPU_SHX2
181 bool
182
183config CPU_SHX3
184 bool
185
Paul Mundtdc65a972009-03-10 16:26:29 +0900186config ARCH_SHMOBILE
187 bool
Magnus Damm77594912009-03-13 15:23:04 +0000188 select ARCH_SUSPEND_POSSIBLE
Paul Mundtdc65a972009-03-10 16:26:29 +0900189
Paul Mundtb5f42db2007-11-08 18:38:14 +0900190choice
191 prompt "Processor sub-type selection"
192
193#
194# Processor subtypes
195#
196
197# SH-2 Processor Support
198
199config CPU_SUBTYPE_SH7619
200 bool "Support SH7619 processor"
201 select CPU_SH2
Paul Mundtf5ad8812009-01-29 18:08:58 +0900202 select SYS_SUPPORTS_CMT
Paul Mundtb5f42db2007-11-08 18:38:14 +0900203
204# SH-2A Processor Support
205
Peter Griffin28259992008-11-28 22:48:20 +0900206config CPU_SUBTYPE_SH7201
207 bool "Support SH7201 processor"
208 select CPU_SH2A
209 select CPU_HAS_FPU
210
Paul Mundt6d01f512007-11-26 18:17:21 +0900211config CPU_SUBTYPE_SH7203
212 bool "Support SH7203 processor"
213 select CPU_SH2A
Paul Mundt74d99a52007-11-26 20:38:36 +0900214 select CPU_HAS_FPU
Paul Mundtf5ad8812009-01-29 18:08:58 +0900215 select SYS_SUPPORTS_CMT
Paul Mundt6d01f512007-11-26 18:17:21 +0900216
Paul Mundtb5f42db2007-11-08 18:38:14 +0900217config CPU_SUBTYPE_SH7206
218 bool "Support SH7206 processor"
219 select CPU_SH2A
Paul Mundtf5ad8812009-01-29 18:08:58 +0900220 select SYS_SUPPORTS_CMT
Paul Mundtb5f42db2007-11-08 18:38:14 +0900221
Paul Mundta8f67f42007-11-26 19:54:02 +0900222config CPU_SUBTYPE_SH7263
223 bool "Support SH7263 processor"
224 select CPU_SH2A
Paul Mundt74d99a52007-11-26 20:38:36 +0900225 select CPU_HAS_FPU
Paul Mundtf5ad8812009-01-29 18:08:58 +0900226 select SYS_SUPPORTS_CMT
Paul Mundta8f67f42007-11-26 19:54:02 +0900227
Paul Mundt2ad69902008-03-13 12:52:44 +0900228config CPU_SUBTYPE_MXG
229 bool "Support MX-G processor"
230 select CPU_SH2A
231 help
232 Select MX-G if running on an R8A03022BG part.
233
Paul Mundtb5f42db2007-11-08 18:38:14 +0900234# SH-3 Processor Support
235
236config CPU_SUBTYPE_SH7705
237 bool "Support SH7705 processor"
238 select CPU_SH3
239
240config CPU_SUBTYPE_SH7706
241 bool "Support SH7706 processor"
242 select CPU_SH3
243 help
244 Select SH7706 if you have a 133 Mhz SH-3 HD6417706 CPU.
245
246config CPU_SUBTYPE_SH7707
247 bool "Support SH7707 processor"
248 select CPU_SH3
249 help
250 Select SH7707 if you have a 60 Mhz SH-3 HD6417707 CPU.
251
252config CPU_SUBTYPE_SH7708
253 bool "Support SH7708 processor"
254 select CPU_SH3
255 help
256 Select SH7708 if you have a 60 Mhz SH-3 HD6417708S or
257 if you have a 100 Mhz SH-3 HD6417708R CPU.
258
259config CPU_SUBTYPE_SH7709
260 bool "Support SH7709 processor"
261 select CPU_SH3
262 help
263 Select SH7709 if you have a 80 Mhz SH-3 HD6417709 CPU.
264
265config CPU_SUBTYPE_SH7710
266 bool "Support SH7710 processor"
267 select CPU_SH3
268 select CPU_HAS_DSP
269 help
270 Select SH7710 if you have a SH3-DSP SH7710 CPU.
271
272config CPU_SUBTYPE_SH7712
273 bool "Support SH7712 processor"
274 select CPU_SH3
275 select CPU_HAS_DSP
276 help
277 Select SH7712 if you have a SH3-DSP SH7712 CPU.
278
279config CPU_SUBTYPE_SH7720
280 bool "Support SH7720 processor"
281 select CPU_SH3
282 select CPU_HAS_DSP
283 help
284 Select SH7720 if you have a SH3-DSP SH7720 CPU.
285
Yoshihiro Shimoda31a49c42007-12-26 11:45:06 +0900286config CPU_SUBTYPE_SH7721
287 bool "Support SH7721 processor"
288 select CPU_SH3
289 select CPU_HAS_DSP
290 help
291 Select SH7721 if you have a SH3-DSP SH7721 CPU.
292
Paul Mundtb5f42db2007-11-08 18:38:14 +0900293# SH-4 Processor Support
294
295config CPU_SUBTYPE_SH7750
296 bool "Support SH7750 processor"
297 select CPU_SH4
298 help
299 Select SH7750 if you have a 200 Mhz SH-4 HD6417750 CPU.
300
301config CPU_SUBTYPE_SH7091
302 bool "Support SH7091 processor"
303 select CPU_SH4
304 help
305 Select SH7091 if you have an SH-4 based Sega device (such as
306 the Dreamcast, Naomi, and Naomi 2).
307
308config CPU_SUBTYPE_SH7750R
309 bool "Support SH7750R processor"
310 select CPU_SH4
311
312config CPU_SUBTYPE_SH7750S
313 bool "Support SH7750S processor"
314 select CPU_SH4
315
316config CPU_SUBTYPE_SH7751
317 bool "Support SH7751 processor"
318 select CPU_SH4
319 help
320 Select SH7751 if you have a 166 Mhz SH-4 HD6417751 CPU,
321 or if you have a HD6417751R CPU.
322
323config CPU_SUBTYPE_SH7751R
324 bool "Support SH7751R processor"
325 select CPU_SH4
326
327config CPU_SUBTYPE_SH7760
328 bool "Support SH7760 processor"
329 select CPU_SH4
330
331config CPU_SUBTYPE_SH4_202
332 bool "Support SH4-202 processor"
333 select CPU_SH4
334
335# SH-4A Processor Support
336
Paul Mundt178dd0c2008-04-09 17:56:18 +0900337config CPU_SUBTYPE_SH7723
338 bool "Support SH7723 processor"
339 select CPU_SH4A
340 select CPU_SHX2
Paul Mundtdc65a972009-03-10 16:26:29 +0900341 select ARCH_SHMOBILE
Paul Mundt178dd0c2008-04-09 17:56:18 +0900342 select ARCH_SPARSEMEM_ENABLE
Paul Mundtf5ad8812009-01-29 18:08:58 +0900343 select SYS_SUPPORTS_CMT
Paul Mundt178dd0c2008-04-09 17:56:18 +0900344 help
345 Select SH7723 if you have an SH-MobileR2 CPU.
346
Yoshihiro Shimoda7d740a02008-01-07 14:40:07 +0900347config CPU_SUBTYPE_SH7763
348 bool "Support SH7763 processor"
349 select CPU_SH4A
350 help
351 Select SH7763 if you have a SH4A SH7763(R5S77631) CPU.
352
Paul Mundtb5f42db2007-11-08 18:38:14 +0900353config CPU_SUBTYPE_SH7770
354 bool "Support SH7770 processor"
355 select CPU_SH4A
356
357config CPU_SUBTYPE_SH7780
358 bool "Support SH7780 processor"
359 select CPU_SH4A
360
361config CPU_SUBTYPE_SH7785
362 bool "Support SH7785 processor"
363 select CPU_SH4A
364 select CPU_SHX2
365 select ARCH_SPARSEMEM_ENABLE
366 select SYS_SUPPORTS_NUMA
367
Kuninori Morimoto55ba99e2009-03-03 15:40:25 +0900368config CPU_SUBTYPE_SH7786
369 bool "Support SH7786 processor"
370 select CPU_SH4A
Paul Mundt37042fb2009-03-03 15:57:02 +0900371 select CPU_SHX3
Paul Mundt8263a672009-03-17 17:49:49 +0900372 select CPU_HAS_PTEAEX
Kuninori Morimoto55ba99e2009-03-03 15:40:25 +0900373 select ARCH_SPARSEMEM_ENABLE
374 select SYS_SUPPORTS_NUMA
375
Paul Mundtb5f42db2007-11-08 18:38:14 +0900376config CPU_SUBTYPE_SHX3
377 bool "Support SH-X3 processor"
378 select CPU_SH4A
379 select CPU_SHX3
380 select ARCH_SPARSEMEM_ENABLE
381 select SYS_SUPPORTS_NUMA
382 select SYS_SUPPORTS_SMP
Paul Mundt58402632008-09-05 15:36:39 +0900383 select GENERIC_CLOCKEVENTS_BROADCAST if SMP
Paul Mundtb5f42db2007-11-08 18:38:14 +0900384
385# SH4AL-DSP Processor Support
386
387config CPU_SUBTYPE_SH7343
388 bool "Support SH7343 processor"
389 select CPU_SH4AL_DSP
Paul Mundtdc65a972009-03-10 16:26:29 +0900390 select ARCH_SHMOBILE
Paul Mundtf5ad8812009-01-29 18:08:58 +0900391 select SYS_SUPPORTS_CMT
Paul Mundtb5f42db2007-11-08 18:38:14 +0900392
393config CPU_SUBTYPE_SH7722
394 bool "Support SH7722 processor"
395 select CPU_SH4AL_DSP
396 select CPU_SHX2
Paul Mundtdc65a972009-03-10 16:26:29 +0900397 select ARCH_SHMOBILE
Paul Mundtb5f42db2007-11-08 18:38:14 +0900398 select ARCH_SPARSEMEM_ENABLE
399 select SYS_SUPPORTS_NUMA
Paul Mundtf5ad8812009-01-29 18:08:58 +0900400 select SYS_SUPPORTS_CMT
Paul Mundtb5f42db2007-11-08 18:38:14 +0900401
Magnus Damm9109a302008-02-08 17:31:24 +0900402config CPU_SUBTYPE_SH7366
403 bool "Support SH7366 processor"
404 select CPU_SH4AL_DSP
405 select CPU_SHX2
Paul Mundtdc65a972009-03-10 16:26:29 +0900406 select ARCH_SHMOBILE
Magnus Damm9109a302008-02-08 17:31:24 +0900407 select ARCH_SPARSEMEM_ENABLE
408 select SYS_SUPPORTS_NUMA
Paul Mundtf5ad8812009-01-29 18:08:58 +0900409 select SYS_SUPPORTS_CMT
Magnus Damm9109a302008-02-08 17:31:24 +0900410
Paul Mundtea0e1a92007-11-21 15:58:01 +0900411# SH-5 Processor Support
412
413config CPU_SUBTYPE_SH5_101
414 bool "Support SH5-101 processor"
415 select CPU_SH5
416
417config CPU_SUBTYPE_SH5_103
418 bool "Support SH5-103 processor"
Paul Mundt8ef97dd2008-02-14 15:30:54 +0900419 select CPU_SH5
Paul Mundtea0e1a92007-11-21 15:58:01 +0900420
Paul Mundtb5f42db2007-11-08 18:38:14 +0900421endchoice
422
Paul Mundtcad82442006-01-16 22:14:19 -0800423source "arch/sh/mm/Kconfig"
Paul Mundt939a24a2008-07-29 21:41:37 +0900424
Paul Mundt4690bdc2007-11-09 13:45:42 +0900425source "arch/sh/Kconfig.cpu"
Paul Mundtcad82442006-01-16 22:14:19 -0800426
Paul Mundt939a24a2008-07-29 21:41:37 +0900427source "arch/sh/boards/Kconfig"
Paul Mundtf3d22292007-05-14 17:29:12 +0900428
Paul Mundt32351a22007-03-12 14:38:59 +0900429menu "Timer and clock configuration"
430
Paul Mundtcad82442006-01-16 22:14:19 -0800431config SH_TMU
Paul Mundtf5ad8812009-01-29 18:08:58 +0900432 bool "TMU timer support"
Yoshinori Sato9d4436a2006-11-05 15:40:13 +0900433 depends on CPU_SH3 || CPU_SH4
Paul Mundtf5ad8812009-01-29 18:08:58 +0900434 default y
Paul Mundt57be2b42007-05-09 17:33:24 +0900435 select GENERIC_TIME
436 select GENERIC_CLOCKEVENTS
Paul Mundtcad82442006-01-16 22:14:19 -0800437 help
438 This enables the use of the TMU as the system timer.
439
Yoshinori Sato9d4436a2006-11-05 15:40:13 +0900440config SH_CMT
Paul Mundtf5ad8812009-01-29 18:08:58 +0900441 bool "CMT timer support"
Paul Mundt508eb2c2009-02-04 15:28:06 +0900442 depends on SYS_SUPPORTS_CMT && CPU_SH2
Paul Mundtf5ad8812009-01-29 18:08:58 +0900443 default y
Yoshinori Sato9d4436a2006-11-05 15:40:13 +0900444 help
445 This enables the use of the CMT as the system timer.
446
Paul Mundtf5ad8812009-01-29 18:08:58 +0900447#
448# Support for the new-style CMT driver. This will replace SH_CMT
449# once its other dependencies are merged.
450#
451config SH_TIMER_CMT
452 bool "CMT clockevents driver"
453 depends on SYS_SUPPORTS_CMT && !SH_CMT
Paul Mundtf5ad8812009-01-29 18:08:58 +0900454 select GENERIC_CLOCKEVENTS
455
Yoshinori Sato9d4436a2006-11-05 15:40:13 +0900456config SH_MTU2
Paul Mundtf5ad8812009-01-29 18:08:58 +0900457 bool "MTU2 timer support"
Yoshinori Sato9d4436a2006-11-05 15:40:13 +0900458 depends on CPU_SH2A
Paul Mundtf5ad8812009-01-29 18:08:58 +0900459 default y
Yoshinori Sato9d4436a2006-11-05 15:40:13 +0900460 help
461 This enables the use of the MTU2 as the system timer.
462
Paul Mundt417528a2006-11-20 11:18:30 +0900463config SH_TIMER_IRQ
464 int
Yoshihiro Shimoda7d740a02008-01-07 14:40:07 +0900465 default "28" if CPU_SUBTYPE_SH7780 || CPU_SUBTYPE_SH7785 || \
466 CPU_SUBTYPE_SH7763
Paul Mundt417528a2006-11-20 11:18:30 +0900467 default "86" if CPU_SUBTYPE_SH7619
468 default "140" if CPU_SUBTYPE_SH7206
Paul Mundtd63f3a52009-01-29 18:10:13 +0900469 default "142" if CPU_SUBTYPE_SH7203 && SH_CMT
470 default "153" if CPU_SUBTYPE_SH7203 && SH_MTU2
Paul Mundt2ad69902008-03-13 12:52:44 +0900471 default "238" if CPU_SUBTYPE_MXG
Paul Mundt417528a2006-11-20 11:18:30 +0900472 default "16"
473
Paul Mundtcad82442006-01-16 22:14:19 -0800474config SH_PCLK_FREQ
475 int "Peripheral clock frequency (in Hz)"
Magnus Damm870e8a22007-07-25 10:49:21 +0900476 default "27000000" if CPU_SUBTYPE_SH7343
Yoshinori Sato9d4436a2006-11-05 15:40:13 +0900477 default "31250000" if CPU_SUBTYPE_SH7619
Paul Mundt05627482007-05-15 16:25:47 +0900478 default "32000000" if CPU_SUBTYPE_SH7722
Paul Mundt178dd0c2008-04-09 17:56:18 +0900479 default "33333333" if CPU_SUBTYPE_SH7770 || CPU_SUBTYPE_SH7723 || \
Yoshinori Sato9d4436a2006-11-05 15:40:13 +0900480 CPU_SUBTYPE_SH7760 || CPU_SUBTYPE_SH7705 || \
Paul Mundta8f67f42007-11-26 19:54:02 +0900481 CPU_SUBTYPE_SH7203 || CPU_SUBTYPE_SH7206 || \
Paul Mundta4b1fdd2009-03-05 17:52:34 +0900482 CPU_SUBTYPE_SH7263 || CPU_SUBTYPE_MXG || \
483 CPU_SUBTYPE_SH7786
Paul Mundt05627482007-05-15 16:25:47 +0900484 default "60000000" if CPU_SUBTYPE_SH7751 || CPU_SUBTYPE_SH7751R
Paul Mundtcad82442006-01-16 22:14:19 -0800485 default "66000000" if CPU_SUBTYPE_SH4_202
Paul Mundt05627482007-05-15 16:25:47 +0900486 default "50000000"
Paul Mundtcad82442006-01-16 22:14:19 -0800487 help
488 This option is used to specify the peripheral clock frequency.
489 This is necessary for determining the reference clock value on
490 platforms lacking an RTC.
491
Yoshinori Sato9d4436a2006-11-05 15:40:13 +0900492config SH_CLK_MD
493 int "CPU Mode Pin Setting"
Paul Mundt6d01f512007-11-26 18:17:21 +0900494 depends on CPU_SH2
Paul Mundt357d5942007-06-11 15:32:07 +0900495 default 6 if CPU_SUBTYPE_SH7206
496 default 5 if CPU_SUBTYPE_SH7619
497 default 0
Yoshinori Sato9d4436a2006-11-05 15:40:13 +0900498 help
Yoshinori Sato11cbb702006-12-07 18:07:27 +0900499 MD2 - MD0 pin setting.
Yoshinori Sato9d4436a2006-11-05 15:40:13 +0900500
Paul Mundt57be2b42007-05-09 17:33:24 +0900501source "kernel/time/Kconfig"
502
Paul Mundt32351a22007-03-12 14:38:59 +0900503endmenu
504
Paul Mundtcad82442006-01-16 22:14:19 -0800505menu "CPU Frequency scaling"
506
507source "drivers/cpufreq/Kconfig"
508
509config SH_CPU_FREQ
510 tristate "SuperH CPU Frequency driver"
Paul Mundtcb5ec752007-07-20 13:38:19 +0900511 depends on CPU_FREQ
Paul Mundtcad82442006-01-16 22:14:19 -0800512 select CPU_FREQ_TABLE
513 help
Paul Mundt8a655052008-12-17 15:06:54 +0900514 This adds the cpufreq driver for SuperH. Any CPU that supports
515 clock rate rounding through the clock framework can use this
516 driver. While it will make the kernel slightly larger, this is
517 harmless for CPUs that don't support rate rounding. The driver
518 will also generate a notice in the boot log before disabling
519 itself if the CPU in question is not capable of rate rounding.
Paul Mundtcad82442006-01-16 22:14:19 -0800520
521 For details, take a look at <file:Documentation/cpu-freq>.
522
523 If unsure, say N.
524
525endmenu
526
Paul Mundt9f5e8ee2006-11-24 11:22:57 +0900527source "arch/sh/drivers/Kconfig"
528
Paul Mundtcad82442006-01-16 22:14:19 -0800529endmenu
530
Paul Mundtcad82442006-01-16 22:14:19 -0800531menu "Kernel features"
532
Paul Mundt91b91d02006-09-27 18:08:33 +0900533source kernel/Kconfig.hz
534
Paul Mundtcad82442006-01-16 22:14:19 -0800535config KEXEC
536 bool "kexec system call (EXPERIMENTAL)"
Nobuhiro Iwamatsuf36b59d2009-03-26 08:32:37 +0000537 depends on SUPERH32 && EXPERIMENTAL && MMU
Paul Mundtcad82442006-01-16 22:14:19 -0800538 help
539 kexec is a system call that implements the ability to shutdown your
540 current kernel, and to start another kernel. It is like a reboot
Matt LaPlante1f1332f2006-06-29 01:32:47 -0400541 but it is independent of the system firmware. And like a reboot
Paul Mundtcad82442006-01-16 22:14:19 -0800542 you can start any kernel with it, not just Linux.
543
Matt LaPlante1f1332f2006-06-29 01:32:47 -0400544 The name comes from the similarity to the exec system call.
Paul Mundtcad82442006-01-16 22:14:19 -0800545
546 It is an ongoing process to be certain the hardware in a machine
547 is properly shutdown, so do not be surprised if this code does not
548 initially work for you. It may help to enable device hotplugging
549 support. As of this writing the exact hardware interface is
550 strongly in flux, so no good recommendation can be made.
551
Paul Mundt4d5ade52007-04-27 11:25:57 +0900552config CRASH_DUMP
553 bool "kernel crash dumps (EXPERIMENTAL)"
Paul Mundt640f7482008-04-25 13:04:56 +0900554 depends on SUPERH32 && EXPERIMENTAL
Paul Mundt4d5ade52007-04-27 11:25:57 +0900555 help
556 Generate crash dump after being started by kexec.
557 This should be normally only set in special crash dump kernels
558 which are loaded in the main kernel with kexec-tools into
559 a specially reserved region and then later executed after
560 a crash by kdump/kexec. The crash dump kernel must be compiled
561 to a memory address not used by the main kernel using
562 MEMORY_START.
563
564 For more details see Documentation/kdump/kdump.txt
565
Magnus Dammb7cf6dd2009-03-18 08:51:29 +0000566config KEXEC_JUMP
567 bool "kexec jump (EXPERIMENTAL)"
568 depends on SUPERH32 && KEXEC && HIBERNATION && EXPERIMENTAL
569 help
570 Jump between original kernel and kexeced kernel and invoke
571 code via KEXEC
572
Paul Mundtc4637d42008-07-30 15:30:52 +0900573config SECCOMP
574 bool "Enable seccomp to safely compute untrusted bytecode"
575 depends on PROC_FS
Paul Mundtc4637d42008-07-30 15:30:52 +0900576 help
577 This kernel feature is useful for number crunching applications
578 that may need to compute untrusted bytecode during their
579 execution. By using pipes or other transports made available to
580 the process as file descriptors supporting the read/write
581 syscalls, it's possible to isolate those applications in
582 their own address space using seccomp. Once seccomp is
583 enabled via prctl, it cannot be disabled and the task is only
584 allowed to execute a few safe syscalls defined by each seccomp
585 mode.
586
587 If unsure, say N.
588
Linus Torvalds1da177e2005-04-16 15:20:36 -0700589config SMP
590 bool "Symmetric multi-processing support"
Paul Mundt357d5942007-06-11 15:32:07 +0900591 depends on SYS_SUPPORTS_SMP
Jens Axboe490f5de2008-06-10 20:52:59 +0200592 select USE_GENERIC_SMP_HELPERS
Linus Torvalds1da177e2005-04-16 15:20:36 -0700593 ---help---
594 This enables support for systems with more than one CPU. If you have
595 a system with only one CPU, like most personal computers, say N. If
596 you have a system with more than one CPU, say Y.
597
598 If you say N here, the kernel will run on single and multiprocessor
599 machines, but will use only one CPU of a multiprocessor machine. If
600 you say Y here, the kernel will run on many, but not all,
601 singleprocessor machines. On a singleprocessor machine, the kernel
602 will run faster if you say N here.
603
604 People using multiprocessor machines who say Y here should also say
605 Y to "Enhanced Real Time Clock Support", below.
606
Adrian Bunk03502fa2008-02-03 15:50:21 +0200607 See also <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO
608 available at <http://www.tldp.org/docs.html#howto>.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700609
610 If you don't know what to do here, say N.
611
612config NR_CPUS
613 int "Maximum number of CPUs (2-32)"
614 range 2 32
615 depends on SMP
Paul Mundt2b1bd1a2007-06-20 18:27:10 +0900616 default "4" if CPU_SHX3
Linus Torvalds1da177e2005-04-16 15:20:36 -0700617 default "2"
618 help
619 This allows you to specify the maximum number of CPUs which this
620 kernel will support. The maximum supported value is 32 and the
621 minimum value which makes sense is 2.
622
623 This is purely to save memory - each supported CPU adds
624 approximately eight kilobytes to the kernel image.
625
Paul Mundt91b91d02006-09-27 18:08:33 +0900626source "kernel/Kconfig.preempt"
627
Paul Mundt83662462007-09-28 16:04:49 +0900628config GUSA
629 def_bool y
Stuart Menefy1efe4ce2007-11-30 16:12:36 +0900630 depends on !SMP && SUPERH32
Paul Mundt83662462007-09-28 16:04:49 +0900631 help
632 This enables support for gUSA (general UserSpace Atomicity).
633 This is the default implementation for both UP and non-ll/sc
634 CPUs, and is used by the libc, amongst others.
635
636 For additional information, design information can be found
637 in <http://lc.linux.or.jp/lc2002/papers/niibe0919p.pdf>.
638
639 This should only be disabled for special cases where alternate
640 atomicity implementations exist.
641
Stuart Menefy1efe4ce2007-11-30 16:12:36 +0900642config GUSA_RB
643 bool "Implement atomic operations by roll-back (gRB) (EXPERIMENTAL)"
644 depends on GUSA && CPU_SH3 || (CPU_SH4 && !CPU_SH4A)
645 help
646 Enabling this option will allow the kernel to implement some
Matt LaPlante692105b2009-01-26 11:12:25 +0100647 atomic operations using a software implementation of load-locked/
Stuart Menefy1efe4ce2007-11-30 16:12:36 +0900648 store-conditional (LLSC). On machines which do not have hardware
649 LLSC, this should be more efficient than the other alternative of
Matt LaPlante692105b2009-01-26 11:12:25 +0100650 disabling interrupts around the atomic sequence.
Stuart Menefy1efe4ce2007-11-30 16:12:36 +0900651
Paul Mundtcad82442006-01-16 22:14:19 -0800652endmenu
653
654menu "Boot options"
655
656config ZERO_PAGE_OFFSET
657 hex "Zero page offset"
Adrian Bunkf5f826c2008-03-31 01:40:17 +0300658 default "0x00004000" if SH_SH03
Paul Mundt7a847f82006-12-26 15:29:19 +0900659 default "0x00010000" if PAGE_SIZE_64KB
660 default "0x00002000" if PAGE_SIZE_8KB
Paul Mundtcad82442006-01-16 22:14:19 -0800661 default "0x00001000"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700662 help
Paul Mundtcad82442006-01-16 22:14:19 -0800663 This sets the default offset of zero page.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700664
Paul Mundtcad82442006-01-16 22:14:19 -0800665config BOOT_LINK_OFFSET
666 hex "Link address offset for booting"
667 default "0x00800000"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700668 help
Paul Mundtcad82442006-01-16 22:14:19 -0800669 This option allows you to set the link address offset of the zImage.
670 This can be useful if you are on a board which has a small amount of
671 memory.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700672
Paul Mundtcad82442006-01-16 22:14:19 -0800673config UBC_WAKEUP
674 bool "Wakeup UBC on startup"
Paul Mundt0e3a9aa2007-11-06 15:55:36 +0900675 depends on CPU_SH4 && !CPU_SH4A
Paul Mundtcad82442006-01-16 22:14:19 -0800676 help
677 Selecting this option will wakeup the User Break Controller (UBC) on
678 startup. Although the UBC is left in an awake state when the processor
679 comes up, some boot loaders misbehave by putting the UBC to sleep in a
680 power saving state, which causes issues with things like ptrace().
Linus Torvalds1da177e2005-04-16 15:20:36 -0700681
682 If unsure, say N.
683
Paul Mundtcad82442006-01-16 22:14:19 -0800684config CMDLINE_BOOL
685 bool "Default bootloader kernel arguments"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700686
Paul Mundtcad82442006-01-16 22:14:19 -0800687config CMDLINE
688 string "Initial kernel command string"
689 depends on CMDLINE_BOOL
690 default "console=ttySC1,115200"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700691
692endmenu
693
Paul Mundtcad82442006-01-16 22:14:19 -0800694menu "Bus options"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700695
Paul Mundtcad82442006-01-16 22:14:19 -0800696config SUPERHYWAY
697 tristate "SuperHyway Bus support"
698 depends on CPU_SUBTYPE_SH4_202
Linus Torvalds1da177e2005-04-16 15:20:36 -0700699
Adrian McMenamin17be2d22007-09-21 15:55:55 +0900700config MAPLE
Paul Mundte16038a2009-01-09 15:12:30 +0900701 bool "Maple Bus support"
702 depends on SH_DREAMCAST
703 help
704 The Maple Bus is SEGA's serial communication bus for peripherals
705 on the Dreamcast. Without this bus support you won't be able to
706 get your Dreamcast keyboard etc to work, so most users
707 probably want to say 'Y' here, unless you are only using the
708 Dreamcast with a serial line terminal or a remote network
709 connection.
Adrian McMenamin17be2d22007-09-21 15:55:55 +0900710
Linus Torvalds1da177e2005-04-16 15:20:36 -0700711source "arch/sh/drivers/pci/Kconfig"
712
Paul Mundte16038a2009-01-09 15:12:30 +0900713source "drivers/pci/pcie/Kconfig"
714
Linus Torvalds1da177e2005-04-16 15:20:36 -0700715source "drivers/pci/Kconfig"
716
717source "drivers/pcmcia/Kconfig"
718
719source "drivers/pci/hotplug/Kconfig"
720
721endmenu
722
723menu "Executable file formats"
724
725source "fs/Kconfig.binfmt"
726
727endmenu
728
Andriy Skulysh3aa770e2006-09-27 16:20:22 +0900729menu "Power management options (EXPERIMENTAL)"
Magnus Dammaf998a92008-12-04 22:45:12 +0900730depends on EXPERIMENTAL
Johannes Bergf4cb5702007-12-08 02:14:00 +0100731
Magnus Dammc6f17cb2008-12-04 22:45:20 +0900732source "kernel/power/Kconfig"
733
734source "drivers/cpuidle/Kconfig"
Andriy Skulysh3aa770e2006-09-27 16:20:22 +0900735
Andriy Skulysh3aa770e2006-09-27 16:20:22 +0900736endmenu
737
Sam Ravnborgd5950b42005-07-11 21:03:49 -0700738source "net/Kconfig"
739
Linus Torvalds1da177e2005-04-16 15:20:36 -0700740source "drivers/Kconfig"
741
742source "fs/Kconfig"
743
Linus Torvalds1da177e2005-04-16 15:20:36 -0700744source "arch/sh/Kconfig.debug"
745
746source "security/Kconfig"
747
748source "crypto/Kconfig"
749
750source "lib/Kconfig"