blob: 5e859633ce69f13c9d2b1d1c1a5727ad986a9fab [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
Anna-Maria Gleixner8cf200d2012-05-18 16:45:53 +000036 select GENERIC_CLOCKEVENTS
37 select GENERIC_CMOS_UPDATE if SH_SH03 || SH_DREAMCAST
Paul Mundt0e100e12012-05-25 13:02:48 +090038 select GENERIC_STRNCPY_FROM_USER
Paul Mundtcba8df42012-06-04 15:46:05 +090039 select GENERIC_STRNLEN_USER
David Howells786d35d2012-09-28 14:31:03 +093040 select HAVE_MOD_ARCH_SPECIFIC if DWARF_UNWINDER
41 select MODULES_USE_ELF_RELA
Al Viro881e2522012-12-25 16:20:46 -050042 select OLD_SIGSUSPEND
Al Viro0679a852012-12-25 19:23:55 -050043 select OLD_SIGACTION
Linus Torvalds1da177e2005-04-16 15:20:36 -070044 help
45 The SuperH is a RISC processor targeted for use in embedded systems
46 and consumer electronics; it was also used in the Sega Dreamcast
47 gaming console. The SuperH port has a home page at
48 <http://www.linux-sh.org/>.
49
Paul Mundt39d28a22007-11-08 18:39:33 +090050config SUPERH32
Paul Mundt3cc000b2009-04-11 08:39:27 +090051 def_bool ARCH = "sh"
Chris Smithd39f5452008-09-05 17:15:39 +090052 select HAVE_KPROBES
53 select HAVE_KRETPROBES
Paul Mundt6d63e732010-01-19 14:00:14 +090054 select HAVE_IOREMAP_PROT if MMU && !X2TLB
Paul Mundt694f94f2008-10-31 16:20:36 +090055 select HAVE_FUNCTION_TRACER
Matt Flemingfad57fe2008-11-12 20:11:47 +090056 select HAVE_FTRACE_MCOUNT_RECORD
57 select HAVE_DYNAMIC_FTRACE
Matt Flemingc1340c02009-06-28 14:05:44 +010058 select HAVE_FUNCTION_TRACE_MCOUNT_TEST
Paul Mundte4b053d2009-10-13 16:52:50 +090059 select HAVE_FTRACE_NMI_ENTER if DYNAMIC_FTRACE
Will Deaconc1d7e012012-07-30 14:42:46 -070060 select ARCH_WANT_IPC_PARSE_VERSION
Matt Fleming327933f2009-07-11 00:29:03 +000061 select HAVE_FUNCTION_GRAPH_TRACER
Paul Mundtab6e5702008-12-11 18:46:46 +090062 select HAVE_ARCH_KGDB
Paul Mundt6fbfe8d2010-01-06 15:46:53 +090063 select HAVE_HW_BREAKPOINT
Frederic Weisbecker01027522010-04-11 18:55:56 +020064 select HAVE_MIXED_BREAKPOINTS_REGS
Sam Ravnborge583d6b2010-08-14 12:23:39 +000065 select PERF_EVENTS
Paul Mundt8dafc342009-04-02 11:56:38 +090066 select ARCH_HIBERNATION_POSSIBLE if MMU
Paul Mundt57b81332010-10-26 15:20:51 +090067 select SPARSE_IRQ
Paul Mundtea0e1a92007-11-21 15:58:01 +090068
69config SUPERH64
Paul Mundt3cc000b2009-04-11 08:39:27 +090070 def_bool ARCH = "sh64"
Paul Mundt3a898c02012-05-24 15:05:29 +090071 select KALLSYMS
Paul Mundt39d28a22007-11-08 18:39:33 +090072
Paul Mundtf42b7e32008-07-29 20:12:51 +090073config ARCH_DEFCONFIG
74 string
75 default "arch/sh/configs/shx3_defconfig" if SUPERH32
76 default "arch/sh/configs/cayman_defconfig" if SUPERH64
77
Linus Torvalds1da177e2005-04-16 15:20:36 -070078config RWSEM_GENERIC_SPINLOCK
Harvey Harrisond7ef4fb2007-12-11 13:49:35 +090079 def_bool y
Linus Torvalds1da177e2005-04-16 15:20:36 -070080
81config RWSEM_XCHGADD_ALGORITHM
82 bool
83
Paul Mundtfa691512007-03-08 19:41:21 +090084config GENERIC_BUG
85 def_bool y
Paul Mundta82d53e2007-11-21 18:22:05 +090086 depends on BUG && SUPERH32
Paul Mundtfa691512007-03-08 19:41:21 +090087
Paul Mundt3767f3f2009-06-15 00:00:42 +090088config GENERIC_CSUM
89 def_bool y
90 depends on SUPERH64
91
Akinobu Mitae2268c72006-03-26 01:39:35 -080092config GENERIC_HWEIGHT
Harvey Harrisond7ef4fb2007-12-11 13:49:35 +090093 def_bool y
Akinobu Mitae2268c72006-03-26 01:39:35 -080094
Magnus Damm2967dab2008-10-08 20:41:43 +090095config GENERIC_GPIO
96 def_bool n
97
Linus Torvalds1da177e2005-04-16 15:20:36 -070098config GENERIC_CALIBRATE_DELAY
Paul Mundtcf204fa2008-09-08 20:47:42 +090099 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700100
Paul Mundtbdcab872008-08-04 14:09:15 +0900101config GENERIC_LOCKBREAK
102 def_bool y
103 depends on SMP && PREEMPT
104
Magnus Dammaf998a92008-12-04 22:45:12 +0900105config ARCH_SUSPEND_POSSIBLE
106 def_bool n
107
108config ARCH_HIBERNATION_POSSIBLE
109 def_bool n
Paul Mundt357d5942007-06-11 15:32:07 +0900110
Paul Mundt0a9b0db2007-01-24 21:56:20 +0900111config SYS_SUPPORTS_APM_EMULATION
112 bool
Magnus Dammaf998a92008-12-04 22:45:12 +0900113 select ARCH_SUSPEND_POSSIBLE
Paul Mundt357d5942007-06-11 15:32:07 +0900114
Paul Mundtffb4a732009-10-27 07:22:37 +0900115config SYS_SUPPORTS_HUGETLBFS
116 bool
117
Paul Mundt357d5942007-06-11 15:32:07 +0900118config SYS_SUPPORTS_SMP
119 bool
120
121config SYS_SUPPORTS_NUMA
122 bool
123
124config SYS_SUPPORTS_PCI
125 bool
Paul Mundt0a9b0db2007-01-24 21:56:20 +0900126
Paul Mundtf5ad8812009-01-29 18:08:58 +0900127config SYS_SUPPORTS_CMT
128 bool
129
Magnus Dammd5ed4c22009-04-30 07:02:49 +0000130config SYS_SUPPORTS_MTU2
131 bool
132
Magnus Damm9570ef22009-05-01 06:51:00 +0000133config SYS_SUPPORTS_TMU
134 bool
135
Paul Mundtafbfb522006-12-04 18:17:28 +0900136config STACKTRACE_SUPPORT
Harvey Harrisond7ef4fb2007-12-11 13:49:35 +0900137 def_bool y
Paul Mundtafbfb522006-12-04 18:17:28 +0900138
139config LOCKDEP_SUPPORT
Harvey Harrisond7ef4fb2007-12-11 13:49:35 +0900140 def_bool y
Paul Mundtafbfb522006-12-04 18:17:28 +0900141
Paul Mundt5a89f1a2008-09-13 01:44:03 +0900142config HAVE_LATENCYTOP_SUPPORT
143 def_bool y
Paul Mundt5a89f1a2008-09-13 01:44:03 +0900144
David Howellsf0d1b0b2006-12-08 02:37:49 -0800145config ARCH_HAS_ILOG2_U32
Harvey Harrisond7ef4fb2007-12-11 13:49:35 +0900146 def_bool n
David Howellsf0d1b0b2006-12-08 02:37:49 -0800147
148config ARCH_HAS_ILOG2_U64
Harvey Harrisond7ef4fb2007-12-11 13:49:35 +0900149 def_bool n
David Howellsf0d1b0b2006-12-08 02:37:49 -0800150
Paul Mundte869a902009-04-02 13:08:31 +0900151config ARCH_HAS_DEFAULT_IDLE
152 def_bool y
153
Paul Mundt86e4dd52010-05-25 20:06:13 +0900154config NO_IOPORT
Paul Mundt37b7a972010-11-01 09:49:04 -0400155 def_bool !PCI
Paul Mundtc30b9c42012-05-21 18:19:18 +0900156 depends on !SH_CAYMAN && !SH_SH4202_MICRODEV && !SH_SHMIN && \
157 !SH_HP6XX && !SH_SOLUTION_ENGINE
Paul Mundt86e4dd52010-05-25 20:06:13 +0900158
Magnus Damme7cc9a72008-02-07 20:18:21 +0900159config IO_TRAPPED
160 bool
161
Paul Mundtb7e68d62012-03-29 16:05:10 +0900162config SWAP_IO_SPACE
163 bool
164
Paul Mundt01be5d62009-10-27 10:35:02 +0900165config DMA_COHERENT
166 bool
167
168config DMA_NONCOHERENT
169 def_bool !DMA_COHERENT
170
FUJITA Tomonori5cabbb62010-03-10 15:23:27 -0800171config NEED_DMA_MAP_STATE
172 def_bool DMA_NONCOHERENT
173
FUJITA Tomonori18e98302010-05-26 14:44:32 -0700174config NEED_SG_DMA_LENGTH
175 def_bool y
176
Linus Torvalds1da177e2005-04-16 15:20:36 -0700177source "init/Kconfig"
178
Matt Helsleydc52ddc2008-10-18 20:27:21 -0700179source "kernel/Kconfig.freezer"
180
Linus Torvalds1da177e2005-04-16 15:20:36 -0700181menu "System type"
182
Paul Mundtb5f42db2007-11-08 18:38:14 +0900183#
184# Processor families
185#
186config CPU_SH2
187 bool
188
189config CPU_SH2A
190 bool
191 select CPU_SH2
Paul Mundte2fcf742010-11-04 12:32:24 +0900192 select UNCACHED_MAPPING
Paul Mundtb5f42db2007-11-08 18:38:14 +0900193
194config CPU_SH3
195 bool
196 select CPU_HAS_INTEVT
197 select CPU_HAS_SR_RB
Paul Mundt4fa48e12009-05-08 15:28:15 +0900198 select SYS_SUPPORTS_TMU
Paul Mundtb5f42db2007-11-08 18:38:14 +0900199
200config CPU_SH4
201 bool
202 select CPU_HAS_INTEVT
203 select CPU_HAS_SR_RB
Paul Mundtb5f42db2007-11-08 18:38:14 +0900204 select CPU_HAS_FPU if !CPU_SH4AL_DSP
Paul Mundt4fa48e12009-05-08 15:28:15 +0900205 select SYS_SUPPORTS_TMU
Paul Mundtffb4a732009-10-27 07:22:37 +0900206 select SYS_SUPPORTS_HUGETLBFS if MMU
Paul Mundtb5f42db2007-11-08 18:38:14 +0900207
208config CPU_SH4A
209 bool
210 select CPU_SH4
211
212config CPU_SH4AL_DSP
213 bool
214 select CPU_SH4A
215 select CPU_HAS_DSP
216
Paul Mundtea0e1a92007-11-21 15:58:01 +0900217config CPU_SH5
218 bool
219 select CPU_HAS_FPU
Paul Mundtadd47062009-05-08 16:12:17 +0900220 select SYS_SUPPORTS_TMU
Paul Mundtffb4a732009-10-27 07:22:37 +0900221 select SYS_SUPPORTS_HUGETLBFS if MMU
Paul Mundtea0e1a92007-11-21 15:58:01 +0900222
Paul Mundtb5f42db2007-11-08 18:38:14 +0900223config CPU_SHX2
224 bool
225
226config CPU_SHX3
227 bool
Paul Mundt01be5d62009-10-27 10:35:02 +0900228 select DMA_COHERENT
Paul Mundt4b478ee2010-05-11 15:24:04 +0900229 select SYS_SUPPORTS_SMP
230 select SYS_SUPPORTS_NUMA
Paul Mundtb5f42db2007-11-08 18:38:14 +0900231
Paul Mundtdc65a972009-03-10 16:26:29 +0900232config ARCH_SHMOBILE
233 bool
Magnus Damm77594912009-03-13 15:23:04 +0000234 select ARCH_SUSPEND_POSSIBLE
Magnus Dammac2c5962009-08-19 10:31:53 +0000235 select PM
236 select PM_RUNTIME
Paul Mundtdc65a972009-03-10 16:26:29 +0900237
Matt Fleming86c8c042010-09-10 20:36:23 +0100238config CPU_HAS_PMU
239 depends on CPU_SH4 || CPU_SH4A
240 default y
241 bool
242
Paul Mundt3cc000b2009-04-11 08:39:27 +0900243if SUPERH32
244
Paul Mundtb5f42db2007-11-08 18:38:14 +0900245choice
246 prompt "Processor sub-type selection"
247
248#
249# Processor subtypes
250#
251
252# SH-2 Processor Support
253
254config CPU_SUBTYPE_SH7619
255 bool "Support SH7619 processor"
256 select CPU_SH2
Paul Mundtf5ad8812009-01-29 18:08:58 +0900257 select SYS_SUPPORTS_CMT
Paul Mundtb5f42db2007-11-08 18:38:14 +0900258
259# SH-2A Processor Support
260
Peter Griffin28259992008-11-28 22:48:20 +0900261config CPU_SUBTYPE_SH7201
262 bool "Support SH7201 processor"
263 select CPU_SH2A
264 select CPU_HAS_FPU
Magnus Dammda107c62009-04-30 07:06:26 +0000265 select SYS_SUPPORTS_MTU2
Peter Griffin28259992008-11-28 22:48:20 +0900266
Paul Mundt6d01f512007-11-26 18:17:21 +0900267config CPU_SUBTYPE_SH7203
268 bool "Support SH7203 processor"
269 select CPU_SH2A
Paul Mundt74d99a52007-11-26 20:38:36 +0900270 select CPU_HAS_FPU
Paul Mundtf5ad8812009-01-29 18:08:58 +0900271 select SYS_SUPPORTS_CMT
Magnus Dammda107c62009-04-30 07:06:26 +0000272 select SYS_SUPPORTS_MTU2
Paul Mundtf020c922010-11-01 12:24:48 -0400273 select ARCH_WANT_OPTIONAL_GPIOLIB
Laurent Pinchartb768ecbc2012-12-15 23:51:05 +0100274 select PINCTRL
Paul Mundt6d01f512007-11-26 18:17:21 +0900275
Paul Mundtb5f42db2007-11-08 18:38:14 +0900276config CPU_SUBTYPE_SH7206
277 bool "Support SH7206 processor"
278 select CPU_SH2A
Paul Mundtf5ad8812009-01-29 18:08:58 +0900279 select SYS_SUPPORTS_CMT
Magnus Dammda107c62009-04-30 07:06:26 +0000280 select SYS_SUPPORTS_MTU2
Paul Mundtb5f42db2007-11-08 18:38:14 +0900281
Paul Mundta8f67f42007-11-26 19:54:02 +0900282config CPU_SUBTYPE_SH7263
283 bool "Support SH7263 processor"
284 select CPU_SH2A
Paul Mundt74d99a52007-11-26 20:38:36 +0900285 select CPU_HAS_FPU
Paul Mundtf5ad8812009-01-29 18:08:58 +0900286 select SYS_SUPPORTS_CMT
Magnus Dammda107c62009-04-30 07:06:26 +0000287 select SYS_SUPPORTS_MTU2
Paul Mundta8f67f42007-11-26 19:54:02 +0900288
Phil Edworthy51ce3062012-05-09 07:59:27 +0100289config CPU_SUBTYPE_SH7264
290 bool "Support SH7264 processor"
291 select CPU_SH2A
292 select CPU_HAS_FPU
293 select SYS_SUPPORTS_CMT
294 select SYS_SUPPORTS_MTU2
Laurent Pinchart5946e7b2012-12-15 23:51:06 +0100295 select PINCTRL
Phil Edworthy51ce3062012-05-09 07:59:27 +0100296
Phil Edworthy0b25b7c2012-05-10 09:26:52 +0100297config CPU_SUBTYPE_SH7269
298 bool "Support SH7269 processor"
299 select CPU_SH2A
300 select CPU_HAS_FPU
301 select SYS_SUPPORTS_CMT
302 select SYS_SUPPORTS_MTU2
Laurent Pinchartfb872fc2012-12-15 23:51:07 +0100303 select PINCTRL
Phil Edworthy0b25b7c2012-05-10 09:26:52 +0100304
Paul Mundt2ad69902008-03-13 12:52:44 +0900305config CPU_SUBTYPE_MXG
306 bool "Support MX-G processor"
307 select CPU_SH2A
Magnus Dammda107c62009-04-30 07:06:26 +0000308 select SYS_SUPPORTS_MTU2
Paul Mundt2ad69902008-03-13 12:52:44 +0900309 help
310 Select MX-G if running on an R8A03022BG part.
311
Paul Mundtb5f42db2007-11-08 18:38:14 +0900312# SH-3 Processor Support
313
314config CPU_SUBTYPE_SH7705
315 bool "Support SH7705 processor"
316 select CPU_SH3
317
318config CPU_SUBTYPE_SH7706
319 bool "Support SH7706 processor"
320 select CPU_SH3
321 help
322 Select SH7706 if you have a 133 Mhz SH-3 HD6417706 CPU.
323
324config CPU_SUBTYPE_SH7707
325 bool "Support SH7707 processor"
326 select CPU_SH3
327 help
328 Select SH7707 if you have a 60 Mhz SH-3 HD6417707 CPU.
329
330config CPU_SUBTYPE_SH7708
331 bool "Support SH7708 processor"
332 select CPU_SH3
333 help
334 Select SH7708 if you have a 60 Mhz SH-3 HD6417708S or
335 if you have a 100 Mhz SH-3 HD6417708R CPU.
336
337config CPU_SUBTYPE_SH7709
338 bool "Support SH7709 processor"
339 select CPU_SH3
340 help
341 Select SH7709 if you have a 80 Mhz SH-3 HD6417709 CPU.
342
343config CPU_SUBTYPE_SH7710
344 bool "Support SH7710 processor"
345 select CPU_SH3
346 select CPU_HAS_DSP
347 help
348 Select SH7710 if you have a SH3-DSP SH7710 CPU.
349
350config CPU_SUBTYPE_SH7712
351 bool "Support SH7712 processor"
352 select CPU_SH3
353 select CPU_HAS_DSP
354 help
355 Select SH7712 if you have a SH3-DSP SH7712 CPU.
356
357config CPU_SUBTYPE_SH7720
358 bool "Support SH7720 processor"
359 select CPU_SH3
360 select CPU_HAS_DSP
Magnus Damm2b23a882009-05-12 10:21:11 +0000361 select SYS_SUPPORTS_CMT
Paul Mundtf020c922010-11-01 12:24:48 -0400362 select ARCH_WANT_OPTIONAL_GPIOLIB
Paul Mundte3e98872010-12-01 15:58:58 +0900363 select USB_ARCH_HAS_OHCI
Paul Mundt7b61ca52011-06-30 15:04:38 +0900364 select USB_OHCI_SH if USB_OHCI_HCD
Laurent Pinchart85db6bf2012-12-15 23:51:08 +0100365 select PINCTRL
Paul Mundtb5f42db2007-11-08 18:38:14 +0900366 help
367 Select SH7720 if you have a SH3-DSP SH7720 CPU.
368
Yoshihiro Shimoda31a49c42007-12-26 11:45:06 +0900369config CPU_SUBTYPE_SH7721
370 bool "Support SH7721 processor"
371 select CPU_SH3
372 select CPU_HAS_DSP
Magnus Damm2b23a882009-05-12 10:21:11 +0000373 select SYS_SUPPORTS_CMT
Paul Mundte3e98872010-12-01 15:58:58 +0900374 select USB_ARCH_HAS_OHCI
Paul Mundt7b61ca52011-06-30 15:04:38 +0900375 select USB_OHCI_SH if USB_OHCI_HCD
Yoshihiro Shimoda31a49c42007-12-26 11:45:06 +0900376 help
377 Select SH7721 if you have a SH3-DSP SH7721 CPU.
378
Paul Mundtb5f42db2007-11-08 18:38:14 +0900379# SH-4 Processor Support
380
381config CPU_SUBTYPE_SH7750
382 bool "Support SH7750 processor"
383 select CPU_SH4
384 help
385 Select SH7750 if you have a 200 Mhz SH-4 HD6417750 CPU.
386
387config CPU_SUBTYPE_SH7091
388 bool "Support SH7091 processor"
389 select CPU_SH4
390 help
391 Select SH7091 if you have an SH-4 based Sega device (such as
392 the Dreamcast, Naomi, and Naomi 2).
393
394config CPU_SUBTYPE_SH7750R
395 bool "Support SH7750R processor"
396 select CPU_SH4
397
398config CPU_SUBTYPE_SH7750S
399 bool "Support SH7750S processor"
400 select CPU_SH4
401
402config CPU_SUBTYPE_SH7751
403 bool "Support SH7751 processor"
404 select CPU_SH4
405 help
406 Select SH7751 if you have a 166 Mhz SH-4 HD6417751 CPU,
407 or if you have a HD6417751R CPU.
408
409config CPU_SUBTYPE_SH7751R
410 bool "Support SH7751R processor"
411 select CPU_SH4
412
413config CPU_SUBTYPE_SH7760
414 bool "Support SH7760 processor"
415 select CPU_SH4
416
417config CPU_SUBTYPE_SH4_202
418 bool "Support SH4-202 processor"
419 select CPU_SH4
420
421# SH-4A Processor Support
422
Paul Mundt178dd0c2008-04-09 17:56:18 +0900423config CPU_SUBTYPE_SH7723
424 bool "Support SH7723 processor"
425 select CPU_SH4A
426 select CPU_SHX2
Paul Mundtdc65a972009-03-10 16:26:29 +0900427 select ARCH_SHMOBILE
Paul Mundt178dd0c2008-04-09 17:56:18 +0900428 select ARCH_SPARSEMEM_ENABLE
Paul Mundtf5ad8812009-01-29 18:08:58 +0900429 select SYS_SUPPORTS_CMT
Paul Mundtf020c922010-11-01 12:24:48 -0400430 select ARCH_WANT_OPTIONAL_GPIOLIB
Laurent Pinchart16941a82012-12-15 23:51:10 +0100431 select PINCTRL
Paul Mundt178dd0c2008-04-09 17:56:18 +0900432 help
433 Select SH7723 if you have an SH-MobileR2 CPU.
434
Kuninori Morimoto0207a2e2009-04-16 14:40:56 +0900435config CPU_SUBTYPE_SH7724
436 bool "Support SH7724 processor"
437 select CPU_SH4A
438 select CPU_SHX2
Paul Mundt59fe7002009-04-16 15:43:42 +0900439 select ARCH_SHMOBILE
Kuninori Morimoto0207a2e2009-04-16 14:40:56 +0900440 select ARCH_SPARSEMEM_ENABLE
441 select SYS_SUPPORTS_CMT
Paul Mundtf020c922010-11-01 12:24:48 -0400442 select ARCH_WANT_OPTIONAL_GPIOLIB
Laurent Pinchart18ebd222012-12-15 23:51:11 +0100443 select PINCTRL
Kuninori Morimoto0207a2e2009-04-16 14:40:56 +0900444 help
445 Select SH7724 if you have an SH-MobileR2R CPU.
446
Nobuhiro Iwamatsufea88a02012-04-12 15:45:32 +0900447config CPU_SUBTYPE_SH7734
448 bool "Support SH7734 processor"
449 select CPU_SH4A
450 select CPU_SHX2
451 select ARCH_WANT_OPTIONAL_GPIOLIB
452 select USB_ARCH_HAS_OHCI
453 select USB_ARCH_HAS_EHCI
Laurent Pinchart2c172182012-12-15 23:51:12 +0100454 select PINCTRL
Nobuhiro Iwamatsufea88a02012-04-12 15:45:32 +0900455 help
456 Select SH7734 if you have a SH4A SH7734 CPU.
457
Yoshihiro Shimodac01f0f12009-08-21 16:30:28 +0900458config CPU_SUBTYPE_SH7757
459 bool "Support SH7757 processor"
460 select CPU_SH4A
461 select CPU_SHX2
Paul Mundtf020c922010-11-01 12:24:48 -0400462 select ARCH_WANT_OPTIONAL_GPIOLIB
Yoshihiro Shimoda0fe48602011-02-25 07:38:47 +0000463 select USB_ARCH_HAS_OHCI
464 select USB_ARCH_HAS_EHCI
Laurent Pincharteb61b772012-12-15 23:51:13 +0100465 select PINCTRL
Yoshihiro Shimodac01f0f12009-08-21 16:30:28 +0900466 help
467 Select SH7757 if you have a SH4A SH7757 CPU.
468
Yoshihiro Shimoda7d740a02008-01-07 14:40:07 +0900469config CPU_SUBTYPE_SH7763
470 bool "Support SH7763 processor"
471 select CPU_SH4A
Paul Mundte3e98872010-12-01 15:58:58 +0900472 select USB_ARCH_HAS_OHCI
Paul Mundt7b61ca52011-06-30 15:04:38 +0900473 select USB_OHCI_SH if USB_OHCI_HCD
Yoshihiro Shimoda7d740a02008-01-07 14:40:07 +0900474 help
475 Select SH7763 if you have a SH4A SH7763(R5S77631) CPU.
476
Paul Mundtb5f42db2007-11-08 18:38:14 +0900477config CPU_SUBTYPE_SH7770
478 bool "Support SH7770 processor"
479 select CPU_SH4A
480
481config CPU_SUBTYPE_SH7780
482 bool "Support SH7780 processor"
483 select CPU_SH4A
484
485config CPU_SUBTYPE_SH7785
486 bool "Support SH7785 processor"
487 select CPU_SH4A
488 select CPU_SHX2
489 select ARCH_SPARSEMEM_ENABLE
490 select SYS_SUPPORTS_NUMA
Paul Mundtf020c922010-11-01 12:24:48 -0400491 select ARCH_WANT_OPTIONAL_GPIOLIB
Laurent Pinchart77bd27b2012-12-15 23:51:14 +0100492 select PINCTRL
Paul Mundtb5f42db2007-11-08 18:38:14 +0900493
Kuninori Morimoto55ba99e2009-03-03 15:40:25 +0900494config CPU_SUBTYPE_SH7786
495 bool "Support SH7786 processor"
496 select CPU_SH4A
Paul Mundt37042fb2009-03-03 15:57:02 +0900497 select CPU_SHX3
Paul Mundt8263a672009-03-17 17:49:49 +0900498 select CPU_HAS_PTEAEX
Paul Mundt2eb2a432009-06-19 16:00:00 +0900499 select GENERIC_CLOCKEVENTS_BROADCAST if SMP
Paul Mundtf020c922010-11-01 12:24:48 -0400500 select ARCH_WANT_OPTIONAL_GPIOLIB
Paul Mundte3e98872010-12-01 15:58:58 +0900501 select USB_ARCH_HAS_OHCI
Paul Mundt7b61ca52011-06-30 15:04:38 +0900502 select USB_OHCI_SH if USB_OHCI_HCD
Paul Mundte3e98872010-12-01 15:58:58 +0900503 select USB_ARCH_HAS_EHCI
Paul Mundt7b61ca52011-06-30 15:04:38 +0900504 select USB_EHCI_SH if USB_EHCI_HCD
Laurent Pinchartc0fdbff2012-12-15 23:51:15 +0100505 select PINCTRL
Kuninori Morimoto55ba99e2009-03-03 15:40:25 +0900506
Paul Mundtb5f42db2007-11-08 18:38:14 +0900507config CPU_SUBTYPE_SHX3
508 bool "Support SH-X3 processor"
509 select CPU_SH4A
510 select CPU_SHX3
Paul Mundt58402632008-09-05 15:36:39 +0900511 select GENERIC_CLOCKEVENTS_BROADCAST if SMP
Paul Mundt742759e2010-10-02 19:43:40 +0900512 select ARCH_REQUIRE_GPIOLIB
Laurent Pinchart3e347f02012-12-15 23:51:16 +0100513 select PINCTRL
Paul Mundtb5f42db2007-11-08 18:38:14 +0900514
515# SH4AL-DSP Processor Support
516
517config CPU_SUBTYPE_SH7343
518 bool "Support SH7343 processor"
519 select CPU_SH4AL_DSP
Paul Mundtdc65a972009-03-10 16:26:29 +0900520 select ARCH_SHMOBILE
Paul Mundtf5ad8812009-01-29 18:08:58 +0900521 select SYS_SUPPORTS_CMT
Paul Mundtb5f42db2007-11-08 18:38:14 +0900522
523config CPU_SUBTYPE_SH7722
524 bool "Support SH7722 processor"
525 select CPU_SH4AL_DSP
526 select CPU_SHX2
Paul Mundtdc65a972009-03-10 16:26:29 +0900527 select ARCH_SHMOBILE
Paul Mundtb5f42db2007-11-08 18:38:14 +0900528 select ARCH_SPARSEMEM_ENABLE
529 select SYS_SUPPORTS_NUMA
Paul Mundtf5ad8812009-01-29 18:08:58 +0900530 select SYS_SUPPORTS_CMT
Paul Mundtf020c922010-11-01 12:24:48 -0400531 select ARCH_WANT_OPTIONAL_GPIOLIB
Laurent Pinchartef97c3c2012-12-15 23:51:09 +0100532 select PINCTRL
Paul Mundtb5f42db2007-11-08 18:38:14 +0900533
Magnus Damm9109a302008-02-08 17:31:24 +0900534config CPU_SUBTYPE_SH7366
535 bool "Support SH7366 processor"
536 select CPU_SH4AL_DSP
537 select CPU_SHX2
Paul Mundtdc65a972009-03-10 16:26:29 +0900538 select ARCH_SHMOBILE
Magnus Damm9109a302008-02-08 17:31:24 +0900539 select ARCH_SPARSEMEM_ENABLE
540 select SYS_SUPPORTS_NUMA
Paul Mundtf5ad8812009-01-29 18:08:58 +0900541 select SYS_SUPPORTS_CMT
Magnus Damm9109a302008-02-08 17:31:24 +0900542
Paul Mundt3cc000b2009-04-11 08:39:27 +0900543endchoice
544
545endif
546
547if SUPERH64
548
549choice
550 prompt "Processor sub-type selection"
551
Paul Mundtea0e1a92007-11-21 15:58:01 +0900552# SH-5 Processor Support
553
554config CPU_SUBTYPE_SH5_101
555 bool "Support SH5-101 processor"
556 select CPU_SH5
557
558config CPU_SUBTYPE_SH5_103
559 bool "Support SH5-103 processor"
Paul Mundt8ef97dd2008-02-14 15:30:54 +0900560 select CPU_SH5
Paul Mundtea0e1a92007-11-21 15:58:01 +0900561
Paul Mundtb5f42db2007-11-08 18:38:14 +0900562endchoice
563
Paul Mundt3cc000b2009-04-11 08:39:27 +0900564endif
565
Paul Mundtcad82442006-01-16 22:14:19 -0800566source "arch/sh/mm/Kconfig"
Paul Mundt939a24a2008-07-29 21:41:37 +0900567
Paul Mundt4690bdc2007-11-09 13:45:42 +0900568source "arch/sh/Kconfig.cpu"
Paul Mundtcad82442006-01-16 22:14:19 -0800569
Paul Mundt939a24a2008-07-29 21:41:37 +0900570source "arch/sh/boards/Kconfig"
Paul Mundtf3d22292007-05-14 17:29:12 +0900571
Paul Mundt32351a22007-03-12 14:38:59 +0900572menu "Timer and clock configuration"
573
Magnus Damm9570ef22009-05-01 06:51:00 +0000574config SH_TIMER_TMU
575 bool "TMU timer driver"
Magnus Dammf19900b2009-05-12 10:25:54 +0000576 depends on SYS_SUPPORTS_TMU
Magnus Damm9570ef22009-05-01 06:51:00 +0000577 default y
Magnus Damm9570ef22009-05-01 06:51:00 +0000578 help
579 This enables the build of the TMU timer driver.
580
Paul Mundtf5ad8812009-01-29 18:08:58 +0900581config SH_TIMER_CMT
Magnus Dammf4257522009-04-30 04:09:26 +0000582 bool "CMT timer driver"
583 depends on SYS_SUPPORTS_CMT
584 default y
Magnus Dammf4257522009-04-30 04:09:26 +0000585 help
586 This enables build of the CMT timer driver.
Paul Mundtf5ad8812009-01-29 18:08:58 +0900587
Magnus Dammd5ed4c22009-04-30 07:02:49 +0000588config SH_TIMER_MTU2
589 bool "MTU2 timer driver"
Magnus Damm3280c882009-04-30 07:12:09 +0000590 depends on SYS_SUPPORTS_MTU2
Magnus Dammd5ed4c22009-04-30 07:02:49 +0000591 default y
Magnus Dammd5ed4c22009-04-30 07:02:49 +0000592 help
593 This enables build of the MTU2 timer driver.
594
Paul Mundtcad82442006-01-16 22:14:19 -0800595config SH_PCLK_FREQ
596 int "Peripheral clock frequency (in Hz)"
Paul Mundt8152a742009-12-29 11:09:30 +0900597 depends on SH_CLK_CPG_LEGACY
Yoshinori Sato9d4436a2006-11-05 15:40:13 +0900598 default "31250000" if CPU_SUBTYPE_SH7619
Paul Mundt8152a742009-12-29 11:09:30 +0900599 default "33333333" if CPU_SUBTYPE_SH7770 || \
600 CPU_SUBTYPE_SH7760 || \
601 CPU_SUBTYPE_SH7705 || \
602 CPU_SUBTYPE_SH7203 || \
603 CPU_SUBTYPE_SH7206 || \
604 CPU_SUBTYPE_SH7263 || \
Paul Mundt43a18392010-01-19 19:37:14 +0900605 CPU_SUBTYPE_MXG
Paul Mundt05627482007-05-15 16:25:47 +0900606 default "60000000" if CPU_SUBTYPE_SH7751 || CPU_SUBTYPE_SH7751R
Paul Mundtcad82442006-01-16 22:14:19 -0800607 default "66000000" if CPU_SUBTYPE_SH4_202
Paul Mundt05627482007-05-15 16:25:47 +0900608 default "50000000"
Paul Mundtcad82442006-01-16 22:14:19 -0800609 help
610 This option is used to specify the peripheral clock frequency.
611 This is necessary for determining the reference clock value on
612 platforms lacking an RTC.
613
Paul Mundt36aa1e32009-05-22 14:00:34 +0900614config SH_CLK_CPG
615 def_bool y
616
Paul Mundt253b0882009-05-13 17:38:11 +0900617config SH_CLK_CPG_LEGACY
Paul Mundt36aa1e32009-05-22 14:00:34 +0900618 depends on SH_CLK_CPG
Paul Mundt43a18392010-01-19 19:37:14 +0900619 def_bool y if !CPU_SUBTYPE_SH7785 && !ARCH_SHMOBILE && \
Phil Edworthy51ce3062012-05-09 07:59:27 +0100620 !CPU_SHX3 && !CPU_SUBTYPE_SH7757 && \
Paul Mundtbcb86e02012-05-10 17:20:56 +0900621 !CPU_SUBTYPE_SH7734 && !CPU_SUBTYPE_SH7264 && \
622 !CPU_SUBTYPE_SH7269
Paul Mundt253b0882009-05-13 17:38:11 +0900623
Paul Mundt32351a22007-03-12 14:38:59 +0900624endmenu
625
Paul Mundtcad82442006-01-16 22:14:19 -0800626menu "CPU Frequency scaling"
627
628source "drivers/cpufreq/Kconfig"
629
630config SH_CPU_FREQ
631 tristate "SuperH CPU Frequency driver"
Paul Mundtcb5ec752007-07-20 13:38:19 +0900632 depends on CPU_FREQ
Paul Mundtcad82442006-01-16 22:14:19 -0800633 select CPU_FREQ_TABLE
634 help
Paul Mundt8a655052008-12-17 15:06:54 +0900635 This adds the cpufreq driver for SuperH. Any CPU that supports
636 clock rate rounding through the clock framework can use this
637 driver. While it will make the kernel slightly larger, this is
638 harmless for CPUs that don't support rate rounding. The driver
639 will also generate a notice in the boot log before disabling
640 itself if the CPU in question is not capable of rate rounding.
Paul Mundtcad82442006-01-16 22:14:19 -0800641
642 For details, take a look at <file:Documentation/cpu-freq>.
643
644 If unsure, say N.
645
646endmenu
647
Paul Mundt9f5e8ee2006-11-24 11:22:57 +0900648source "arch/sh/drivers/Kconfig"
649
Paul Mundtcad82442006-01-16 22:14:19 -0800650endmenu
651
Paul Mundtcad82442006-01-16 22:14:19 -0800652menu "Kernel features"
653
Paul Mundt91b91d02006-09-27 18:08:33 +0900654source kernel/Kconfig.hz
655
Paul Mundtcad82442006-01-16 22:14:19 -0800656config KEXEC
657 bool "kexec system call (EXPERIMENTAL)"
Kees Cook0d57af12013-01-16 18:53:26 -0800658 depends on SUPERH32 && MMU
Paul Mundtcad82442006-01-16 22:14:19 -0800659 help
660 kexec is a system call that implements the ability to shutdown your
661 current kernel, and to start another kernel. It is like a reboot
Matt LaPlante1f1332f2006-06-29 01:32:47 -0400662 but it is independent of the system firmware. And like a reboot
Paul Mundtcad82442006-01-16 22:14:19 -0800663 you can start any kernel with it, not just Linux.
664
Matt LaPlante1f1332f2006-06-29 01:32:47 -0400665 The name comes from the similarity to the exec system call.
Paul Mundtcad82442006-01-16 22:14:19 -0800666
667 It is an ongoing process to be certain the hardware in a machine
668 is properly shutdown, so do not be surprised if this code does not
669 initially work for you. It may help to enable device hotplugging
670 support. As of this writing the exact hardware interface is
671 strongly in flux, so no good recommendation can be made.
672
Paul Mundt4d5ade52007-04-27 11:25:57 +0900673config CRASH_DUMP
674 bool "kernel crash dumps (EXPERIMENTAL)"
Kees Cook0d57af12013-01-16 18:53:26 -0800675 depends on SUPERH32 && BROKEN_ON_SMP
Paul Mundt4d5ade52007-04-27 11:25:57 +0900676 help
677 Generate crash dump after being started by kexec.
678 This should be normally only set in special crash dump kernels
679 which are loaded in the main kernel with kexec-tools into
680 a specially reserved region and then later executed after
681 a crash by kdump/kexec. The crash dump kernel must be compiled
682 to a memory address not used by the main kernel using
Simon Hormane66ac3f2011-09-15 20:13:00 +0900683 PHYSICAL_START.
Paul Mundt4d5ade52007-04-27 11:25:57 +0900684
685 For more details see Documentation/kdump/kdump.txt
686
Magnus Dammb7cf6dd2009-03-18 08:51:29 +0000687config KEXEC_JUMP
688 bool "kexec jump (EXPERIMENTAL)"
Kees Cook0d57af12013-01-16 18:53:26 -0800689 depends on SUPERH32 && KEXEC && HIBERNATION
Magnus Dammb7cf6dd2009-03-18 08:51:29 +0000690 help
691 Jump between original kernel and kexeced kernel and invoke
692 code via KEXEC
693
Simon Hormane66ac3f2011-09-15 20:13:00 +0900694config PHYSICAL_START
695 hex "Physical address where the kernel is loaded" if (EXPERT || CRASH_DUMP)
696 default MEMORY_START
697 ---help---
698 This gives the physical address where the kernel is loaded
699 and is ordinarily the same as MEMORY_START.
700
701 Different values are primarily used in the case of kexec on panic
702 where the fail safe kernel needs to run at a different address
703 than the panic-ed kernel.
704
Paul Mundtc4637d42008-07-30 15:30:52 +0900705config SECCOMP
706 bool "Enable seccomp to safely compute untrusted bytecode"
707 depends on PROC_FS
Paul Mundtc4637d42008-07-30 15:30:52 +0900708 help
709 This kernel feature is useful for number crunching applications
710 that may need to compute untrusted bytecode during their
711 execution. By using pipes or other transports made available to
712 the process as file descriptors supporting the read/write
713 syscalls, it's possible to isolate those applications in
714 their own address space using seccomp. Once seccomp is
715 enabled via prctl, it cannot be disabled and the task is only
716 allowed to execute a few safe syscalls defined by each seccomp
717 mode.
718
719 If unsure, say N.
720
Filippo Arcidiacono5d920bb2012-04-19 15:45:57 +0900721config CC_STACKPROTECTOR
722 bool "Enable -fstack-protector buffer overflow detection (EXPERIMENTAL)"
Kees Cook0d57af12013-01-16 18:53:26 -0800723 depends on SUPERH32
Filippo Arcidiacono5d920bb2012-04-19 15:45:57 +0900724 help
725 This option turns on the -fstack-protector GCC feature. This
726 feature puts, at the beginning of functions, a canary value on
727 the stack just before the return address, and validates
728 the value just before actually returning. Stack based buffer
729 overflows (that need to overwrite this return address) now also
730 overwrite the canary, which gets detected and the attack is then
731 neutralized via a kernel panic.
732
733 This feature requires gcc version 4.2 or above.
734
Linus Torvalds1da177e2005-04-16 15:20:36 -0700735config SMP
736 bool "Symmetric multi-processing support"
Paul Mundt357d5942007-06-11 15:32:07 +0900737 depends on SYS_SUPPORTS_SMP
Jens Axboe490f5de2008-06-10 20:52:59 +0200738 select USE_GENERIC_SMP_HELPERS
Linus Torvalds1da177e2005-04-16 15:20:36 -0700739 ---help---
740 This enables support for systems with more than one CPU. If you have
741 a system with only one CPU, like most personal computers, say N. If
742 you have a system with more than one CPU, say Y.
743
744 If you say N here, the kernel will run on single and multiprocessor
745 machines, but will use only one CPU of a multiprocessor machine. If
746 you say Y here, the kernel will run on many, but not all,
747 singleprocessor machines. On a singleprocessor machine, the kernel
748 will run faster if you say N here.
749
750 People using multiprocessor machines who say Y here should also say
751 Y to "Enhanced Real Time Clock Support", below.
752
Adrian Bunk03502fa2008-02-03 15:50:21 +0200753 See also <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO
754 available at <http://www.tldp.org/docs.html#howto>.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700755
756 If you don't know what to do here, say N.
757
758config NR_CPUS
759 int "Maximum number of CPUs (2-32)"
760 range 2 32
761 depends on SMP
Paul Mundt2eb2a432009-06-19 16:00:00 +0900762 default "4" if CPU_SUBTYPE_SHX3
Linus Torvalds1da177e2005-04-16 15:20:36 -0700763 default "2"
764 help
765 This allows you to specify the maximum number of CPUs which this
766 kernel will support. The maximum supported value is 32 and the
767 minimum value which makes sense is 2.
768
769 This is purely to save memory - each supported CPU adds
770 approximately eight kilobytes to the kernel image.
771
Paul Mundt763142d2010-04-26 19:08:55 +0900772config HOTPLUG_CPU
773 bool "Support for hot-pluggable CPUs (EXPERIMENTAL)"
Kees Cook0d57af12013-01-16 18:53:26 -0800774 depends on SMP && HOTPLUG
Paul Mundt763142d2010-04-26 19:08:55 +0900775 help
776 Say Y here to experiment with turning CPUs off and on. CPUs
777 can be controlled through /sys/devices/system/cpu.
778
Paul Mundt91b91d02006-09-27 18:08:33 +0900779source "kernel/Kconfig.preempt"
780
Paul Mundt83662462007-09-28 16:04:49 +0900781config GUSA
782 def_bool y
Stuart Menefy1efe4ce2007-11-30 16:12:36 +0900783 depends on !SMP && SUPERH32
Paul Mundt83662462007-09-28 16:04:49 +0900784 help
785 This enables support for gUSA (general UserSpace Atomicity).
786 This is the default implementation for both UP and non-ll/sc
787 CPUs, and is used by the libc, amongst others.
788
789 For additional information, design information can be found
790 in <http://lc.linux.or.jp/lc2002/papers/niibe0919p.pdf>.
791
792 This should only be disabled for special cases where alternate
793 atomicity implementations exist.
794
Stuart Menefy1efe4ce2007-11-30 16:12:36 +0900795config GUSA_RB
796 bool "Implement atomic operations by roll-back (gRB) (EXPERIMENTAL)"
797 depends on GUSA && CPU_SH3 || (CPU_SH4 && !CPU_SH4A)
798 help
799 Enabling this option will allow the kernel to implement some
Matt LaPlante692105b2009-01-26 11:12:25 +0100800 atomic operations using a software implementation of load-locked/
Stuart Menefy1efe4ce2007-11-30 16:12:36 +0900801 store-conditional (LLSC). On machines which do not have hardware
802 LLSC, this should be more efficient than the other alternative of
Matt LaPlante692105b2009-01-26 11:12:25 +0100803 disabling interrupts around the atomic sequence.
Stuart Menefy1efe4ce2007-11-30 16:12:36 +0900804
Matt Fleming86c8c042010-09-10 20:36:23 +0100805config HW_PERF_EVENTS
806 bool "Enable hardware performance counter support for perf events"
807 depends on PERF_EVENTS && CPU_HAS_PMU
808 default y
809 help
810 Enable hardware performance counter support for perf events. If
811 disabled, perf events will use software events only.
812
Paul Mundt43b87742010-04-13 14:43:03 +0900813source "drivers/sh/Kconfig"
814
Paul Mundtcad82442006-01-16 22:14:19 -0800815endmenu
816
817menu "Boot options"
818
819config ZERO_PAGE_OFFSET
Paul Mundtb412a49a2009-05-10 01:23:25 +0900820 hex
821 default "0x00010000" if PAGE_SIZE_64KB || SH_RTS7751R2D || \
822 SH_7751_SOLUTION_ENGINE
823 default "0x00004000" if PAGE_SIZE_16KB || SH_SH03
Paul Mundt7a847f82006-12-26 15:29:19 +0900824 default "0x00002000" if PAGE_SIZE_8KB
Paul Mundtcad82442006-01-16 22:14:19 -0800825 default "0x00001000"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700826 help
Paul Mundtcad82442006-01-16 22:14:19 -0800827 This sets the default offset of zero page.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700828
Paul Mundtcad82442006-01-16 22:14:19 -0800829config BOOT_LINK_OFFSET
Paul Mundtb412a49a2009-05-10 01:23:25 +0900830 hex
831 default "0x00210000" if SH_SHMIN
Paul Mundta2e76c82009-05-10 00:54:39 +0900832 default "0x00400000" if SH_CAYMAN
Paul Mundtb412a49a2009-05-10 01:23:25 +0900833 default "0x00810000" if SH_7780_SOLUTION_ENGINE
834 default "0x009e0000" if SH_TITAN
835 default "0x01800000" if SH_SDK7780
836 default "0x02000000" if SH_EDOSK7760
Paul Mundtcad82442006-01-16 22:14:19 -0800837 default "0x00800000"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700838 help
Paul Mundtcad82442006-01-16 22:14:19 -0800839 This option allows you to set the link address offset of the zImage.
840 This can be useful if you are on a board which has a small amount of
841 memory.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700842
Paul Mundtb412a49a2009-05-10 01:23:25 +0900843config ENTRY_OFFSET
844 hex
845 default "0x00001000" if PAGE_SIZE_4KB
846 default "0x00002000" if PAGE_SIZE_8KB
847 default "0x00004000" if PAGE_SIZE_16KB
848 default "0x00010000" if PAGE_SIZE_64KB
849 default "0x00000000"
850
Magnus Damm4705b2e2010-05-18 14:43:15 +0000851config ROMIMAGE_MMCIF
852 bool "Include MMCIF loader in romImage (EXPERIMENTAL)"
Kees Cook0d57af12013-01-16 18:53:26 -0800853 depends on CPU_SUBTYPE_SH7724
Magnus Damm4705b2e2010-05-18 14:43:15 +0000854 help
855 Say Y here to include experimental MMCIF loading code in
856 romImage. With this enabled it is possible to write the romImage
857 kernel image to an MMC card and boot the kernel straight from
858 the reset vector. At reset the processor Mask ROM will load the
859 first part of the romImage which in turn loads the rest the kernel
860 image to RAM using the MMCIF hardware block.
861
Pawel Molld724a9c2009-08-24 16:25:38 +0900862choice
863 prompt "Kernel command line"
864 optional
865 default CMDLINE_OVERWRITE
866 help
867 Setting this option allows the kernel command line arguments
868 to be set.
869
870config CMDLINE_OVERWRITE
871 bool "Overwrite bootloader kernel arguments"
872 help
873 Given string will overwrite any arguments passed in by
874 a bootloader.
875
876config CMDLINE_EXTEND
877 bool "Extend bootloader kernel arguments"
878 help
879 Given string will be concatenated with arguments passed in
880 by a bootloader.
881
882endchoice
Linus Torvalds1da177e2005-04-16 15:20:36 -0700883
Paul Mundtcad82442006-01-16 22:14:19 -0800884config CMDLINE
Pawel Molld724a9c2009-08-24 16:25:38 +0900885 string "Kernel command line arguments string"
886 depends on CMDLINE_OVERWRITE || CMDLINE_EXTEND
Paul Mundtcad82442006-01-16 22:14:19 -0800887 default "console=ttySC1,115200"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700888
889endmenu
890
Paul Mundtcad82442006-01-16 22:14:19 -0800891menu "Bus options"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700892
Paul Mundtcad82442006-01-16 22:14:19 -0800893config SUPERHYWAY
894 tristate "SuperHyway Bus support"
895 depends on CPU_SUBTYPE_SH4_202
Linus Torvalds1da177e2005-04-16 15:20:36 -0700896
Adrian McMenamin17be2d22007-09-21 15:55:55 +0900897config MAPLE
Paul Mundte16038a2009-01-09 15:12:30 +0900898 bool "Maple Bus support"
899 depends on SH_DREAMCAST
900 help
901 The Maple Bus is SEGA's serial communication bus for peripherals
902 on the Dreamcast. Without this bus support you won't be able to
903 get your Dreamcast keyboard etc to work, so most users
904 probably want to say 'Y' here, unless you are only using the
905 Dreamcast with a serial line terminal or a remote network
906 connection.
Adrian McMenamin17be2d22007-09-21 15:55:55 +0900907
Paul Mundt76934652009-10-27 10:36:55 +0900908config PCI
909 bool "PCI support"
910 depends on SYS_SUPPORTS_PCI
Paul Mundt320e68d2010-01-29 22:38:13 +0900911 select PCI_DOMAINS
Michael S. Tsirkin43db5952011-11-24 21:10:12 +0200912 select GENERIC_PCI_IOMAP
Michael S. Tsirkin1e05b622012-01-30 00:29:10 +0200913 select NO_GENERIC_PCI_IOPORT_MAP
Paul Mundt76934652009-10-27 10:36:55 +0900914 help
915 Find out whether you have a PCI motherboard. PCI is the name of a
916 bus system, i.e. the way the CPU talks to the other stuff inside
917 your box. If you have PCI, say Y, otherwise N.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700918
Paul Mundt320e68d2010-01-29 22:38:13 +0900919config PCI_DOMAINS
920 bool
921
Paul Mundte16038a2009-01-09 15:12:30 +0900922source "drivers/pci/pcie/Kconfig"
923
Linus Torvalds1da177e2005-04-16 15:20:36 -0700924source "drivers/pci/Kconfig"
925
926source "drivers/pcmcia/Kconfig"
927
928source "drivers/pci/hotplug/Kconfig"
929
930endmenu
931
932menu "Executable file formats"
933
934source "fs/Kconfig.binfmt"
935
936endmenu
937
Andriy Skulysh3aa770e2006-09-27 16:20:22 +0900938menu "Power management options (EXPERIMENTAL)"
Johannes Bergf4cb5702007-12-08 02:14:00 +0100939
Magnus Dammc6f17cb2008-12-04 22:45:20 +0900940source "kernel/power/Kconfig"
941
942source "drivers/cpuidle/Kconfig"
Andriy Skulysh3aa770e2006-09-27 16:20:22 +0900943
Andriy Skulysh3aa770e2006-09-27 16:20:22 +0900944endmenu
945
Sam Ravnborgd5950b42005-07-11 21:03:49 -0700946source "net/Kconfig"
947
Linus Torvalds1da177e2005-04-16 15:20:36 -0700948source "drivers/Kconfig"
949
950source "fs/Kconfig"
951
Linus Torvalds1da177e2005-04-16 15:20:36 -0700952source "arch/sh/Kconfig.debug"
953
954source "security/Kconfig"
955
956source "crypto/Kconfig"
957
Linus Torvalds1da177e2005-04-16 15:20:36 -0700958source "lib/Kconfig"