blob: 853cbc971cdf1e0c4efa6425becc3d2043b45a87 [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001config SUPERH
Paul Mundtea0e1a92007-11-21 15:58:01 +09002 def_bool y
David Rientjes6a108a12011-01-20 14:44:16 -08003 select EXPERT
Jean-Christop PLAGNIOL-VILLARD6d803ba2010-11-17 10:04:33 +01004 select CLKDEV_LOOKUP
Paul Mundt86e4dd52010-05-25 20:06:13 +09005 select HAVE_IDE if HAS_IOPORT
Yinghai Lu95f72d12010-07-12 14:36:09 +10006 select HAVE_MEMBLOCK
Tejun Heo534cfbe2011-12-08 10:22:08 -08007 select HAVE_MEMBLOCK_NODE_MAP
Paul Mundtadaf7fd2012-03-28 17:27:09 +09008 select ARCH_DISCARD_MEMBLOCK
Mathieu Desnoyers42d4b832008-02-02 15:10:34 -05009 select HAVE_OPROFILE
Dmitry Baryshkov9de90ac2008-07-18 13:30:31 +040010 select HAVE_GENERIC_DMA_COHERENT
Paul Mundtd7b01f72008-12-10 20:17:15 +090011 select HAVE_ARCH_TRACEHOOK
Paul Mundtf802d962009-04-09 10:36:54 -070012 select HAVE_DMA_API_DEBUG
Paul Mundt73c926b2009-10-20 12:55:56 +090013 select HAVE_DMA_ATTRS
Ingo Molnarcdd6c482009-09-21 12:02:48 +020014 select HAVE_PERF_EVENTS
Catalin Marinas9b2a60c2012-10-08 16:28:13 -070015 select HAVE_DEBUG_BUGVERBOSE
Mark Brown7563bbf2012-04-15 10:52:54 +010016 select ARCH_HAVE_CUSTOM_GPIO_H
Huang Yingdf013ff2011-07-13 13:14:22 +080017 select ARCH_HAVE_NMI_SAFE_CMPXCHG if (GUSA_RB || CPU_SH4A)
Paul Mundt72f0c132009-10-27 17:08:55 +090018 select PERF_USE_VMALLOC
Catalin Marinasb69ec422012-10-08 16:28:11 -070019 select HAVE_DEBUG_KMEMLEAK
Paul Mundtdf8ce252009-07-12 01:37:30 +090020 select HAVE_KERNEL_GZIP
Paul Mundt07e88e12009-07-11 13:21:19 -040021 select HAVE_KERNEL_BZIP2
22 select HAVE_KERNEL_LZMA
Paul Mundt50cfa792011-01-14 15:52:54 +090023 select HAVE_KERNEL_XZ
Paul Mundtc7b16ef2010-01-13 13:29:19 +090024 select HAVE_KERNEL_LZO
Catalin Marinasaf1839e2012-10-08 16:28:08 -070025 select HAVE_UID16
Will Deaconc1d7e012012-07-30 14:42:46 -070026 select ARCH_WANT_IPC_PARSE_VERSION
Paul Mundta74f7e02009-09-16 14:30:34 +090027 select HAVE_SYSCALL_TRACEPOINTS
Paul Mundteaaaeef2010-06-14 15:16:53 +090028 select HAVE_REGS_AND_STACK_ACCESS_API
Paul Mundt57b81332010-10-26 15:20:51 +090029 select HAVE_GENERIC_HARDIRQS
Rob Herring2ed86b12012-01-25 20:02:40 -060030 select MAY_HAVE_SPARSE_IRQ
Paul Mundted170922011-04-18 11:45:27 +090031 select IRQ_FORCED_THREADING
Paul Mundt6eac1af2009-05-08 19:48:47 +090032 select RTC_LIB
Paul Mundtf01789c2009-06-17 10:43:13 +090033 select GENERIC_ATOMIC64
Paul Mundt3d44ae42011-03-17 17:31:51 +090034 select GENERIC_IRQ_SHOW
Thomas Gleixnerea0588c2012-04-20 13:05:54 +000035 select GENERIC_SMP_IDLE_THREAD
Thomas Gleixnerdc775dd2013-03-21 22:49:59 +010036 select GENERIC_IDLE_LOOP
37 select GENERIC_IDLE_POLL_SETUP
Anna-Maria Gleixner8cf200d2012-05-18 16:45:53 +000038 select GENERIC_CLOCKEVENTS
39 select GENERIC_CMOS_UPDATE if SH_SH03 || SH_DREAMCAST
Paul Mundt0e100e12012-05-25 13:02:48 +090040 select GENERIC_STRNCPY_FROM_USER
Paul Mundtcba8df42012-06-04 15:46:05 +090041 select GENERIC_STRNLEN_USER
David Howells786d35d2012-09-28 14:31:03 +093042 select HAVE_MOD_ARCH_SPECIFIC if DWARF_UNWINDER
43 select MODULES_USE_ELF_RELA
Al Viro881e2522012-12-25 16:20:46 -050044 select OLD_SIGSUSPEND
Al Viro0679a852012-12-25 19:23:55 -050045 select OLD_SIGACTION
Linus Torvalds1da177e2005-04-16 15:20:36 -070046 help
47 The SuperH is a RISC processor targeted for use in embedded systems
48 and consumer electronics; it was also used in the Sega Dreamcast
49 gaming console. The SuperH port has a home page at
50 <http://www.linux-sh.org/>.
51
Paul Mundt39d28a22007-11-08 18:39:33 +090052config SUPERH32
Paul Mundt3cc000b2009-04-11 08:39:27 +090053 def_bool ARCH = "sh"
Chris Smithd39f5452008-09-05 17:15:39 +090054 select HAVE_KPROBES
55 select HAVE_KRETPROBES
Paul Mundt6d63e732010-01-19 14:00:14 +090056 select HAVE_IOREMAP_PROT if MMU && !X2TLB
Paul Mundt694f94f2008-10-31 16:20:36 +090057 select HAVE_FUNCTION_TRACER
Matt Flemingfad57fe2008-11-12 20:11:47 +090058 select HAVE_FTRACE_MCOUNT_RECORD
59 select HAVE_DYNAMIC_FTRACE
Matt Flemingc1340c02009-06-28 14:05:44 +010060 select HAVE_FUNCTION_TRACE_MCOUNT_TEST
Paul Mundte4b053d2009-10-13 16:52:50 +090061 select HAVE_FTRACE_NMI_ENTER if DYNAMIC_FTRACE
Will Deaconc1d7e012012-07-30 14:42:46 -070062 select ARCH_WANT_IPC_PARSE_VERSION
Matt Fleming327933f2009-07-11 00:29:03 +000063 select HAVE_FUNCTION_GRAPH_TRACER
Paul Mundtab6e5702008-12-11 18:46:46 +090064 select HAVE_ARCH_KGDB
Paul Mundt6fbfe8d2010-01-06 15:46:53 +090065 select HAVE_HW_BREAKPOINT
Frederic Weisbecker01027522010-04-11 18:55:56 +020066 select HAVE_MIXED_BREAKPOINTS_REGS
Sam Ravnborge583d6b2010-08-14 12:23:39 +000067 select PERF_EVENTS
Paul Mundt8dafc342009-04-02 11:56:38 +090068 select ARCH_HIBERNATION_POSSIBLE if MMU
Paul Mundt57b81332010-10-26 15:20:51 +090069 select SPARSE_IRQ
Paul Mundtea0e1a92007-11-21 15:58:01 +090070
71config SUPERH64
Paul Mundt3cc000b2009-04-11 08:39:27 +090072 def_bool ARCH = "sh64"
Paul Mundt3a898c02012-05-24 15:05:29 +090073 select KALLSYMS
Paul Mundt39d28a22007-11-08 18:39:33 +090074
Paul Mundtf42b7e32008-07-29 20:12:51 +090075config ARCH_DEFCONFIG
76 string
77 default "arch/sh/configs/shx3_defconfig" if SUPERH32
78 default "arch/sh/configs/cayman_defconfig" if SUPERH64
79
Linus Torvalds1da177e2005-04-16 15:20:36 -070080config RWSEM_GENERIC_SPINLOCK
Harvey Harrisond7ef4fb2007-12-11 13:49:35 +090081 def_bool y
Linus Torvalds1da177e2005-04-16 15:20:36 -070082
83config RWSEM_XCHGADD_ALGORITHM
84 bool
85
Paul Mundtfa691512007-03-08 19:41:21 +090086config GENERIC_BUG
87 def_bool y
Paul Mundta82d53e2007-11-21 18:22:05 +090088 depends on BUG && SUPERH32
Paul Mundtfa691512007-03-08 19:41:21 +090089
Paul Mundt3767f3f2009-06-15 00:00:42 +090090config GENERIC_CSUM
91 def_bool y
92 depends on SUPERH64
93
Akinobu Mitae2268c72006-03-26 01:39:35 -080094config GENERIC_HWEIGHT
Harvey Harrisond7ef4fb2007-12-11 13:49:35 +090095 def_bool y
Akinobu Mitae2268c72006-03-26 01:39:35 -080096
Magnus Damm2967dab2008-10-08 20:41:43 +090097config GENERIC_GPIO
98 def_bool n
99
Linus Torvalds1da177e2005-04-16 15:20:36 -0700100config GENERIC_CALIBRATE_DELAY
Paul Mundtcf204fa2008-09-08 20:47:42 +0900101 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700102
Paul Mundtbdcab872008-08-04 14:09:15 +0900103config GENERIC_LOCKBREAK
104 def_bool y
105 depends on SMP && PREEMPT
106
Magnus Dammaf998a92008-12-04 22:45:12 +0900107config ARCH_SUSPEND_POSSIBLE
108 def_bool n
109
110config ARCH_HIBERNATION_POSSIBLE
111 def_bool n
Paul Mundt357d5942007-06-11 15:32:07 +0900112
Paul Mundt0a9b0db2007-01-24 21:56:20 +0900113config SYS_SUPPORTS_APM_EMULATION
114 bool
Magnus Dammaf998a92008-12-04 22:45:12 +0900115 select ARCH_SUSPEND_POSSIBLE
Paul Mundt357d5942007-06-11 15:32:07 +0900116
Paul Mundtffb4a732009-10-27 07:22:37 +0900117config SYS_SUPPORTS_HUGETLBFS
118 bool
119
Paul Mundt357d5942007-06-11 15:32:07 +0900120config SYS_SUPPORTS_SMP
121 bool
122
123config SYS_SUPPORTS_NUMA
124 bool
125
126config SYS_SUPPORTS_PCI
127 bool
Paul Mundt0a9b0db2007-01-24 21:56:20 +0900128
Paul Mundtf5ad8812009-01-29 18:08:58 +0900129config SYS_SUPPORTS_CMT
130 bool
131
Magnus Dammd5ed4c22009-04-30 07:02:49 +0000132config SYS_SUPPORTS_MTU2
133 bool
134
Magnus Damm9570ef22009-05-01 06:51:00 +0000135config SYS_SUPPORTS_TMU
136 bool
137
Paul Mundtafbfb522006-12-04 18:17:28 +0900138config STACKTRACE_SUPPORT
Harvey Harrisond7ef4fb2007-12-11 13:49:35 +0900139 def_bool y
Paul Mundtafbfb522006-12-04 18:17:28 +0900140
141config LOCKDEP_SUPPORT
Harvey Harrisond7ef4fb2007-12-11 13:49:35 +0900142 def_bool y
Paul Mundtafbfb522006-12-04 18:17:28 +0900143
Paul Mundt5a89f1a2008-09-13 01:44:03 +0900144config HAVE_LATENCYTOP_SUPPORT
145 def_bool y
Paul Mundt5a89f1a2008-09-13 01:44:03 +0900146
David Howellsf0d1b0b2006-12-08 02:37:49 -0800147config ARCH_HAS_ILOG2_U32
Harvey Harrisond7ef4fb2007-12-11 13:49:35 +0900148 def_bool n
David Howellsf0d1b0b2006-12-08 02:37:49 -0800149
150config ARCH_HAS_ILOG2_U64
Harvey Harrisond7ef4fb2007-12-11 13:49:35 +0900151 def_bool n
David Howellsf0d1b0b2006-12-08 02:37:49 -0800152
Paul Mundte869a902009-04-02 13:08:31 +0900153config ARCH_HAS_DEFAULT_IDLE
154 def_bool y
155
Paul Mundt86e4dd52010-05-25 20:06:13 +0900156config NO_IOPORT
Paul Mundt37b7a972010-11-01 09:49:04 -0400157 def_bool !PCI
Paul Mundtc30b9c42012-05-21 18:19:18 +0900158 depends on !SH_CAYMAN && !SH_SH4202_MICRODEV && !SH_SHMIN && \
159 !SH_HP6XX && !SH_SOLUTION_ENGINE
Paul Mundt86e4dd52010-05-25 20:06:13 +0900160
Magnus Damme7cc9a72008-02-07 20:18:21 +0900161config IO_TRAPPED
162 bool
163
Paul Mundtb7e68d62012-03-29 16:05:10 +0900164config SWAP_IO_SPACE
165 bool
166
Paul Mundt01be5d62009-10-27 10:35:02 +0900167config DMA_COHERENT
168 bool
169
170config DMA_NONCOHERENT
171 def_bool !DMA_COHERENT
172
FUJITA Tomonori5cabbb62010-03-10 15:23:27 -0800173config NEED_DMA_MAP_STATE
174 def_bool DMA_NONCOHERENT
175
FUJITA Tomonori18e98302010-05-26 14:44:32 -0700176config NEED_SG_DMA_LENGTH
177 def_bool y
178
Linus Torvalds1da177e2005-04-16 15:20:36 -0700179source "init/Kconfig"
180
Matt Helsleydc52ddc2008-10-18 20:27:21 -0700181source "kernel/Kconfig.freezer"
182
Linus Torvalds1da177e2005-04-16 15:20:36 -0700183menu "System type"
184
Paul Mundtb5f42db2007-11-08 18:38:14 +0900185#
186# Processor families
187#
188config CPU_SH2
189 bool
190
191config CPU_SH2A
192 bool
193 select CPU_SH2
Paul Mundte2fcf742010-11-04 12:32:24 +0900194 select UNCACHED_MAPPING
Paul Mundtb5f42db2007-11-08 18:38:14 +0900195
196config CPU_SH3
197 bool
198 select CPU_HAS_INTEVT
199 select CPU_HAS_SR_RB
Paul Mundt4fa48e12009-05-08 15:28:15 +0900200 select SYS_SUPPORTS_TMU
Paul Mundtb5f42db2007-11-08 18:38:14 +0900201
202config CPU_SH4
203 bool
204 select CPU_HAS_INTEVT
205 select CPU_HAS_SR_RB
Paul Mundtb5f42db2007-11-08 18:38:14 +0900206 select CPU_HAS_FPU if !CPU_SH4AL_DSP
Paul Mundt4fa48e12009-05-08 15:28:15 +0900207 select SYS_SUPPORTS_TMU
Paul Mundtffb4a732009-10-27 07:22:37 +0900208 select SYS_SUPPORTS_HUGETLBFS if MMU
Paul Mundtb5f42db2007-11-08 18:38:14 +0900209
210config CPU_SH4A
211 bool
212 select CPU_SH4
213
214config CPU_SH4AL_DSP
215 bool
216 select CPU_SH4A
217 select CPU_HAS_DSP
218
Paul Mundtea0e1a92007-11-21 15:58:01 +0900219config CPU_SH5
220 bool
221 select CPU_HAS_FPU
Paul Mundtadd47062009-05-08 16:12:17 +0900222 select SYS_SUPPORTS_TMU
Paul Mundtffb4a732009-10-27 07:22:37 +0900223 select SYS_SUPPORTS_HUGETLBFS if MMU
Paul Mundtea0e1a92007-11-21 15:58:01 +0900224
Paul Mundtb5f42db2007-11-08 18:38:14 +0900225config CPU_SHX2
226 bool
227
228config CPU_SHX3
229 bool
Paul Mundt01be5d62009-10-27 10:35:02 +0900230 select DMA_COHERENT
Paul Mundt4b478ee2010-05-11 15:24:04 +0900231 select SYS_SUPPORTS_SMP
232 select SYS_SUPPORTS_NUMA
Paul Mundtb5f42db2007-11-08 18:38:14 +0900233
Paul Mundtdc65a972009-03-10 16:26:29 +0900234config ARCH_SHMOBILE
235 bool
Magnus Damm77594912009-03-13 15:23:04 +0000236 select ARCH_SUSPEND_POSSIBLE
Magnus Dammac2c5962009-08-19 10:31:53 +0000237 select PM
238 select PM_RUNTIME
Paul Mundtdc65a972009-03-10 16:26:29 +0900239
Matt Fleming86c8c042010-09-10 20:36:23 +0100240config CPU_HAS_PMU
241 depends on CPU_SH4 || CPU_SH4A
242 default y
243 bool
244
Paul Mundt3cc000b2009-04-11 08:39:27 +0900245if SUPERH32
246
Paul Mundtb5f42db2007-11-08 18:38:14 +0900247choice
248 prompt "Processor sub-type selection"
249
250#
251# Processor subtypes
252#
253
254# SH-2 Processor Support
255
256config CPU_SUBTYPE_SH7619
257 bool "Support SH7619 processor"
258 select CPU_SH2
Paul Mundtf5ad8812009-01-29 18:08:58 +0900259 select SYS_SUPPORTS_CMT
Paul Mundtb5f42db2007-11-08 18:38:14 +0900260
261# SH-2A Processor Support
262
Peter Griffin28259992008-11-28 22:48:20 +0900263config CPU_SUBTYPE_SH7201
264 bool "Support SH7201 processor"
265 select CPU_SH2A
266 select CPU_HAS_FPU
Magnus Dammda107c62009-04-30 07:06:26 +0000267 select SYS_SUPPORTS_MTU2
Peter Griffin28259992008-11-28 22:48:20 +0900268
Paul Mundt6d01f512007-11-26 18:17:21 +0900269config CPU_SUBTYPE_SH7203
270 bool "Support SH7203 processor"
271 select CPU_SH2A
Paul Mundt74d99a52007-11-26 20:38:36 +0900272 select CPU_HAS_FPU
Paul Mundtf5ad8812009-01-29 18:08:58 +0900273 select SYS_SUPPORTS_CMT
Magnus Dammda107c62009-04-30 07:06:26 +0000274 select SYS_SUPPORTS_MTU2
Paul Mundtf020c922010-11-01 12:24:48 -0400275 select ARCH_WANT_OPTIONAL_GPIOLIB
Laurent Pinchartb768ecbc2012-12-15 23:51:05 +0100276 select PINCTRL
Paul Mundt6d01f512007-11-26 18:17:21 +0900277
Paul Mundtb5f42db2007-11-08 18:38:14 +0900278config CPU_SUBTYPE_SH7206
279 bool "Support SH7206 processor"
280 select CPU_SH2A
Paul Mundtf5ad8812009-01-29 18:08:58 +0900281 select SYS_SUPPORTS_CMT
Magnus Dammda107c62009-04-30 07:06:26 +0000282 select SYS_SUPPORTS_MTU2
Paul Mundtb5f42db2007-11-08 18:38:14 +0900283
Paul Mundta8f67f42007-11-26 19:54:02 +0900284config CPU_SUBTYPE_SH7263
285 bool "Support SH7263 processor"
286 select CPU_SH2A
Paul Mundt74d99a52007-11-26 20:38:36 +0900287 select CPU_HAS_FPU
Paul Mundtf5ad8812009-01-29 18:08:58 +0900288 select SYS_SUPPORTS_CMT
Magnus Dammda107c62009-04-30 07:06:26 +0000289 select SYS_SUPPORTS_MTU2
Paul Mundta8f67f42007-11-26 19:54:02 +0900290
Phil Edworthy51ce3062012-05-09 07:59:27 +0100291config CPU_SUBTYPE_SH7264
292 bool "Support SH7264 processor"
293 select CPU_SH2A
294 select CPU_HAS_FPU
295 select SYS_SUPPORTS_CMT
296 select SYS_SUPPORTS_MTU2
Laurent Pinchart5946e7b2012-12-15 23:51:06 +0100297 select PINCTRL
Phil Edworthy51ce3062012-05-09 07:59:27 +0100298
Phil Edworthy0b25b7c2012-05-10 09:26:52 +0100299config CPU_SUBTYPE_SH7269
300 bool "Support SH7269 processor"
301 select CPU_SH2A
302 select CPU_HAS_FPU
303 select SYS_SUPPORTS_CMT
304 select SYS_SUPPORTS_MTU2
Laurent Pinchartfb872fc2012-12-15 23:51:07 +0100305 select PINCTRL
Phil Edworthy0b25b7c2012-05-10 09:26:52 +0100306
Paul Mundt2ad69902008-03-13 12:52:44 +0900307config CPU_SUBTYPE_MXG
308 bool "Support MX-G processor"
309 select CPU_SH2A
Magnus Dammda107c62009-04-30 07:06:26 +0000310 select SYS_SUPPORTS_MTU2
Paul Mundt2ad69902008-03-13 12:52:44 +0900311 help
312 Select MX-G if running on an R8A03022BG part.
313
Paul Mundtb5f42db2007-11-08 18:38:14 +0900314# SH-3 Processor Support
315
316config CPU_SUBTYPE_SH7705
317 bool "Support SH7705 processor"
318 select CPU_SH3
319
320config CPU_SUBTYPE_SH7706
321 bool "Support SH7706 processor"
322 select CPU_SH3
323 help
324 Select SH7706 if you have a 133 Mhz SH-3 HD6417706 CPU.
325
326config CPU_SUBTYPE_SH7707
327 bool "Support SH7707 processor"
328 select CPU_SH3
329 help
330 Select SH7707 if you have a 60 Mhz SH-3 HD6417707 CPU.
331
332config CPU_SUBTYPE_SH7708
333 bool "Support SH7708 processor"
334 select CPU_SH3
335 help
336 Select SH7708 if you have a 60 Mhz SH-3 HD6417708S or
337 if you have a 100 Mhz SH-3 HD6417708R CPU.
338
339config CPU_SUBTYPE_SH7709
340 bool "Support SH7709 processor"
341 select CPU_SH3
342 help
343 Select SH7709 if you have a 80 Mhz SH-3 HD6417709 CPU.
344
345config CPU_SUBTYPE_SH7710
346 bool "Support SH7710 processor"
347 select CPU_SH3
348 select CPU_HAS_DSP
349 help
350 Select SH7710 if you have a SH3-DSP SH7710 CPU.
351
352config CPU_SUBTYPE_SH7712
353 bool "Support SH7712 processor"
354 select CPU_SH3
355 select CPU_HAS_DSP
356 help
357 Select SH7712 if you have a SH3-DSP SH7712 CPU.
358
359config CPU_SUBTYPE_SH7720
360 bool "Support SH7720 processor"
361 select CPU_SH3
362 select CPU_HAS_DSP
Magnus Damm2b23a882009-05-12 10:21:11 +0000363 select SYS_SUPPORTS_CMT
Paul Mundtf020c922010-11-01 12:24:48 -0400364 select ARCH_WANT_OPTIONAL_GPIOLIB
Paul Mundte3e98872010-12-01 15:58:58 +0900365 select USB_ARCH_HAS_OHCI
Paul Mundt7b61ca52011-06-30 15:04:38 +0900366 select USB_OHCI_SH if USB_OHCI_HCD
Laurent Pinchart85db6bf2012-12-15 23:51:08 +0100367 select PINCTRL
Paul Mundtb5f42db2007-11-08 18:38:14 +0900368 help
369 Select SH7720 if you have a SH3-DSP SH7720 CPU.
370
Yoshihiro Shimoda31a49c42007-12-26 11:45:06 +0900371config CPU_SUBTYPE_SH7721
372 bool "Support SH7721 processor"
373 select CPU_SH3
374 select CPU_HAS_DSP
Magnus Damm2b23a882009-05-12 10:21:11 +0000375 select SYS_SUPPORTS_CMT
Paul Mundte3e98872010-12-01 15:58:58 +0900376 select USB_ARCH_HAS_OHCI
Paul Mundt7b61ca52011-06-30 15:04:38 +0900377 select USB_OHCI_SH if USB_OHCI_HCD
Yoshihiro Shimoda31a49c42007-12-26 11:45:06 +0900378 help
379 Select SH7721 if you have a SH3-DSP SH7721 CPU.
380
Paul Mundtb5f42db2007-11-08 18:38:14 +0900381# SH-4 Processor Support
382
383config CPU_SUBTYPE_SH7750
384 bool "Support SH7750 processor"
385 select CPU_SH4
386 help
387 Select SH7750 if you have a 200 Mhz SH-4 HD6417750 CPU.
388
389config CPU_SUBTYPE_SH7091
390 bool "Support SH7091 processor"
391 select CPU_SH4
392 help
393 Select SH7091 if you have an SH-4 based Sega device (such as
394 the Dreamcast, Naomi, and Naomi 2).
395
396config CPU_SUBTYPE_SH7750R
397 bool "Support SH7750R processor"
398 select CPU_SH4
399
400config CPU_SUBTYPE_SH7750S
401 bool "Support SH7750S processor"
402 select CPU_SH4
403
404config CPU_SUBTYPE_SH7751
405 bool "Support SH7751 processor"
406 select CPU_SH4
407 help
408 Select SH7751 if you have a 166 Mhz SH-4 HD6417751 CPU,
409 or if you have a HD6417751R CPU.
410
411config CPU_SUBTYPE_SH7751R
412 bool "Support SH7751R processor"
413 select CPU_SH4
414
415config CPU_SUBTYPE_SH7760
416 bool "Support SH7760 processor"
417 select CPU_SH4
418
419config CPU_SUBTYPE_SH4_202
420 bool "Support SH4-202 processor"
421 select CPU_SH4
422
423# SH-4A Processor Support
424
Paul Mundt178dd0c2008-04-09 17:56:18 +0900425config CPU_SUBTYPE_SH7723
426 bool "Support SH7723 processor"
427 select CPU_SH4A
428 select CPU_SHX2
Paul Mundtdc65a972009-03-10 16:26:29 +0900429 select ARCH_SHMOBILE
Paul Mundt178dd0c2008-04-09 17:56:18 +0900430 select ARCH_SPARSEMEM_ENABLE
Paul Mundtf5ad8812009-01-29 18:08:58 +0900431 select SYS_SUPPORTS_CMT
Paul Mundtf020c922010-11-01 12:24:48 -0400432 select ARCH_WANT_OPTIONAL_GPIOLIB
Laurent Pinchart16941a82012-12-15 23:51:10 +0100433 select PINCTRL
Paul Mundt178dd0c2008-04-09 17:56:18 +0900434 help
435 Select SH7723 if you have an SH-MobileR2 CPU.
436
Kuninori Morimoto0207a2e2009-04-16 14:40:56 +0900437config CPU_SUBTYPE_SH7724
438 bool "Support SH7724 processor"
439 select CPU_SH4A
440 select CPU_SHX2
Paul Mundt59fe7002009-04-16 15:43:42 +0900441 select ARCH_SHMOBILE
Kuninori Morimoto0207a2e2009-04-16 14:40:56 +0900442 select ARCH_SPARSEMEM_ENABLE
443 select SYS_SUPPORTS_CMT
Paul Mundtf020c922010-11-01 12:24:48 -0400444 select ARCH_WANT_OPTIONAL_GPIOLIB
Laurent Pinchart18ebd222012-12-15 23:51:11 +0100445 select PINCTRL
Kuninori Morimoto0207a2e2009-04-16 14:40:56 +0900446 help
447 Select SH7724 if you have an SH-MobileR2R CPU.
448
Nobuhiro Iwamatsufea88a02012-04-12 15:45:32 +0900449config CPU_SUBTYPE_SH7734
450 bool "Support SH7734 processor"
451 select CPU_SH4A
452 select CPU_SHX2
453 select ARCH_WANT_OPTIONAL_GPIOLIB
454 select USB_ARCH_HAS_OHCI
455 select USB_ARCH_HAS_EHCI
Laurent Pinchart2c172182012-12-15 23:51:12 +0100456 select PINCTRL
Nobuhiro Iwamatsufea88a02012-04-12 15:45:32 +0900457 help
458 Select SH7734 if you have a SH4A SH7734 CPU.
459
Yoshihiro Shimodac01f0f12009-08-21 16:30:28 +0900460config CPU_SUBTYPE_SH7757
461 bool "Support SH7757 processor"
462 select CPU_SH4A
463 select CPU_SHX2
Paul Mundtf020c922010-11-01 12:24:48 -0400464 select ARCH_WANT_OPTIONAL_GPIOLIB
Yoshihiro Shimoda0fe48602011-02-25 07:38:47 +0000465 select USB_ARCH_HAS_OHCI
466 select USB_ARCH_HAS_EHCI
Laurent Pincharteb61b772012-12-15 23:51:13 +0100467 select PINCTRL
Yoshihiro Shimodac01f0f12009-08-21 16:30:28 +0900468 help
469 Select SH7757 if you have a SH4A SH7757 CPU.
470
Yoshihiro Shimoda7d740a02008-01-07 14:40:07 +0900471config CPU_SUBTYPE_SH7763
472 bool "Support SH7763 processor"
473 select CPU_SH4A
Paul Mundte3e98872010-12-01 15:58:58 +0900474 select USB_ARCH_HAS_OHCI
Paul Mundt7b61ca52011-06-30 15:04:38 +0900475 select USB_OHCI_SH if USB_OHCI_HCD
Yoshihiro Shimoda7d740a02008-01-07 14:40:07 +0900476 help
477 Select SH7763 if you have a SH4A SH7763(R5S77631) CPU.
478
Paul Mundtb5f42db2007-11-08 18:38:14 +0900479config CPU_SUBTYPE_SH7770
480 bool "Support SH7770 processor"
481 select CPU_SH4A
482
483config CPU_SUBTYPE_SH7780
484 bool "Support SH7780 processor"
485 select CPU_SH4A
486
487config CPU_SUBTYPE_SH7785
488 bool "Support SH7785 processor"
489 select CPU_SH4A
490 select CPU_SHX2
491 select ARCH_SPARSEMEM_ENABLE
492 select SYS_SUPPORTS_NUMA
Paul Mundtf020c922010-11-01 12:24:48 -0400493 select ARCH_WANT_OPTIONAL_GPIOLIB
Laurent Pinchart77bd27b2012-12-15 23:51:14 +0100494 select PINCTRL
Paul Mundtb5f42db2007-11-08 18:38:14 +0900495
Kuninori Morimoto55ba99e2009-03-03 15:40:25 +0900496config CPU_SUBTYPE_SH7786
497 bool "Support SH7786 processor"
498 select CPU_SH4A
Paul Mundt37042fb2009-03-03 15:57:02 +0900499 select CPU_SHX3
Paul Mundt8263a672009-03-17 17:49:49 +0900500 select CPU_HAS_PTEAEX
Paul Mundt2eb2a432009-06-19 16:00:00 +0900501 select GENERIC_CLOCKEVENTS_BROADCAST if SMP
Paul Mundtf020c922010-11-01 12:24:48 -0400502 select ARCH_WANT_OPTIONAL_GPIOLIB
Paul Mundte3e98872010-12-01 15:58:58 +0900503 select USB_ARCH_HAS_OHCI
Paul Mundt7b61ca52011-06-30 15:04:38 +0900504 select USB_OHCI_SH if USB_OHCI_HCD
Paul Mundte3e98872010-12-01 15:58:58 +0900505 select USB_ARCH_HAS_EHCI
Paul Mundt7b61ca52011-06-30 15:04:38 +0900506 select USB_EHCI_SH if USB_EHCI_HCD
Laurent Pinchartc0fdbff2012-12-15 23:51:15 +0100507 select PINCTRL
Kuninori Morimoto55ba99e2009-03-03 15:40:25 +0900508
Paul Mundtb5f42db2007-11-08 18:38:14 +0900509config CPU_SUBTYPE_SHX3
510 bool "Support SH-X3 processor"
511 select CPU_SH4A
512 select CPU_SHX3
Paul Mundt58402632008-09-05 15:36:39 +0900513 select GENERIC_CLOCKEVENTS_BROADCAST if SMP
Paul Mundt742759e2010-10-02 19:43:40 +0900514 select ARCH_REQUIRE_GPIOLIB
Laurent Pinchart3e347f02012-12-15 23:51:16 +0100515 select PINCTRL
Paul Mundtb5f42db2007-11-08 18:38:14 +0900516
517# SH4AL-DSP Processor Support
518
519config CPU_SUBTYPE_SH7343
520 bool "Support SH7343 processor"
521 select CPU_SH4AL_DSP
Paul Mundtdc65a972009-03-10 16:26:29 +0900522 select ARCH_SHMOBILE
Paul Mundtf5ad8812009-01-29 18:08:58 +0900523 select SYS_SUPPORTS_CMT
Paul Mundtb5f42db2007-11-08 18:38:14 +0900524
525config CPU_SUBTYPE_SH7722
526 bool "Support SH7722 processor"
527 select CPU_SH4AL_DSP
528 select CPU_SHX2
Paul Mundtdc65a972009-03-10 16:26:29 +0900529 select ARCH_SHMOBILE
Paul Mundtb5f42db2007-11-08 18:38:14 +0900530 select ARCH_SPARSEMEM_ENABLE
531 select SYS_SUPPORTS_NUMA
Paul Mundtf5ad8812009-01-29 18:08:58 +0900532 select SYS_SUPPORTS_CMT
Paul Mundtf020c922010-11-01 12:24:48 -0400533 select ARCH_WANT_OPTIONAL_GPIOLIB
Laurent Pinchartef97c3c2012-12-15 23:51:09 +0100534 select PINCTRL
Paul Mundtb5f42db2007-11-08 18:38:14 +0900535
Magnus Damm9109a302008-02-08 17:31:24 +0900536config CPU_SUBTYPE_SH7366
537 bool "Support SH7366 processor"
538 select CPU_SH4AL_DSP
539 select CPU_SHX2
Paul Mundtdc65a972009-03-10 16:26:29 +0900540 select ARCH_SHMOBILE
Magnus Damm9109a302008-02-08 17:31:24 +0900541 select ARCH_SPARSEMEM_ENABLE
542 select SYS_SUPPORTS_NUMA
Paul Mundtf5ad8812009-01-29 18:08:58 +0900543 select SYS_SUPPORTS_CMT
Magnus Damm9109a302008-02-08 17:31:24 +0900544
Paul Mundt3cc000b2009-04-11 08:39:27 +0900545endchoice
546
547endif
548
549if SUPERH64
550
551choice
552 prompt "Processor sub-type selection"
553
Paul Mundtea0e1a92007-11-21 15:58:01 +0900554# SH-5 Processor Support
555
556config CPU_SUBTYPE_SH5_101
557 bool "Support SH5-101 processor"
558 select CPU_SH5
559
560config CPU_SUBTYPE_SH5_103
561 bool "Support SH5-103 processor"
Paul Mundt8ef97dd2008-02-14 15:30:54 +0900562 select CPU_SH5
Paul Mundtea0e1a92007-11-21 15:58:01 +0900563
Paul Mundtb5f42db2007-11-08 18:38:14 +0900564endchoice
565
Paul Mundt3cc000b2009-04-11 08:39:27 +0900566endif
567
Paul Mundtcad82442006-01-16 22:14:19 -0800568source "arch/sh/mm/Kconfig"
Paul Mundt939a24a2008-07-29 21:41:37 +0900569
Paul Mundt4690bdc2007-11-09 13:45:42 +0900570source "arch/sh/Kconfig.cpu"
Paul Mundtcad82442006-01-16 22:14:19 -0800571
Paul Mundt939a24a2008-07-29 21:41:37 +0900572source "arch/sh/boards/Kconfig"
Paul Mundtf3d22292007-05-14 17:29:12 +0900573
Paul Mundt32351a22007-03-12 14:38:59 +0900574menu "Timer and clock configuration"
575
Magnus Damm9570ef22009-05-01 06:51:00 +0000576config SH_TIMER_TMU
577 bool "TMU timer driver"
Magnus Dammf19900b2009-05-12 10:25:54 +0000578 depends on SYS_SUPPORTS_TMU
Magnus Damm9570ef22009-05-01 06:51:00 +0000579 default y
Magnus Damm9570ef22009-05-01 06:51:00 +0000580 help
581 This enables the build of the TMU timer driver.
582
Paul Mundtf5ad8812009-01-29 18:08:58 +0900583config SH_TIMER_CMT
Magnus Dammf4257522009-04-30 04:09:26 +0000584 bool "CMT timer driver"
585 depends on SYS_SUPPORTS_CMT
586 default y
Magnus Dammf4257522009-04-30 04:09:26 +0000587 help
588 This enables build of the CMT timer driver.
Paul Mundtf5ad8812009-01-29 18:08:58 +0900589
Magnus Dammd5ed4c22009-04-30 07:02:49 +0000590config SH_TIMER_MTU2
591 bool "MTU2 timer driver"
Magnus Damm3280c882009-04-30 07:12:09 +0000592 depends on SYS_SUPPORTS_MTU2
Magnus Dammd5ed4c22009-04-30 07:02:49 +0000593 default y
Magnus Dammd5ed4c22009-04-30 07:02:49 +0000594 help
595 This enables build of the MTU2 timer driver.
596
Paul Mundtcad82442006-01-16 22:14:19 -0800597config SH_PCLK_FREQ
598 int "Peripheral clock frequency (in Hz)"
Paul Mundt8152a742009-12-29 11:09:30 +0900599 depends on SH_CLK_CPG_LEGACY
Yoshinori Sato9d4436a2006-11-05 15:40:13 +0900600 default "31250000" if CPU_SUBTYPE_SH7619
Paul Mundt8152a742009-12-29 11:09:30 +0900601 default "33333333" if CPU_SUBTYPE_SH7770 || \
602 CPU_SUBTYPE_SH7760 || \
603 CPU_SUBTYPE_SH7705 || \
604 CPU_SUBTYPE_SH7203 || \
605 CPU_SUBTYPE_SH7206 || \
606 CPU_SUBTYPE_SH7263 || \
Paul Mundt43a18392010-01-19 19:37:14 +0900607 CPU_SUBTYPE_MXG
Paul Mundt05627482007-05-15 16:25:47 +0900608 default "60000000" if CPU_SUBTYPE_SH7751 || CPU_SUBTYPE_SH7751R
Paul Mundtcad82442006-01-16 22:14:19 -0800609 default "66000000" if CPU_SUBTYPE_SH4_202
Paul Mundt05627482007-05-15 16:25:47 +0900610 default "50000000"
Paul Mundtcad82442006-01-16 22:14:19 -0800611 help
612 This option is used to specify the peripheral clock frequency.
613 This is necessary for determining the reference clock value on
614 platforms lacking an RTC.
615
Paul Mundt36aa1e32009-05-22 14:00:34 +0900616config SH_CLK_CPG
617 def_bool y
618
Paul Mundt253b0882009-05-13 17:38:11 +0900619config SH_CLK_CPG_LEGACY
Paul Mundt36aa1e32009-05-22 14:00:34 +0900620 depends on SH_CLK_CPG
Paul Mundt43a18392010-01-19 19:37:14 +0900621 def_bool y if !CPU_SUBTYPE_SH7785 && !ARCH_SHMOBILE && \
Phil Edworthy51ce3062012-05-09 07:59:27 +0100622 !CPU_SHX3 && !CPU_SUBTYPE_SH7757 && \
Paul Mundtbcb86e02012-05-10 17:20:56 +0900623 !CPU_SUBTYPE_SH7734 && !CPU_SUBTYPE_SH7264 && \
624 !CPU_SUBTYPE_SH7269
Paul Mundt253b0882009-05-13 17:38:11 +0900625
Paul Mundt32351a22007-03-12 14:38:59 +0900626endmenu
627
Paul Mundtcad82442006-01-16 22:14:19 -0800628menu "CPU Frequency scaling"
629
630source "drivers/cpufreq/Kconfig"
631
632config SH_CPU_FREQ
633 tristate "SuperH CPU Frequency driver"
Paul Mundtcb5ec752007-07-20 13:38:19 +0900634 depends on CPU_FREQ
Paul Mundtcad82442006-01-16 22:14:19 -0800635 select CPU_FREQ_TABLE
636 help
Paul Mundt8a655052008-12-17 15:06:54 +0900637 This adds the cpufreq driver for SuperH. Any CPU that supports
638 clock rate rounding through the clock framework can use this
639 driver. While it will make the kernel slightly larger, this is
640 harmless for CPUs that don't support rate rounding. The driver
641 will also generate a notice in the boot log before disabling
642 itself if the CPU in question is not capable of rate rounding.
Paul Mundtcad82442006-01-16 22:14:19 -0800643
644 For details, take a look at <file:Documentation/cpu-freq>.
645
646 If unsure, say N.
647
648endmenu
649
Paul Mundt9f5e8ee2006-11-24 11:22:57 +0900650source "arch/sh/drivers/Kconfig"
651
Paul Mundtcad82442006-01-16 22:14:19 -0800652endmenu
653
Paul Mundtcad82442006-01-16 22:14:19 -0800654menu "Kernel features"
655
Paul Mundt91b91d02006-09-27 18:08:33 +0900656source kernel/Kconfig.hz
657
Paul Mundtcad82442006-01-16 22:14:19 -0800658config KEXEC
659 bool "kexec system call (EXPERIMENTAL)"
Kees Cook0d57af12013-01-16 18:53:26 -0800660 depends on SUPERH32 && MMU
Paul Mundtcad82442006-01-16 22:14:19 -0800661 help
662 kexec is a system call that implements the ability to shutdown your
663 current kernel, and to start another kernel. It is like a reboot
Matt LaPlante1f1332f2006-06-29 01:32:47 -0400664 but it is independent of the system firmware. And like a reboot
Paul Mundtcad82442006-01-16 22:14:19 -0800665 you can start any kernel with it, not just Linux.
666
Matt LaPlante1f1332f2006-06-29 01:32:47 -0400667 The name comes from the similarity to the exec system call.
Paul Mundtcad82442006-01-16 22:14:19 -0800668
669 It is an ongoing process to be certain the hardware in a machine
670 is properly shutdown, so do not be surprised if this code does not
671 initially work for you. It may help to enable device hotplugging
672 support. As of this writing the exact hardware interface is
673 strongly in flux, so no good recommendation can be made.
674
Paul Mundt4d5ade52007-04-27 11:25:57 +0900675config CRASH_DUMP
676 bool "kernel crash dumps (EXPERIMENTAL)"
Kees Cook0d57af12013-01-16 18:53:26 -0800677 depends on SUPERH32 && BROKEN_ON_SMP
Paul Mundt4d5ade52007-04-27 11:25:57 +0900678 help
679 Generate crash dump after being started by kexec.
680 This should be normally only set in special crash dump kernels
681 which are loaded in the main kernel with kexec-tools into
682 a specially reserved region and then later executed after
683 a crash by kdump/kexec. The crash dump kernel must be compiled
684 to a memory address not used by the main kernel using
Simon Hormane66ac3f2011-09-15 20:13:00 +0900685 PHYSICAL_START.
Paul Mundt4d5ade52007-04-27 11:25:57 +0900686
687 For more details see Documentation/kdump/kdump.txt
688
Magnus Dammb7cf6dd2009-03-18 08:51:29 +0000689config KEXEC_JUMP
690 bool "kexec jump (EXPERIMENTAL)"
Kees Cook0d57af12013-01-16 18:53:26 -0800691 depends on SUPERH32 && KEXEC && HIBERNATION
Magnus Dammb7cf6dd2009-03-18 08:51:29 +0000692 help
693 Jump between original kernel and kexeced kernel and invoke
694 code via KEXEC
695
Simon Hormane66ac3f2011-09-15 20:13:00 +0900696config PHYSICAL_START
697 hex "Physical address where the kernel is loaded" if (EXPERT || CRASH_DUMP)
698 default MEMORY_START
699 ---help---
700 This gives the physical address where the kernel is loaded
701 and is ordinarily the same as MEMORY_START.
702
703 Different values are primarily used in the case of kexec on panic
704 where the fail safe kernel needs to run at a different address
705 than the panic-ed kernel.
706
Paul Mundtc4637d42008-07-30 15:30:52 +0900707config SECCOMP
708 bool "Enable seccomp to safely compute untrusted bytecode"
709 depends on PROC_FS
Paul Mundtc4637d42008-07-30 15:30:52 +0900710 help
711 This kernel feature is useful for number crunching applications
712 that may need to compute untrusted bytecode during their
713 execution. By using pipes or other transports made available to
714 the process as file descriptors supporting the read/write
715 syscalls, it's possible to isolate those applications in
716 their own address space using seccomp. Once seccomp is
717 enabled via prctl, it cannot be disabled and the task is only
718 allowed to execute a few safe syscalls defined by each seccomp
719 mode.
720
721 If unsure, say N.
722
Filippo Arcidiacono5d920bb2012-04-19 15:45:57 +0900723config CC_STACKPROTECTOR
724 bool "Enable -fstack-protector buffer overflow detection (EXPERIMENTAL)"
Kees Cook0d57af12013-01-16 18:53:26 -0800725 depends on SUPERH32
Filippo Arcidiacono5d920bb2012-04-19 15:45:57 +0900726 help
727 This option turns on the -fstack-protector GCC feature. This
728 feature puts, at the beginning of functions, a canary value on
729 the stack just before the return address, and validates
730 the value just before actually returning. Stack based buffer
731 overflows (that need to overwrite this return address) now also
732 overwrite the canary, which gets detected and the attack is then
733 neutralized via a kernel panic.
734
735 This feature requires gcc version 4.2 or above.
736
Linus Torvalds1da177e2005-04-16 15:20:36 -0700737config SMP
738 bool "Symmetric multi-processing support"
Paul Mundt357d5942007-06-11 15:32:07 +0900739 depends on SYS_SUPPORTS_SMP
Jens Axboe490f5de2008-06-10 20:52:59 +0200740 select USE_GENERIC_SMP_HELPERS
Linus Torvalds1da177e2005-04-16 15:20:36 -0700741 ---help---
742 This enables support for systems with more than one CPU. If you have
743 a system with only one CPU, like most personal computers, say N. If
744 you have a system with more than one CPU, say Y.
745
746 If you say N here, the kernel will run on single and multiprocessor
747 machines, but will use only one CPU of a multiprocessor machine. If
748 you say Y here, the kernel will run on many, but not all,
749 singleprocessor machines. On a singleprocessor machine, the kernel
750 will run faster if you say N here.
751
752 People using multiprocessor machines who say Y here should also say
753 Y to "Enhanced Real Time Clock Support", below.
754
Adrian Bunk03502fa2008-02-03 15:50:21 +0200755 See also <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO
756 available at <http://www.tldp.org/docs.html#howto>.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700757
758 If you don't know what to do here, say N.
759
760config NR_CPUS
761 int "Maximum number of CPUs (2-32)"
762 range 2 32
763 depends on SMP
Paul Mundt2eb2a432009-06-19 16:00:00 +0900764 default "4" if CPU_SUBTYPE_SHX3
Linus Torvalds1da177e2005-04-16 15:20:36 -0700765 default "2"
766 help
767 This allows you to specify the maximum number of CPUs which this
768 kernel will support. The maximum supported value is 32 and the
769 minimum value which makes sense is 2.
770
771 This is purely to save memory - each supported CPU adds
772 approximately eight kilobytes to the kernel image.
773
Paul Mundt763142d2010-04-26 19:08:55 +0900774config HOTPLUG_CPU
775 bool "Support for hot-pluggable CPUs (EXPERIMENTAL)"
Kees Cook0d57af12013-01-16 18:53:26 -0800776 depends on SMP && HOTPLUG
Paul Mundt763142d2010-04-26 19:08:55 +0900777 help
778 Say Y here to experiment with turning CPUs off and on. CPUs
779 can be controlled through /sys/devices/system/cpu.
780
Paul Mundt91b91d02006-09-27 18:08:33 +0900781source "kernel/Kconfig.preempt"
782
Paul Mundt83662462007-09-28 16:04:49 +0900783config GUSA
784 def_bool y
Stuart Menefy1efe4ce2007-11-30 16:12:36 +0900785 depends on !SMP && SUPERH32
Paul Mundt83662462007-09-28 16:04:49 +0900786 help
787 This enables support for gUSA (general UserSpace Atomicity).
788 This is the default implementation for both UP and non-ll/sc
789 CPUs, and is used by the libc, amongst others.
790
791 For additional information, design information can be found
792 in <http://lc.linux.or.jp/lc2002/papers/niibe0919p.pdf>.
793
794 This should only be disabled for special cases where alternate
795 atomicity implementations exist.
796
Stuart Menefy1efe4ce2007-11-30 16:12:36 +0900797config GUSA_RB
798 bool "Implement atomic operations by roll-back (gRB) (EXPERIMENTAL)"
799 depends on GUSA && CPU_SH3 || (CPU_SH4 && !CPU_SH4A)
800 help
801 Enabling this option will allow the kernel to implement some
Matt LaPlante692105b2009-01-26 11:12:25 +0100802 atomic operations using a software implementation of load-locked/
Stuart Menefy1efe4ce2007-11-30 16:12:36 +0900803 store-conditional (LLSC). On machines which do not have hardware
804 LLSC, this should be more efficient than the other alternative of
Matt LaPlante692105b2009-01-26 11:12:25 +0100805 disabling interrupts around the atomic sequence.
Stuart Menefy1efe4ce2007-11-30 16:12:36 +0900806
Matt Fleming86c8c042010-09-10 20:36:23 +0100807config HW_PERF_EVENTS
808 bool "Enable hardware performance counter support for perf events"
809 depends on PERF_EVENTS && CPU_HAS_PMU
810 default y
811 help
812 Enable hardware performance counter support for perf events. If
813 disabled, perf events will use software events only.
814
Paul Mundt43b87742010-04-13 14:43:03 +0900815source "drivers/sh/Kconfig"
816
Paul Mundtcad82442006-01-16 22:14:19 -0800817endmenu
818
819menu "Boot options"
820
821config ZERO_PAGE_OFFSET
Paul Mundtb412a49a2009-05-10 01:23:25 +0900822 hex
823 default "0x00010000" if PAGE_SIZE_64KB || SH_RTS7751R2D || \
824 SH_7751_SOLUTION_ENGINE
825 default "0x00004000" if PAGE_SIZE_16KB || SH_SH03
Paul Mundt7a847f82006-12-26 15:29:19 +0900826 default "0x00002000" if PAGE_SIZE_8KB
Paul Mundtcad82442006-01-16 22:14:19 -0800827 default "0x00001000"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700828 help
Paul Mundtcad82442006-01-16 22:14:19 -0800829 This sets the default offset of zero page.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700830
Paul Mundtcad82442006-01-16 22:14:19 -0800831config BOOT_LINK_OFFSET
Paul Mundtb412a49a2009-05-10 01:23:25 +0900832 hex
833 default "0x00210000" if SH_SHMIN
Paul Mundta2e76c82009-05-10 00:54:39 +0900834 default "0x00400000" if SH_CAYMAN
Paul Mundtb412a49a2009-05-10 01:23:25 +0900835 default "0x00810000" if SH_7780_SOLUTION_ENGINE
836 default "0x009e0000" if SH_TITAN
837 default "0x01800000" if SH_SDK7780
838 default "0x02000000" if SH_EDOSK7760
Paul Mundtcad82442006-01-16 22:14:19 -0800839 default "0x00800000"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700840 help
Paul Mundtcad82442006-01-16 22:14:19 -0800841 This option allows you to set the link address offset of the zImage.
842 This can be useful if you are on a board which has a small amount of
843 memory.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700844
Paul Mundtb412a49a2009-05-10 01:23:25 +0900845config ENTRY_OFFSET
846 hex
847 default "0x00001000" if PAGE_SIZE_4KB
848 default "0x00002000" if PAGE_SIZE_8KB
849 default "0x00004000" if PAGE_SIZE_16KB
850 default "0x00010000" if PAGE_SIZE_64KB
851 default "0x00000000"
852
Magnus Damm4705b2e2010-05-18 14:43:15 +0000853config ROMIMAGE_MMCIF
854 bool "Include MMCIF loader in romImage (EXPERIMENTAL)"
Kees Cook0d57af12013-01-16 18:53:26 -0800855 depends on CPU_SUBTYPE_SH7724
Magnus Damm4705b2e2010-05-18 14:43:15 +0000856 help
857 Say Y here to include experimental MMCIF loading code in
858 romImage. With this enabled it is possible to write the romImage
859 kernel image to an MMC card and boot the kernel straight from
860 the reset vector. At reset the processor Mask ROM will load the
861 first part of the romImage which in turn loads the rest the kernel
862 image to RAM using the MMCIF hardware block.
863
Pawel Molld724a9c2009-08-24 16:25:38 +0900864choice
865 prompt "Kernel command line"
866 optional
867 default CMDLINE_OVERWRITE
868 help
869 Setting this option allows the kernel command line arguments
870 to be set.
871
872config CMDLINE_OVERWRITE
873 bool "Overwrite bootloader kernel arguments"
874 help
875 Given string will overwrite any arguments passed in by
876 a bootloader.
877
878config CMDLINE_EXTEND
879 bool "Extend bootloader kernel arguments"
880 help
881 Given string will be concatenated with arguments passed in
882 by a bootloader.
883
884endchoice
Linus Torvalds1da177e2005-04-16 15:20:36 -0700885
Paul Mundtcad82442006-01-16 22:14:19 -0800886config CMDLINE
Pawel Molld724a9c2009-08-24 16:25:38 +0900887 string "Kernel command line arguments string"
888 depends on CMDLINE_OVERWRITE || CMDLINE_EXTEND
Paul Mundtcad82442006-01-16 22:14:19 -0800889 default "console=ttySC1,115200"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700890
891endmenu
892
Paul Mundtcad82442006-01-16 22:14:19 -0800893menu "Bus options"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700894
Paul Mundtcad82442006-01-16 22:14:19 -0800895config SUPERHYWAY
896 tristate "SuperHyway Bus support"
897 depends on CPU_SUBTYPE_SH4_202
Linus Torvalds1da177e2005-04-16 15:20:36 -0700898
Adrian McMenamin17be2d22007-09-21 15:55:55 +0900899config MAPLE
Paul Mundte16038a2009-01-09 15:12:30 +0900900 bool "Maple Bus support"
901 depends on SH_DREAMCAST
902 help
903 The Maple Bus is SEGA's serial communication bus for peripherals
904 on the Dreamcast. Without this bus support you won't be able to
905 get your Dreamcast keyboard etc to work, so most users
906 probably want to say 'Y' here, unless you are only using the
907 Dreamcast with a serial line terminal or a remote network
908 connection.
Adrian McMenamin17be2d22007-09-21 15:55:55 +0900909
Paul Mundt76934652009-10-27 10:36:55 +0900910config PCI
911 bool "PCI support"
912 depends on SYS_SUPPORTS_PCI
Paul Mundt320e68d2010-01-29 22:38:13 +0900913 select PCI_DOMAINS
Michael S. Tsirkin43db5952011-11-24 21:10:12 +0200914 select GENERIC_PCI_IOMAP
Michael S. Tsirkin1e05b622012-01-30 00:29:10 +0200915 select NO_GENERIC_PCI_IOPORT_MAP
Paul Mundt76934652009-10-27 10:36:55 +0900916 help
917 Find out whether you have a PCI motherboard. PCI is the name of a
918 bus system, i.e. the way the CPU talks to the other stuff inside
919 your box. If you have PCI, say Y, otherwise N.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700920
Paul Mundt320e68d2010-01-29 22:38:13 +0900921config PCI_DOMAINS
922 bool
923
Paul Mundte16038a2009-01-09 15:12:30 +0900924source "drivers/pci/pcie/Kconfig"
925
Linus Torvalds1da177e2005-04-16 15:20:36 -0700926source "drivers/pci/Kconfig"
927
928source "drivers/pcmcia/Kconfig"
929
930source "drivers/pci/hotplug/Kconfig"
931
932endmenu
933
934menu "Executable file formats"
935
936source "fs/Kconfig.binfmt"
937
938endmenu
939
Andriy Skulysh3aa770e2006-09-27 16:20:22 +0900940menu "Power management options (EXPERIMENTAL)"
Johannes Bergf4cb5702007-12-08 02:14:00 +0100941
Magnus Dammc6f17cb2008-12-04 22:45:20 +0900942source "kernel/power/Kconfig"
943
944source "drivers/cpuidle/Kconfig"
Andriy Skulysh3aa770e2006-09-27 16:20:22 +0900945
Andriy Skulysh3aa770e2006-09-27 16:20:22 +0900946endmenu
947
Sam Ravnborgd5950b42005-07-11 21:03:49 -0700948source "net/Kconfig"
949
Linus Torvalds1da177e2005-04-16 15:20:36 -0700950source "drivers/Kconfig"
951
952source "fs/Kconfig"
953
Linus Torvalds1da177e2005-04-16 15:20:36 -0700954source "arch/sh/Kconfig.debug"
955
956source "security/Kconfig"
957
958source "crypto/Kconfig"
959
Linus Torvalds1da177e2005-04-16 15:20:36 -0700960source "lib/Kconfig"