blob: c72b6162e23340afed39c6f7290c2b9d2cb51fb5 [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
Peter Zijlstrae360adb2010-10-14 14:01:34 +080014 select HAVE_IRQ_WORK
Ingo Molnarcdd6c482009-09-21 12:02:48 +020015 select HAVE_PERF_EVENTS
Catalin Marinas9b2a60c2012-10-08 16:28:13 -070016 select HAVE_DEBUG_BUGVERBOSE
Mark Brown7563bbf2012-04-15 10:52:54 +010017 select ARCH_HAVE_CUSTOM_GPIO_H
Huang Yingdf013ff2011-07-13 13:14:22 +080018 select ARCH_HAVE_NMI_SAFE_CMPXCHG if (GUSA_RB || CPU_SH4A)
Paul Mundt72f0c132009-10-27 17:08:55 +090019 select PERF_USE_VMALLOC
Catalin Marinasb69ec422012-10-08 16:28:11 -070020 select HAVE_DEBUG_KMEMLEAK
Paul Mundtdf8ce252009-07-12 01:37:30 +090021 select HAVE_KERNEL_GZIP
Paul Mundt07e88e12009-07-11 13:21:19 -040022 select HAVE_KERNEL_BZIP2
23 select HAVE_KERNEL_LZMA
Paul Mundt50cfa792011-01-14 15:52:54 +090024 select HAVE_KERNEL_XZ
Paul Mundtc7b16ef2010-01-13 13:29:19 +090025 select HAVE_KERNEL_LZO
Catalin Marinasaf1839e2012-10-08 16:28:08 -070026 select HAVE_UID16
Will Deaconc1d7e012012-07-30 14:42:46 -070027 select ARCH_WANT_IPC_PARSE_VERSION
Paul Mundta74f7e02009-09-16 14:30:34 +090028 select HAVE_SYSCALL_TRACEPOINTS
Paul Mundteaaaeef2010-06-14 15:16:53 +090029 select HAVE_REGS_AND_STACK_ACCESS_API
Paul Mundt57b81332010-10-26 15:20:51 +090030 select HAVE_GENERIC_HARDIRQS
Rob Herring2ed86b12012-01-25 20:02:40 -060031 select MAY_HAVE_SPARSE_IRQ
Paul Mundted170922011-04-18 11:45:27 +090032 select IRQ_FORCED_THREADING
Paul Mundt6eac1af2009-05-08 19:48:47 +090033 select RTC_LIB
Paul Mundtf01789c2009-06-17 10:43:13 +090034 select GENERIC_ATOMIC64
Paul Mundt3d44ae42011-03-17 17:31:51 +090035 select GENERIC_IRQ_SHOW
Thomas Gleixnerea0588c2012-04-20 13:05:54 +000036 select GENERIC_SMP_IDLE_THREAD
Anna-Maria Gleixner8cf200d2012-05-18 16:45:53 +000037 select GENERIC_CLOCKEVENTS
38 select GENERIC_CMOS_UPDATE if SH_SH03 || SH_DREAMCAST
Paul Mundt0e100e12012-05-25 13:02:48 +090039 select GENERIC_STRNCPY_FROM_USER
Paul Mundtcba8df42012-06-04 15:46:05 +090040 select GENERIC_STRNLEN_USER
David Howells786d35d2012-09-28 14:31:03 +093041 select HAVE_MOD_ARCH_SPECIFIC if DWARF_UNWINDER
42 select MODULES_USE_ELF_RELA
Linus Torvalds1da177e2005-04-16 15:20:36 -070043 help
44 The SuperH is a RISC processor targeted for use in embedded systems
45 and consumer electronics; it was also used in the Sega Dreamcast
46 gaming console. The SuperH port has a home page at
47 <http://www.linux-sh.org/>.
48
Paul Mundt39d28a22007-11-08 18:39:33 +090049config SUPERH32
Paul Mundt3cc000b2009-04-11 08:39:27 +090050 def_bool ARCH = "sh"
Chris Smithd39f5452008-09-05 17:15:39 +090051 select HAVE_KPROBES
52 select HAVE_KRETPROBES
Paul Mundt6d63e732010-01-19 14:00:14 +090053 select HAVE_IOREMAP_PROT if MMU && !X2TLB
Paul Mundt694f94f2008-10-31 16:20:36 +090054 select HAVE_FUNCTION_TRACER
Matt Flemingfad57fe2008-11-12 20:11:47 +090055 select HAVE_FTRACE_MCOUNT_RECORD
56 select HAVE_DYNAMIC_FTRACE
Matt Flemingc1340c02009-06-28 14:05:44 +010057 select HAVE_FUNCTION_TRACE_MCOUNT_TEST
Paul Mundte4b053d2009-10-13 16:52:50 +090058 select HAVE_FTRACE_NMI_ENTER if DYNAMIC_FTRACE
Will Deaconc1d7e012012-07-30 14:42:46 -070059 select ARCH_WANT_IPC_PARSE_VERSION
Matt Fleming327933f2009-07-11 00:29:03 +000060 select HAVE_FUNCTION_GRAPH_TRACER
Paul Mundtab6e5702008-12-11 18:46:46 +090061 select HAVE_ARCH_KGDB
Paul Mundt6fbfe8d2010-01-06 15:46:53 +090062 select HAVE_HW_BREAKPOINT
Frederic Weisbecker01027522010-04-11 18:55:56 +020063 select HAVE_MIXED_BREAKPOINTS_REGS
Sam Ravnborge583d6b2010-08-14 12:23:39 +000064 select PERF_EVENTS
Paul Mundt8dafc342009-04-02 11:56:38 +090065 select ARCH_HIBERNATION_POSSIBLE if MMU
Paul Mundt57b81332010-10-26 15:20:51 +090066 select SPARSE_IRQ
Paul Mundtea0e1a92007-11-21 15:58:01 +090067
68config SUPERH64
Paul Mundt3cc000b2009-04-11 08:39:27 +090069 def_bool ARCH = "sh64"
Paul Mundt3a898c02012-05-24 15:05:29 +090070 select KALLSYMS
Paul Mundt39d28a22007-11-08 18:39:33 +090071
Paul Mundtf42b7e32008-07-29 20:12:51 +090072config ARCH_DEFCONFIG
73 string
74 default "arch/sh/configs/shx3_defconfig" if SUPERH32
75 default "arch/sh/configs/cayman_defconfig" if SUPERH64
76
Linus Torvalds1da177e2005-04-16 15:20:36 -070077config RWSEM_GENERIC_SPINLOCK
Harvey Harrisond7ef4fb2007-12-11 13:49:35 +090078 def_bool y
Linus Torvalds1da177e2005-04-16 15:20:36 -070079
80config RWSEM_XCHGADD_ALGORITHM
81 bool
82
Paul Mundtfa691512007-03-08 19:41:21 +090083config GENERIC_BUG
84 def_bool y
Paul Mundta82d53e2007-11-21 18:22:05 +090085 depends on BUG && SUPERH32
Paul Mundtfa691512007-03-08 19:41:21 +090086
Paul Mundt3767f3f2009-06-15 00:00:42 +090087config GENERIC_CSUM
88 def_bool y
89 depends on SUPERH64
90
Akinobu Mitae2268c72006-03-26 01:39:35 -080091config GENERIC_HWEIGHT
Harvey Harrisond7ef4fb2007-12-11 13:49:35 +090092 def_bool y
Akinobu Mitae2268c72006-03-26 01:39:35 -080093
Paul Mundt2eb2a432009-06-19 16:00:00 +090094config IRQ_PER_CPU
95 def_bool y
96
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 Mundte257ad02007-07-25 11:18:00 +0900153config ARCH_NO_VIRT_TO_BUS
154 def_bool y
155
Paul Mundte869a902009-04-02 13:08:31 +0900156config ARCH_HAS_DEFAULT_IDLE
157 def_bool y
158
Paul Mundt86e4dd52010-05-25 20:06:13 +0900159config NO_IOPORT
Paul Mundt37b7a972010-11-01 09:49:04 -0400160 def_bool !PCI
Paul Mundtc30b9c42012-05-21 18:19:18 +0900161 depends on !SH_CAYMAN && !SH_SH4202_MICRODEV && !SH_SHMIN && \
162 !SH_HP6XX && !SH_SOLUTION_ENGINE
Paul Mundt86e4dd52010-05-25 20:06:13 +0900163
Magnus Damme7cc9a72008-02-07 20:18:21 +0900164config IO_TRAPPED
165 bool
166
Paul Mundtb7e68d62012-03-29 16:05:10 +0900167config SWAP_IO_SPACE
168 bool
169
Paul Mundt01be5d62009-10-27 10:35:02 +0900170config DMA_COHERENT
171 bool
172
173config DMA_NONCOHERENT
174 def_bool !DMA_COHERENT
175
FUJITA Tomonori5cabbb62010-03-10 15:23:27 -0800176config NEED_DMA_MAP_STATE
177 def_bool DMA_NONCOHERENT
178
FUJITA Tomonori18e98302010-05-26 14:44:32 -0700179config NEED_SG_DMA_LENGTH
180 def_bool y
181
Linus Torvalds1da177e2005-04-16 15:20:36 -0700182source "init/Kconfig"
183
Matt Helsleydc52ddc2008-10-18 20:27:21 -0700184source "kernel/Kconfig.freezer"
185
Linus Torvalds1da177e2005-04-16 15:20:36 -0700186menu "System type"
187
Paul Mundtb5f42db2007-11-08 18:38:14 +0900188#
189# Processor families
190#
191config CPU_SH2
192 bool
193
194config CPU_SH2A
195 bool
196 select CPU_SH2
Paul Mundte2fcf742010-11-04 12:32:24 +0900197 select UNCACHED_MAPPING
Paul Mundtb5f42db2007-11-08 18:38:14 +0900198
199config CPU_SH3
200 bool
201 select CPU_HAS_INTEVT
202 select CPU_HAS_SR_RB
Paul Mundt4fa48e12009-05-08 15:28:15 +0900203 select SYS_SUPPORTS_TMU
Paul Mundtb5f42db2007-11-08 18:38:14 +0900204
205config CPU_SH4
206 bool
207 select CPU_HAS_INTEVT
208 select CPU_HAS_SR_RB
Paul Mundtb5f42db2007-11-08 18:38:14 +0900209 select CPU_HAS_FPU if !CPU_SH4AL_DSP
Paul Mundt4fa48e12009-05-08 15:28:15 +0900210 select SYS_SUPPORTS_TMU
Paul Mundtffb4a732009-10-27 07:22:37 +0900211 select SYS_SUPPORTS_HUGETLBFS if MMU
Paul Mundtb5f42db2007-11-08 18:38:14 +0900212
213config CPU_SH4A
214 bool
215 select CPU_SH4
216
217config CPU_SH4AL_DSP
218 bool
219 select CPU_SH4A
220 select CPU_HAS_DSP
221
Paul Mundtea0e1a92007-11-21 15:58:01 +0900222config CPU_SH5
223 bool
224 select CPU_HAS_FPU
Paul Mundtadd47062009-05-08 16:12:17 +0900225 select SYS_SUPPORTS_TMU
Paul Mundtffb4a732009-10-27 07:22:37 +0900226 select SYS_SUPPORTS_HUGETLBFS if MMU
Paul Mundtea0e1a92007-11-21 15:58:01 +0900227
Paul Mundtb5f42db2007-11-08 18:38:14 +0900228config CPU_SHX2
229 bool
230
231config CPU_SHX3
232 bool
Paul Mundt01be5d62009-10-27 10:35:02 +0900233 select DMA_COHERENT
Paul Mundt4b478ee2010-05-11 15:24:04 +0900234 select SYS_SUPPORTS_SMP
235 select SYS_SUPPORTS_NUMA
Paul Mundtb5f42db2007-11-08 18:38:14 +0900236
Paul Mundtdc65a972009-03-10 16:26:29 +0900237config ARCH_SHMOBILE
238 bool
Magnus Damm77594912009-03-13 15:23:04 +0000239 select ARCH_SUSPEND_POSSIBLE
Magnus Dammac2c5962009-08-19 10:31:53 +0000240 select PM
241 select PM_RUNTIME
Paul Mundtdc65a972009-03-10 16:26:29 +0900242
Matt Fleming86c8c042010-09-10 20:36:23 +0100243config CPU_HAS_PMU
244 depends on CPU_SH4 || CPU_SH4A
245 default y
246 bool
247
Paul Mundt3cc000b2009-04-11 08:39:27 +0900248if SUPERH32
249
Paul Mundtb5f42db2007-11-08 18:38:14 +0900250choice
251 prompt "Processor sub-type selection"
252
253#
254# Processor subtypes
255#
256
257# SH-2 Processor Support
258
259config CPU_SUBTYPE_SH7619
260 bool "Support SH7619 processor"
261 select CPU_SH2
Paul Mundtf5ad8812009-01-29 18:08:58 +0900262 select SYS_SUPPORTS_CMT
Paul Mundtb5f42db2007-11-08 18:38:14 +0900263
264# SH-2A Processor Support
265
Peter Griffin28259992008-11-28 22:48:20 +0900266config CPU_SUBTYPE_SH7201
267 bool "Support SH7201 processor"
268 select CPU_SH2A
269 select CPU_HAS_FPU
Magnus Dammda107c62009-04-30 07:06:26 +0000270 select SYS_SUPPORTS_MTU2
Peter Griffin28259992008-11-28 22:48:20 +0900271
Paul Mundt6d01f512007-11-26 18:17:21 +0900272config CPU_SUBTYPE_SH7203
273 bool "Support SH7203 processor"
274 select CPU_SH2A
Paul Mundt74d99a52007-11-26 20:38:36 +0900275 select CPU_HAS_FPU
Paul Mundtf5ad8812009-01-29 18:08:58 +0900276 select SYS_SUPPORTS_CMT
Magnus Dammda107c62009-04-30 07:06:26 +0000277 select SYS_SUPPORTS_MTU2
Paul Mundtf020c922010-11-01 12:24:48 -0400278 select ARCH_WANT_OPTIONAL_GPIOLIB
Laurent Pinchartb768ecbc2012-12-15 23:51:05 +0100279 select PINCTRL
Paul Mundt6d01f512007-11-26 18:17:21 +0900280
Paul Mundtb5f42db2007-11-08 18:38:14 +0900281config CPU_SUBTYPE_SH7206
282 bool "Support SH7206 processor"
283 select CPU_SH2A
Paul Mundtf5ad8812009-01-29 18:08:58 +0900284 select SYS_SUPPORTS_CMT
Magnus Dammda107c62009-04-30 07:06:26 +0000285 select SYS_SUPPORTS_MTU2
Paul Mundtb5f42db2007-11-08 18:38:14 +0900286
Paul Mundta8f67f42007-11-26 19:54:02 +0900287config CPU_SUBTYPE_SH7263
288 bool "Support SH7263 processor"
289 select CPU_SH2A
Paul Mundt74d99a52007-11-26 20:38:36 +0900290 select CPU_HAS_FPU
Paul Mundtf5ad8812009-01-29 18:08:58 +0900291 select SYS_SUPPORTS_CMT
Magnus Dammda107c62009-04-30 07:06:26 +0000292 select SYS_SUPPORTS_MTU2
Paul Mundta8f67f42007-11-26 19:54:02 +0900293
Phil Edworthy51ce3062012-05-09 07:59:27 +0100294config CPU_SUBTYPE_SH7264
295 bool "Support SH7264 processor"
296 select CPU_SH2A
297 select CPU_HAS_FPU
298 select SYS_SUPPORTS_CMT
299 select SYS_SUPPORTS_MTU2
Laurent Pinchart5946e7b2012-12-15 23:51:06 +0100300 select PINCTRL
Phil Edworthy51ce3062012-05-09 07:59:27 +0100301
Phil Edworthy0b25b7c2012-05-10 09:26:52 +0100302config CPU_SUBTYPE_SH7269
303 bool "Support SH7269 processor"
304 select CPU_SH2A
305 select CPU_HAS_FPU
306 select SYS_SUPPORTS_CMT
307 select SYS_SUPPORTS_MTU2
Laurent Pinchartfb872fc2012-12-15 23:51:07 +0100308 select PINCTRL
Phil Edworthy0b25b7c2012-05-10 09:26:52 +0100309
Paul Mundt2ad69902008-03-13 12:52:44 +0900310config CPU_SUBTYPE_MXG
311 bool "Support MX-G processor"
312 select CPU_SH2A
Magnus Dammda107c62009-04-30 07:06:26 +0000313 select SYS_SUPPORTS_MTU2
Paul Mundt2ad69902008-03-13 12:52:44 +0900314 help
315 Select MX-G if running on an R8A03022BG part.
316
Paul Mundtb5f42db2007-11-08 18:38:14 +0900317# SH-3 Processor Support
318
319config CPU_SUBTYPE_SH7705
320 bool "Support SH7705 processor"
321 select CPU_SH3
322
323config CPU_SUBTYPE_SH7706
324 bool "Support SH7706 processor"
325 select CPU_SH3
326 help
327 Select SH7706 if you have a 133 Mhz SH-3 HD6417706 CPU.
328
329config CPU_SUBTYPE_SH7707
330 bool "Support SH7707 processor"
331 select CPU_SH3
332 help
333 Select SH7707 if you have a 60 Mhz SH-3 HD6417707 CPU.
334
335config CPU_SUBTYPE_SH7708
336 bool "Support SH7708 processor"
337 select CPU_SH3
338 help
339 Select SH7708 if you have a 60 Mhz SH-3 HD6417708S or
340 if you have a 100 Mhz SH-3 HD6417708R CPU.
341
342config CPU_SUBTYPE_SH7709
343 bool "Support SH7709 processor"
344 select CPU_SH3
345 help
346 Select SH7709 if you have a 80 Mhz SH-3 HD6417709 CPU.
347
348config CPU_SUBTYPE_SH7710
349 bool "Support SH7710 processor"
350 select CPU_SH3
351 select CPU_HAS_DSP
352 help
353 Select SH7710 if you have a SH3-DSP SH7710 CPU.
354
355config CPU_SUBTYPE_SH7712
356 bool "Support SH7712 processor"
357 select CPU_SH3
358 select CPU_HAS_DSP
359 help
360 Select SH7712 if you have a SH3-DSP SH7712 CPU.
361
362config CPU_SUBTYPE_SH7720
363 bool "Support SH7720 processor"
364 select CPU_SH3
365 select CPU_HAS_DSP
Magnus Damm2b23a882009-05-12 10:21:11 +0000366 select SYS_SUPPORTS_CMT
Paul Mundtf020c922010-11-01 12:24:48 -0400367 select ARCH_WANT_OPTIONAL_GPIOLIB
Paul Mundte3e98872010-12-01 15:58:58 +0900368 select USB_ARCH_HAS_OHCI
Paul Mundt7b61ca52011-06-30 15:04:38 +0900369 select USB_OHCI_SH if USB_OHCI_HCD
Laurent Pinchart85db6bf2012-12-15 23:51:08 +0100370 select PINCTRL
Paul Mundtb5f42db2007-11-08 18:38:14 +0900371 help
372 Select SH7720 if you have a SH3-DSP SH7720 CPU.
373
Yoshihiro Shimoda31a49c42007-12-26 11:45:06 +0900374config CPU_SUBTYPE_SH7721
375 bool "Support SH7721 processor"
376 select CPU_SH3
377 select CPU_HAS_DSP
Magnus Damm2b23a882009-05-12 10:21:11 +0000378 select SYS_SUPPORTS_CMT
Paul Mundte3e98872010-12-01 15:58:58 +0900379 select USB_ARCH_HAS_OHCI
Paul Mundt7b61ca52011-06-30 15:04:38 +0900380 select USB_OHCI_SH if USB_OHCI_HCD
Yoshihiro Shimoda31a49c42007-12-26 11:45:06 +0900381 help
382 Select SH7721 if you have a SH3-DSP SH7721 CPU.
383
Paul Mundtb5f42db2007-11-08 18:38:14 +0900384# SH-4 Processor Support
385
386config CPU_SUBTYPE_SH7750
387 bool "Support SH7750 processor"
388 select CPU_SH4
389 help
390 Select SH7750 if you have a 200 Mhz SH-4 HD6417750 CPU.
391
392config CPU_SUBTYPE_SH7091
393 bool "Support SH7091 processor"
394 select CPU_SH4
395 help
396 Select SH7091 if you have an SH-4 based Sega device (such as
397 the Dreamcast, Naomi, and Naomi 2).
398
399config CPU_SUBTYPE_SH7750R
400 bool "Support SH7750R processor"
401 select CPU_SH4
402
403config CPU_SUBTYPE_SH7750S
404 bool "Support SH7750S processor"
405 select CPU_SH4
406
407config CPU_SUBTYPE_SH7751
408 bool "Support SH7751 processor"
409 select CPU_SH4
410 help
411 Select SH7751 if you have a 166 Mhz SH-4 HD6417751 CPU,
412 or if you have a HD6417751R CPU.
413
414config CPU_SUBTYPE_SH7751R
415 bool "Support SH7751R processor"
416 select CPU_SH4
417
418config CPU_SUBTYPE_SH7760
419 bool "Support SH7760 processor"
420 select CPU_SH4
421
422config CPU_SUBTYPE_SH4_202
423 bool "Support SH4-202 processor"
424 select CPU_SH4
425
426# SH-4A Processor Support
427
Paul Mundt178dd0c2008-04-09 17:56:18 +0900428config CPU_SUBTYPE_SH7723
429 bool "Support SH7723 processor"
430 select CPU_SH4A
431 select CPU_SHX2
Paul Mundtdc65a972009-03-10 16:26:29 +0900432 select ARCH_SHMOBILE
Paul Mundt178dd0c2008-04-09 17:56:18 +0900433 select ARCH_SPARSEMEM_ENABLE
Paul Mundtf5ad8812009-01-29 18:08:58 +0900434 select SYS_SUPPORTS_CMT
Paul Mundtf020c922010-11-01 12:24:48 -0400435 select ARCH_WANT_OPTIONAL_GPIOLIB
Laurent Pinchart16941a82012-12-15 23:51:10 +0100436 select PINCTRL
Paul Mundt178dd0c2008-04-09 17:56:18 +0900437 help
438 Select SH7723 if you have an SH-MobileR2 CPU.
439
Kuninori Morimoto0207a2e2009-04-16 14:40:56 +0900440config CPU_SUBTYPE_SH7724
441 bool "Support SH7724 processor"
442 select CPU_SH4A
443 select CPU_SHX2
Paul Mundt59fe7002009-04-16 15:43:42 +0900444 select ARCH_SHMOBILE
Kuninori Morimoto0207a2e2009-04-16 14:40:56 +0900445 select ARCH_SPARSEMEM_ENABLE
446 select SYS_SUPPORTS_CMT
Paul Mundtf020c922010-11-01 12:24:48 -0400447 select ARCH_WANT_OPTIONAL_GPIOLIB
Laurent Pinchart18ebd222012-12-15 23:51:11 +0100448 select PINCTRL
Kuninori Morimoto0207a2e2009-04-16 14:40:56 +0900449 help
450 Select SH7724 if you have an SH-MobileR2R CPU.
451
Nobuhiro Iwamatsufea88a02012-04-12 15:45:32 +0900452config CPU_SUBTYPE_SH7734
453 bool "Support SH7734 processor"
454 select CPU_SH4A
455 select CPU_SHX2
456 select ARCH_WANT_OPTIONAL_GPIOLIB
457 select USB_ARCH_HAS_OHCI
458 select USB_ARCH_HAS_EHCI
Laurent Pinchart2c172182012-12-15 23:51:12 +0100459 select PINCTRL
Nobuhiro Iwamatsufea88a02012-04-12 15:45:32 +0900460 help
461 Select SH7734 if you have a SH4A SH7734 CPU.
462
Yoshihiro Shimodac01f0f12009-08-21 16:30:28 +0900463config CPU_SUBTYPE_SH7757
464 bool "Support SH7757 processor"
465 select CPU_SH4A
466 select CPU_SHX2
Paul Mundtf020c922010-11-01 12:24:48 -0400467 select ARCH_WANT_OPTIONAL_GPIOLIB
Yoshihiro Shimoda0fe48602011-02-25 07:38:47 +0000468 select USB_ARCH_HAS_OHCI
469 select USB_ARCH_HAS_EHCI
Laurent Pincharteb61b772012-12-15 23:51:13 +0100470 select PINCTRL
Yoshihiro Shimodac01f0f12009-08-21 16:30:28 +0900471 help
472 Select SH7757 if you have a SH4A SH7757 CPU.
473
Yoshihiro Shimoda7d740a02008-01-07 14:40:07 +0900474config CPU_SUBTYPE_SH7763
475 bool "Support SH7763 processor"
476 select CPU_SH4A
Paul Mundte3e98872010-12-01 15:58:58 +0900477 select USB_ARCH_HAS_OHCI
Paul Mundt7b61ca52011-06-30 15:04:38 +0900478 select USB_OHCI_SH if USB_OHCI_HCD
Yoshihiro Shimoda7d740a02008-01-07 14:40:07 +0900479 help
480 Select SH7763 if you have a SH4A SH7763(R5S77631) CPU.
481
Paul Mundtb5f42db2007-11-08 18:38:14 +0900482config CPU_SUBTYPE_SH7770
483 bool "Support SH7770 processor"
484 select CPU_SH4A
485
486config CPU_SUBTYPE_SH7780
487 bool "Support SH7780 processor"
488 select CPU_SH4A
489
490config CPU_SUBTYPE_SH7785
491 bool "Support SH7785 processor"
492 select CPU_SH4A
493 select CPU_SHX2
494 select ARCH_SPARSEMEM_ENABLE
495 select SYS_SUPPORTS_NUMA
Paul Mundtf020c922010-11-01 12:24:48 -0400496 select ARCH_WANT_OPTIONAL_GPIOLIB
Laurent Pinchart77bd27b2012-12-15 23:51:14 +0100497 select PINCTRL
Paul Mundtb5f42db2007-11-08 18:38:14 +0900498
Kuninori Morimoto55ba99e2009-03-03 15:40:25 +0900499config CPU_SUBTYPE_SH7786
500 bool "Support SH7786 processor"
501 select CPU_SH4A
Paul Mundt37042fb2009-03-03 15:57:02 +0900502 select CPU_SHX3
Paul Mundt8263a672009-03-17 17:49:49 +0900503 select CPU_HAS_PTEAEX
Paul Mundt2eb2a432009-06-19 16:00:00 +0900504 select GENERIC_CLOCKEVENTS_BROADCAST if SMP
Paul Mundtf020c922010-11-01 12:24:48 -0400505 select ARCH_WANT_OPTIONAL_GPIOLIB
Paul Mundte3e98872010-12-01 15:58:58 +0900506 select USB_ARCH_HAS_OHCI
Paul Mundt7b61ca52011-06-30 15:04:38 +0900507 select USB_OHCI_SH if USB_OHCI_HCD
Paul Mundte3e98872010-12-01 15:58:58 +0900508 select USB_ARCH_HAS_EHCI
Paul Mundt7b61ca52011-06-30 15:04:38 +0900509 select USB_EHCI_SH if USB_EHCI_HCD
Laurent Pinchartc0fdbff2012-12-15 23:51:15 +0100510 select PINCTRL
Kuninori Morimoto55ba99e2009-03-03 15:40:25 +0900511
Paul Mundtb5f42db2007-11-08 18:38:14 +0900512config CPU_SUBTYPE_SHX3
513 bool "Support SH-X3 processor"
514 select CPU_SH4A
515 select CPU_SHX3
Paul Mundt58402632008-09-05 15:36:39 +0900516 select GENERIC_CLOCKEVENTS_BROADCAST if SMP
Paul Mundt742759e2010-10-02 19:43:40 +0900517 select ARCH_REQUIRE_GPIOLIB
Laurent Pinchart3e347f02012-12-15 23:51:16 +0100518 select PINCTRL
Paul Mundtb5f42db2007-11-08 18:38:14 +0900519
520# SH4AL-DSP Processor Support
521
522config CPU_SUBTYPE_SH7343
523 bool "Support SH7343 processor"
524 select CPU_SH4AL_DSP
Paul Mundtdc65a972009-03-10 16:26:29 +0900525 select ARCH_SHMOBILE
Paul Mundtf5ad8812009-01-29 18:08:58 +0900526 select SYS_SUPPORTS_CMT
Paul Mundtb5f42db2007-11-08 18:38:14 +0900527
528config CPU_SUBTYPE_SH7722
529 bool "Support SH7722 processor"
530 select CPU_SH4AL_DSP
531 select CPU_SHX2
Paul Mundtdc65a972009-03-10 16:26:29 +0900532 select ARCH_SHMOBILE
Paul Mundtb5f42db2007-11-08 18:38:14 +0900533 select ARCH_SPARSEMEM_ENABLE
534 select SYS_SUPPORTS_NUMA
Paul Mundtf5ad8812009-01-29 18:08:58 +0900535 select SYS_SUPPORTS_CMT
Paul Mundtf020c922010-11-01 12:24:48 -0400536 select ARCH_WANT_OPTIONAL_GPIOLIB
Laurent Pinchartef97c3c2012-12-15 23:51:09 +0100537 select PINCTRL
Paul Mundtb5f42db2007-11-08 18:38:14 +0900538
Magnus Damm9109a302008-02-08 17:31:24 +0900539config CPU_SUBTYPE_SH7366
540 bool "Support SH7366 processor"
541 select CPU_SH4AL_DSP
542 select CPU_SHX2
Paul Mundtdc65a972009-03-10 16:26:29 +0900543 select ARCH_SHMOBILE
Magnus Damm9109a302008-02-08 17:31:24 +0900544 select ARCH_SPARSEMEM_ENABLE
545 select SYS_SUPPORTS_NUMA
Paul Mundtf5ad8812009-01-29 18:08:58 +0900546 select SYS_SUPPORTS_CMT
Magnus Damm9109a302008-02-08 17:31:24 +0900547
Paul Mundt3cc000b2009-04-11 08:39:27 +0900548endchoice
549
550endif
551
552if SUPERH64
553
554choice
555 prompt "Processor sub-type selection"
556
Paul Mundtea0e1a92007-11-21 15:58:01 +0900557# SH-5 Processor Support
558
559config CPU_SUBTYPE_SH5_101
560 bool "Support SH5-101 processor"
561 select CPU_SH5
562
563config CPU_SUBTYPE_SH5_103
564 bool "Support SH5-103 processor"
Paul Mundt8ef97dd2008-02-14 15:30:54 +0900565 select CPU_SH5
Paul Mundtea0e1a92007-11-21 15:58:01 +0900566
Paul Mundtb5f42db2007-11-08 18:38:14 +0900567endchoice
568
Paul Mundt3cc000b2009-04-11 08:39:27 +0900569endif
570
Paul Mundtcad82442006-01-16 22:14:19 -0800571source "arch/sh/mm/Kconfig"
Paul Mundt939a24a2008-07-29 21:41:37 +0900572
Paul Mundt4690bdc2007-11-09 13:45:42 +0900573source "arch/sh/Kconfig.cpu"
Paul Mundtcad82442006-01-16 22:14:19 -0800574
Paul Mundt939a24a2008-07-29 21:41:37 +0900575source "arch/sh/boards/Kconfig"
Paul Mundtf3d22292007-05-14 17:29:12 +0900576
Paul Mundt32351a22007-03-12 14:38:59 +0900577menu "Timer and clock configuration"
578
Magnus Damm9570ef22009-05-01 06:51:00 +0000579config SH_TIMER_TMU
580 bool "TMU timer driver"
Magnus Dammf19900b2009-05-12 10:25:54 +0000581 depends on SYS_SUPPORTS_TMU
Magnus Damm9570ef22009-05-01 06:51:00 +0000582 default y
Magnus Damm9570ef22009-05-01 06:51:00 +0000583 help
584 This enables the build of the TMU timer driver.
585
Paul Mundtf5ad8812009-01-29 18:08:58 +0900586config SH_TIMER_CMT
Magnus Dammf4257522009-04-30 04:09:26 +0000587 bool "CMT timer driver"
588 depends on SYS_SUPPORTS_CMT
589 default y
Magnus Dammf4257522009-04-30 04:09:26 +0000590 help
591 This enables build of the CMT timer driver.
Paul Mundtf5ad8812009-01-29 18:08:58 +0900592
Magnus Dammd5ed4c22009-04-30 07:02:49 +0000593config SH_TIMER_MTU2
594 bool "MTU2 timer driver"
Magnus Damm3280c882009-04-30 07:12:09 +0000595 depends on SYS_SUPPORTS_MTU2
Magnus Dammd5ed4c22009-04-30 07:02:49 +0000596 default y
Magnus Dammd5ed4c22009-04-30 07:02:49 +0000597 help
598 This enables build of the MTU2 timer driver.
599
Paul Mundtcad82442006-01-16 22:14:19 -0800600config SH_PCLK_FREQ
601 int "Peripheral clock frequency (in Hz)"
Paul Mundt8152a742009-12-29 11:09:30 +0900602 depends on SH_CLK_CPG_LEGACY
Yoshinori Sato9d4436a2006-11-05 15:40:13 +0900603 default "31250000" if CPU_SUBTYPE_SH7619
Paul Mundt8152a742009-12-29 11:09:30 +0900604 default "33333333" if CPU_SUBTYPE_SH7770 || \
605 CPU_SUBTYPE_SH7760 || \
606 CPU_SUBTYPE_SH7705 || \
607 CPU_SUBTYPE_SH7203 || \
608 CPU_SUBTYPE_SH7206 || \
609 CPU_SUBTYPE_SH7263 || \
Paul Mundt43a18392010-01-19 19:37:14 +0900610 CPU_SUBTYPE_MXG
Paul Mundt05627482007-05-15 16:25:47 +0900611 default "60000000" if CPU_SUBTYPE_SH7751 || CPU_SUBTYPE_SH7751R
Paul Mundtcad82442006-01-16 22:14:19 -0800612 default "66000000" if CPU_SUBTYPE_SH4_202
Paul Mundt05627482007-05-15 16:25:47 +0900613 default "50000000"
Paul Mundtcad82442006-01-16 22:14:19 -0800614 help
615 This option is used to specify the peripheral clock frequency.
616 This is necessary for determining the reference clock value on
617 platforms lacking an RTC.
618
Paul Mundt36aa1e32009-05-22 14:00:34 +0900619config SH_CLK_CPG
620 def_bool y
621
Paul Mundt253b0882009-05-13 17:38:11 +0900622config SH_CLK_CPG_LEGACY
Paul Mundt36aa1e32009-05-22 14:00:34 +0900623 depends on SH_CLK_CPG
Paul Mundt43a18392010-01-19 19:37:14 +0900624 def_bool y if !CPU_SUBTYPE_SH7785 && !ARCH_SHMOBILE && \
Phil Edworthy51ce3062012-05-09 07:59:27 +0100625 !CPU_SHX3 && !CPU_SUBTYPE_SH7757 && \
Paul Mundtbcb86e02012-05-10 17:20:56 +0900626 !CPU_SUBTYPE_SH7734 && !CPU_SUBTYPE_SH7264 && \
627 !CPU_SUBTYPE_SH7269
Paul Mundt253b0882009-05-13 17:38:11 +0900628
Paul Mundt32351a22007-03-12 14:38:59 +0900629endmenu
630
Paul Mundtcad82442006-01-16 22:14:19 -0800631menu "CPU Frequency scaling"
632
633source "drivers/cpufreq/Kconfig"
634
635config SH_CPU_FREQ
636 tristate "SuperH CPU Frequency driver"
Paul Mundtcb5ec752007-07-20 13:38:19 +0900637 depends on CPU_FREQ
Paul Mundtcad82442006-01-16 22:14:19 -0800638 select CPU_FREQ_TABLE
639 help
Paul Mundt8a655052008-12-17 15:06:54 +0900640 This adds the cpufreq driver for SuperH. Any CPU that supports
641 clock rate rounding through the clock framework can use this
642 driver. While it will make the kernel slightly larger, this is
643 harmless for CPUs that don't support rate rounding. The driver
644 will also generate a notice in the boot log before disabling
645 itself if the CPU in question is not capable of rate rounding.
Paul Mundtcad82442006-01-16 22:14:19 -0800646
647 For details, take a look at <file:Documentation/cpu-freq>.
648
649 If unsure, say N.
650
651endmenu
652
Paul Mundt9f5e8ee2006-11-24 11:22:57 +0900653source "arch/sh/drivers/Kconfig"
654
Paul Mundtcad82442006-01-16 22:14:19 -0800655endmenu
656
Paul Mundtcad82442006-01-16 22:14:19 -0800657menu "Kernel features"
658
Paul Mundt91b91d02006-09-27 18:08:33 +0900659source kernel/Kconfig.hz
660
Paul Mundtcad82442006-01-16 22:14:19 -0800661config KEXEC
662 bool "kexec system call (EXPERIMENTAL)"
Nobuhiro Iwamatsuf36b59d2009-03-26 08:32:37 +0000663 depends on SUPERH32 && EXPERIMENTAL && MMU
Paul Mundtcad82442006-01-16 22:14:19 -0800664 help
665 kexec is a system call that implements the ability to shutdown your
666 current kernel, and to start another kernel. It is like a reboot
Matt LaPlante1f1332f2006-06-29 01:32:47 -0400667 but it is independent of the system firmware. And like a reboot
Paul Mundtcad82442006-01-16 22:14:19 -0800668 you can start any kernel with it, not just Linux.
669
Matt LaPlante1f1332f2006-06-29 01:32:47 -0400670 The name comes from the similarity to the exec system call.
Paul Mundtcad82442006-01-16 22:14:19 -0800671
672 It is an ongoing process to be certain the hardware in a machine
673 is properly shutdown, so do not be surprised if this code does not
674 initially work for you. It may help to enable device hotplugging
675 support. As of this writing the exact hardware interface is
676 strongly in flux, so no good recommendation can be made.
677
Paul Mundt4d5ade52007-04-27 11:25:57 +0900678config CRASH_DUMP
679 bool "kernel crash dumps (EXPERIMENTAL)"
Paul Mundtd523e1a2010-05-07 16:39:09 +0900680 depends on SUPERH32 && EXPERIMENTAL && BROKEN_ON_SMP
Paul Mundt4d5ade52007-04-27 11:25:57 +0900681 help
682 Generate crash dump after being started by kexec.
683 This should be normally only set in special crash dump kernels
684 which are loaded in the main kernel with kexec-tools into
685 a specially reserved region and then later executed after
686 a crash by kdump/kexec. The crash dump kernel must be compiled
687 to a memory address not used by the main kernel using
Simon Hormane66ac3f2011-09-15 20:13:00 +0900688 PHYSICAL_START.
Paul Mundt4d5ade52007-04-27 11:25:57 +0900689
690 For more details see Documentation/kdump/kdump.txt
691
Magnus Dammb7cf6dd2009-03-18 08:51:29 +0000692config KEXEC_JUMP
693 bool "kexec jump (EXPERIMENTAL)"
694 depends on SUPERH32 && KEXEC && HIBERNATION && EXPERIMENTAL
695 help
696 Jump between original kernel and kexeced kernel and invoke
697 code via KEXEC
698
Simon Hormane66ac3f2011-09-15 20:13:00 +0900699config PHYSICAL_START
700 hex "Physical address where the kernel is loaded" if (EXPERT || CRASH_DUMP)
701 default MEMORY_START
702 ---help---
703 This gives the physical address where the kernel is loaded
704 and is ordinarily the same as MEMORY_START.
705
706 Different values are primarily used in the case of kexec on panic
707 where the fail safe kernel needs to run at a different address
708 than the panic-ed kernel.
709
Paul Mundtc4637d42008-07-30 15:30:52 +0900710config SECCOMP
711 bool "Enable seccomp to safely compute untrusted bytecode"
712 depends on PROC_FS
Paul Mundtc4637d42008-07-30 15:30:52 +0900713 help
714 This kernel feature is useful for number crunching applications
715 that may need to compute untrusted bytecode during their
716 execution. By using pipes or other transports made available to
717 the process as file descriptors supporting the read/write
718 syscalls, it's possible to isolate those applications in
719 their own address space using seccomp. Once seccomp is
720 enabled via prctl, it cannot be disabled and the task is only
721 allowed to execute a few safe syscalls defined by each seccomp
722 mode.
723
724 If unsure, say N.
725
Filippo Arcidiacono5d920bb2012-04-19 15:45:57 +0900726config CC_STACKPROTECTOR
727 bool "Enable -fstack-protector buffer overflow detection (EXPERIMENTAL)"
728 depends on SUPERH32 && EXPERIMENTAL
729 help
730 This option turns on the -fstack-protector GCC feature. This
731 feature puts, at the beginning of functions, a canary value on
732 the stack just before the return address, and validates
733 the value just before actually returning. Stack based buffer
734 overflows (that need to overwrite this return address) now also
735 overwrite the canary, which gets detected and the attack is then
736 neutralized via a kernel panic.
737
738 This feature requires gcc version 4.2 or above.
739
Linus Torvalds1da177e2005-04-16 15:20:36 -0700740config SMP
741 bool "Symmetric multi-processing support"
Paul Mundt357d5942007-06-11 15:32:07 +0900742 depends on SYS_SUPPORTS_SMP
Jens Axboe490f5de2008-06-10 20:52:59 +0200743 select USE_GENERIC_SMP_HELPERS
Linus Torvalds1da177e2005-04-16 15:20:36 -0700744 ---help---
745 This enables support for systems with more than one CPU. If you have
746 a system with only one CPU, like most personal computers, say N. If
747 you have a system with more than one CPU, say Y.
748
749 If you say N here, the kernel will run on single and multiprocessor
750 machines, but will use only one CPU of a multiprocessor machine. If
751 you say Y here, the kernel will run on many, but not all,
752 singleprocessor machines. On a singleprocessor machine, the kernel
753 will run faster if you say N here.
754
755 People using multiprocessor machines who say Y here should also say
756 Y to "Enhanced Real Time Clock Support", below.
757
Adrian Bunk03502fa2008-02-03 15:50:21 +0200758 See also <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO
759 available at <http://www.tldp.org/docs.html#howto>.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700760
761 If you don't know what to do here, say N.
762
763config NR_CPUS
764 int "Maximum number of CPUs (2-32)"
765 range 2 32
766 depends on SMP
Paul Mundt2eb2a432009-06-19 16:00:00 +0900767 default "4" if CPU_SUBTYPE_SHX3
Linus Torvalds1da177e2005-04-16 15:20:36 -0700768 default "2"
769 help
770 This allows you to specify the maximum number of CPUs which this
771 kernel will support. The maximum supported value is 32 and the
772 minimum value which makes sense is 2.
773
774 This is purely to save memory - each supported CPU adds
775 approximately eight kilobytes to the kernel image.
776
Paul Mundt763142d2010-04-26 19:08:55 +0900777config HOTPLUG_CPU
778 bool "Support for hot-pluggable CPUs (EXPERIMENTAL)"
779 depends on SMP && HOTPLUG && EXPERIMENTAL
780 help
781 Say Y here to experiment with turning CPUs off and on. CPUs
782 can be controlled through /sys/devices/system/cpu.
783
Paul Mundt91b91d02006-09-27 18:08:33 +0900784source "kernel/Kconfig.preempt"
785
Paul Mundt83662462007-09-28 16:04:49 +0900786config GUSA
787 def_bool y
Stuart Menefy1efe4ce2007-11-30 16:12:36 +0900788 depends on !SMP && SUPERH32
Paul Mundt83662462007-09-28 16:04:49 +0900789 help
790 This enables support for gUSA (general UserSpace Atomicity).
791 This is the default implementation for both UP and non-ll/sc
792 CPUs, and is used by the libc, amongst others.
793
794 For additional information, design information can be found
795 in <http://lc.linux.or.jp/lc2002/papers/niibe0919p.pdf>.
796
797 This should only be disabled for special cases where alternate
798 atomicity implementations exist.
799
Stuart Menefy1efe4ce2007-11-30 16:12:36 +0900800config GUSA_RB
801 bool "Implement atomic operations by roll-back (gRB) (EXPERIMENTAL)"
802 depends on GUSA && CPU_SH3 || (CPU_SH4 && !CPU_SH4A)
803 help
804 Enabling this option will allow the kernel to implement some
Matt LaPlante692105b2009-01-26 11:12:25 +0100805 atomic operations using a software implementation of load-locked/
Stuart Menefy1efe4ce2007-11-30 16:12:36 +0900806 store-conditional (LLSC). On machines which do not have hardware
807 LLSC, this should be more efficient than the other alternative of
Matt LaPlante692105b2009-01-26 11:12:25 +0100808 disabling interrupts around the atomic sequence.
Stuart Menefy1efe4ce2007-11-30 16:12:36 +0900809
Matt Fleming86c8c042010-09-10 20:36:23 +0100810config HW_PERF_EVENTS
811 bool "Enable hardware performance counter support for perf events"
812 depends on PERF_EVENTS && CPU_HAS_PMU
813 default y
814 help
815 Enable hardware performance counter support for perf events. If
816 disabled, perf events will use software events only.
817
Paul Mundt43b87742010-04-13 14:43:03 +0900818source "drivers/sh/Kconfig"
819
Paul Mundtcad82442006-01-16 22:14:19 -0800820endmenu
821
822menu "Boot options"
823
824config ZERO_PAGE_OFFSET
Paul Mundtb412a49a2009-05-10 01:23:25 +0900825 hex
826 default "0x00010000" if PAGE_SIZE_64KB || SH_RTS7751R2D || \
827 SH_7751_SOLUTION_ENGINE
828 default "0x00004000" if PAGE_SIZE_16KB || SH_SH03
Paul Mundt7a847f82006-12-26 15:29:19 +0900829 default "0x00002000" if PAGE_SIZE_8KB
Paul Mundtcad82442006-01-16 22:14:19 -0800830 default "0x00001000"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700831 help
Paul Mundtcad82442006-01-16 22:14:19 -0800832 This sets the default offset of zero page.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700833
Paul Mundtcad82442006-01-16 22:14:19 -0800834config BOOT_LINK_OFFSET
Paul Mundtb412a49a2009-05-10 01:23:25 +0900835 hex
836 default "0x00210000" if SH_SHMIN
Paul Mundta2e76c82009-05-10 00:54:39 +0900837 default "0x00400000" if SH_CAYMAN
Paul Mundtb412a49a2009-05-10 01:23:25 +0900838 default "0x00810000" if SH_7780_SOLUTION_ENGINE
839 default "0x009e0000" if SH_TITAN
840 default "0x01800000" if SH_SDK7780
841 default "0x02000000" if SH_EDOSK7760
Paul Mundtcad82442006-01-16 22:14:19 -0800842 default "0x00800000"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700843 help
Paul Mundtcad82442006-01-16 22:14:19 -0800844 This option allows you to set the link address offset of the zImage.
845 This can be useful if you are on a board which has a small amount of
846 memory.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700847
Paul Mundtb412a49a2009-05-10 01:23:25 +0900848config ENTRY_OFFSET
849 hex
850 default "0x00001000" if PAGE_SIZE_4KB
851 default "0x00002000" if PAGE_SIZE_8KB
852 default "0x00004000" if PAGE_SIZE_16KB
853 default "0x00010000" if PAGE_SIZE_64KB
854 default "0x00000000"
855
Magnus Damm4705b2e2010-05-18 14:43:15 +0000856config ROMIMAGE_MMCIF
857 bool "Include MMCIF loader in romImage (EXPERIMENTAL)"
858 depends on CPU_SUBTYPE_SH7724 && EXPERIMENTAL
859 help
860 Say Y here to include experimental MMCIF loading code in
861 romImage. With this enabled it is possible to write the romImage
862 kernel image to an MMC card and boot the kernel straight from
863 the reset vector. At reset the processor Mask ROM will load the
864 first part of the romImage which in turn loads the rest the kernel
865 image to RAM using the MMCIF hardware block.
866
Pawel Molld724a9c2009-08-24 16:25:38 +0900867choice
868 prompt "Kernel command line"
869 optional
870 default CMDLINE_OVERWRITE
871 help
872 Setting this option allows the kernel command line arguments
873 to be set.
874
875config CMDLINE_OVERWRITE
876 bool "Overwrite bootloader kernel arguments"
877 help
878 Given string will overwrite any arguments passed in by
879 a bootloader.
880
881config CMDLINE_EXTEND
882 bool "Extend bootloader kernel arguments"
883 help
884 Given string will be concatenated with arguments passed in
885 by a bootloader.
886
887endchoice
Linus Torvalds1da177e2005-04-16 15:20:36 -0700888
Paul Mundtcad82442006-01-16 22:14:19 -0800889config CMDLINE
Pawel Molld724a9c2009-08-24 16:25:38 +0900890 string "Kernel command line arguments string"
891 depends on CMDLINE_OVERWRITE || CMDLINE_EXTEND
Paul Mundtcad82442006-01-16 22:14:19 -0800892 default "console=ttySC1,115200"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700893
894endmenu
895
Paul Mundtcad82442006-01-16 22:14:19 -0800896menu "Bus options"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700897
Paul Mundtcad82442006-01-16 22:14:19 -0800898config SUPERHYWAY
899 tristate "SuperHyway Bus support"
900 depends on CPU_SUBTYPE_SH4_202
Linus Torvalds1da177e2005-04-16 15:20:36 -0700901
Adrian McMenamin17be2d22007-09-21 15:55:55 +0900902config MAPLE
Paul Mundte16038a2009-01-09 15:12:30 +0900903 bool "Maple Bus support"
904 depends on SH_DREAMCAST
905 help
906 The Maple Bus is SEGA's serial communication bus for peripherals
907 on the Dreamcast. Without this bus support you won't be able to
908 get your Dreamcast keyboard etc to work, so most users
909 probably want to say 'Y' here, unless you are only using the
910 Dreamcast with a serial line terminal or a remote network
911 connection.
Adrian McMenamin17be2d22007-09-21 15:55:55 +0900912
Paul Mundt76934652009-10-27 10:36:55 +0900913config PCI
914 bool "PCI support"
915 depends on SYS_SUPPORTS_PCI
Paul Mundt320e68d2010-01-29 22:38:13 +0900916 select PCI_DOMAINS
Michael S. Tsirkin43db5952011-11-24 21:10:12 +0200917 select GENERIC_PCI_IOMAP
Michael S. Tsirkin1e05b622012-01-30 00:29:10 +0200918 select NO_GENERIC_PCI_IOPORT_MAP
Paul Mundt76934652009-10-27 10:36:55 +0900919 help
920 Find out whether you have a PCI motherboard. PCI is the name of a
921 bus system, i.e. the way the CPU talks to the other stuff inside
922 your box. If you have PCI, say Y, otherwise N.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700923
Paul Mundt320e68d2010-01-29 22:38:13 +0900924config PCI_DOMAINS
925 bool
926
Paul Mundte16038a2009-01-09 15:12:30 +0900927source "drivers/pci/pcie/Kconfig"
928
Linus Torvalds1da177e2005-04-16 15:20:36 -0700929source "drivers/pci/Kconfig"
930
931source "drivers/pcmcia/Kconfig"
932
933source "drivers/pci/hotplug/Kconfig"
934
935endmenu
936
937menu "Executable file formats"
938
939source "fs/Kconfig.binfmt"
940
941endmenu
942
Andriy Skulysh3aa770e2006-09-27 16:20:22 +0900943menu "Power management options (EXPERIMENTAL)"
Magnus Dammaf998a92008-12-04 22:45:12 +0900944depends on EXPERIMENTAL
Johannes Bergf4cb5702007-12-08 02:14:00 +0100945
Magnus Dammc6f17cb2008-12-04 22:45:20 +0900946source "kernel/power/Kconfig"
947
948source "drivers/cpuidle/Kconfig"
Andriy Skulysh3aa770e2006-09-27 16:20:22 +0900949
Andriy Skulysh3aa770e2006-09-27 16:20:22 +0900950endmenu
951
Sam Ravnborgd5950b42005-07-11 21:03:49 -0700952source "net/Kconfig"
953
Linus Torvalds1da177e2005-04-16 15:20:36 -0700954source "drivers/Kconfig"
955
956source "fs/Kconfig"
957
Linus Torvalds1da177e2005-04-16 15:20:36 -0700958source "arch/sh/Kconfig.debug"
959
960source "security/Kconfig"
961
962source "crypto/Kconfig"
963
Linus Torvalds1da177e2005-04-16 15:20:36 -0700964source "lib/Kconfig"