xref: /OK3568_Linux_fs/kernel/arch/sh/Kconfig (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun# SPDX-License-Identifier: GPL-2.0
2*4882a593Smuzhiyunconfig SUPERH
3*4882a593Smuzhiyun	def_bool y
4*4882a593Smuzhiyun	select ARCH_32BIT_OFF_T
5*4882a593Smuzhiyun	select ARCH_HAVE_CUSTOM_GPIO_H
6*4882a593Smuzhiyun	select ARCH_HAVE_NMI_SAFE_CMPXCHG if (GUSA_RB || CPU_SH4A)
7*4882a593Smuzhiyun	select ARCH_HAS_BINFMT_FLAT if !MMU
8*4882a593Smuzhiyun	select ARCH_HAS_GIGANTIC_PAGE
9*4882a593Smuzhiyun	select ARCH_HAS_GCOV_PROFILE_ALL
10*4882a593Smuzhiyun	select ARCH_HAS_PTE_SPECIAL
11*4882a593Smuzhiyun	select ARCH_HAS_TICK_BROADCAST if GENERIC_CLOCKEVENTS_BROADCAST
12*4882a593Smuzhiyun	select ARCH_HIBERNATION_POSSIBLE if MMU
13*4882a593Smuzhiyun	select ARCH_MIGHT_HAVE_PC_PARPORT
14*4882a593Smuzhiyun	select ARCH_WANT_IPC_PARSE_VERSION
15*4882a593Smuzhiyun	select CLKDEV_LOOKUP
16*4882a593Smuzhiyun	select CPU_NO_EFFICIENT_FFS
17*4882a593Smuzhiyun	select DMA_DECLARE_COHERENT
18*4882a593Smuzhiyun	select GENERIC_ATOMIC64
19*4882a593Smuzhiyun	select GENERIC_CLOCKEVENTS
20*4882a593Smuzhiyun	select GENERIC_CMOS_UPDATE if SH_SH03 || SH_DREAMCAST
21*4882a593Smuzhiyun	select GENERIC_IDLE_POLL_SETUP
22*4882a593Smuzhiyun	select GENERIC_IRQ_SHOW
23*4882a593Smuzhiyun	select GENERIC_PCI_IOMAP if PCI
24*4882a593Smuzhiyun	select GENERIC_SCHED_CLOCK
25*4882a593Smuzhiyun	select GENERIC_STRNCPY_FROM_USER
26*4882a593Smuzhiyun	select GENERIC_STRNLEN_USER
27*4882a593Smuzhiyun	select GENERIC_SMP_IDLE_THREAD
28*4882a593Smuzhiyun	select GUP_GET_PTE_LOW_HIGH if X2TLB
29*4882a593Smuzhiyun	select HAVE_ARCH_AUDITSYSCALL
30*4882a593Smuzhiyun	select HAVE_ARCH_KGDB
31*4882a593Smuzhiyun	select HAVE_ARCH_SECCOMP_FILTER
32*4882a593Smuzhiyun	select HAVE_ARCH_TRACEHOOK
33*4882a593Smuzhiyun	select HAVE_DEBUG_BUGVERBOSE
34*4882a593Smuzhiyun	select HAVE_DEBUG_KMEMLEAK
35*4882a593Smuzhiyun	select HAVE_DYNAMIC_FTRACE
36*4882a593Smuzhiyun	select HAVE_FAST_GUP if MMU
37*4882a593Smuzhiyun	select HAVE_FUNCTION_GRAPH_TRACER
38*4882a593Smuzhiyun	select HAVE_FUNCTION_TRACER
39*4882a593Smuzhiyun	select HAVE_FUTEX_CMPXCHG if FUTEX
40*4882a593Smuzhiyun	select HAVE_FTRACE_MCOUNT_RECORD
41*4882a593Smuzhiyun	select HAVE_HW_BREAKPOINT
42*4882a593Smuzhiyun	select HAVE_IDE if HAS_IOPORT_MAP
43*4882a593Smuzhiyun	select HAVE_IOREMAP_PROT if MMU && !X2TLB
44*4882a593Smuzhiyun	select HAVE_KERNEL_BZIP2
45*4882a593Smuzhiyun	select HAVE_KERNEL_GZIP
46*4882a593Smuzhiyun	select HAVE_KERNEL_LZMA
47*4882a593Smuzhiyun	select HAVE_KERNEL_LZO
48*4882a593Smuzhiyun	select HAVE_KERNEL_XZ
49*4882a593Smuzhiyun	select HAVE_KPROBES
50*4882a593Smuzhiyun	select HAVE_KRETPROBES
51*4882a593Smuzhiyun	select HAVE_MIXED_BREAKPOINTS_REGS
52*4882a593Smuzhiyun	select HAVE_MOD_ARCH_SPECIFIC if DWARF_UNWINDER
53*4882a593Smuzhiyun	select HAVE_NMI
54*4882a593Smuzhiyun	select HAVE_OPROFILE
55*4882a593Smuzhiyun	select HAVE_PATA_PLATFORM
56*4882a593Smuzhiyun	select HAVE_PERF_EVENTS
57*4882a593Smuzhiyun	select HAVE_REGS_AND_STACK_ACCESS_API
58*4882a593Smuzhiyun	select HAVE_UID16
59*4882a593Smuzhiyun	select HAVE_STACKPROTECTOR
60*4882a593Smuzhiyun	select HAVE_SYSCALL_TRACEPOINTS
61*4882a593Smuzhiyun	select IRQ_FORCED_THREADING
62*4882a593Smuzhiyun	select MAY_HAVE_SPARSE_IRQ
63*4882a593Smuzhiyun	select MODULES_USE_ELF_RELA
64*4882a593Smuzhiyun	select NEED_SG_DMA_LENGTH
65*4882a593Smuzhiyun	select NO_DMA if !MMU && !DMA_COHERENT
66*4882a593Smuzhiyun	select NO_GENERIC_PCI_IOPORT_MAP if PCI
67*4882a593Smuzhiyun	select OLD_SIGACTION
68*4882a593Smuzhiyun	select OLD_SIGSUSPEND
69*4882a593Smuzhiyun	select PCI_DOMAINS if PCI
70*4882a593Smuzhiyun	select PERF_EVENTS
71*4882a593Smuzhiyun	select PERF_USE_VMALLOC
72*4882a593Smuzhiyun	select RTC_LIB
73*4882a593Smuzhiyun	select SET_FS
74*4882a593Smuzhiyun	select SPARSE_IRQ
75*4882a593Smuzhiyun	help
76*4882a593Smuzhiyun	  The SuperH is a RISC processor targeted for use in embedded systems
77*4882a593Smuzhiyun	  and consumer electronics; it was also used in the Sega Dreamcast
78*4882a593Smuzhiyun	  gaming console.  The SuperH port has a home page at
79*4882a593Smuzhiyun	  <http://www.linux-sh.org/>.
80*4882a593Smuzhiyun
81*4882a593Smuzhiyunconfig GENERIC_BUG
82*4882a593Smuzhiyun	def_bool y
83*4882a593Smuzhiyun	depends on BUG
84*4882a593Smuzhiyun
85*4882a593Smuzhiyunconfig GENERIC_HWEIGHT
86*4882a593Smuzhiyun	def_bool y
87*4882a593Smuzhiyun
88*4882a593Smuzhiyunconfig GENERIC_CALIBRATE_DELAY
89*4882a593Smuzhiyun	bool
90*4882a593Smuzhiyun
91*4882a593Smuzhiyunconfig GENERIC_LOCKBREAK
92*4882a593Smuzhiyun	def_bool y
93*4882a593Smuzhiyun	depends on SMP && PREEMPTION
94*4882a593Smuzhiyun
95*4882a593Smuzhiyunconfig ARCH_SUSPEND_POSSIBLE
96*4882a593Smuzhiyun	def_bool n
97*4882a593Smuzhiyun
98*4882a593Smuzhiyunconfig ARCH_HIBERNATION_POSSIBLE
99*4882a593Smuzhiyun	def_bool n
100*4882a593Smuzhiyun
101*4882a593Smuzhiyunconfig SYS_SUPPORTS_APM_EMULATION
102*4882a593Smuzhiyun	bool
103*4882a593Smuzhiyun	select ARCH_SUSPEND_POSSIBLE
104*4882a593Smuzhiyun
105*4882a593Smuzhiyunconfig SYS_SUPPORTS_HUGETLBFS
106*4882a593Smuzhiyun	bool
107*4882a593Smuzhiyun
108*4882a593Smuzhiyunconfig SYS_SUPPORTS_SMP
109*4882a593Smuzhiyun	bool
110*4882a593Smuzhiyun
111*4882a593Smuzhiyunconfig SYS_SUPPORTS_NUMA
112*4882a593Smuzhiyun	bool
113*4882a593Smuzhiyun
114*4882a593Smuzhiyunconfig STACKTRACE_SUPPORT
115*4882a593Smuzhiyun	def_bool y
116*4882a593Smuzhiyun
117*4882a593Smuzhiyunconfig LOCKDEP_SUPPORT
118*4882a593Smuzhiyun	def_bool y
119*4882a593Smuzhiyun
120*4882a593Smuzhiyunconfig ARCH_HAS_ILOG2_U32
121*4882a593Smuzhiyun	def_bool n
122*4882a593Smuzhiyun
123*4882a593Smuzhiyunconfig ARCH_HAS_ILOG2_U64
124*4882a593Smuzhiyun	def_bool n
125*4882a593Smuzhiyun
126*4882a593Smuzhiyunconfig NO_IOPORT_MAP
127*4882a593Smuzhiyun	def_bool !PCI
128*4882a593Smuzhiyun	depends on !SH_SH4202_MICRODEV && !SH_SHMIN && !SH_HP6XX && \
129*4882a593Smuzhiyun		   !SH_SOLUTION_ENGINE
130*4882a593Smuzhiyun
131*4882a593Smuzhiyunconfig IO_TRAPPED
132*4882a593Smuzhiyun	bool
133*4882a593Smuzhiyun
134*4882a593Smuzhiyunconfig SWAP_IO_SPACE
135*4882a593Smuzhiyun	bool
136*4882a593Smuzhiyun
137*4882a593Smuzhiyunconfig DMA_COHERENT
138*4882a593Smuzhiyun	bool
139*4882a593Smuzhiyun
140*4882a593Smuzhiyunconfig DMA_NONCOHERENT
141*4882a593Smuzhiyun	def_bool !NO_DMA && !DMA_COHERENT
142*4882a593Smuzhiyun	select ARCH_HAS_DMA_PREP_COHERENT
143*4882a593Smuzhiyun	select ARCH_HAS_SYNC_DMA_FOR_DEVICE
144*4882a593Smuzhiyun	select DMA_DIRECT_REMAP
145*4882a593Smuzhiyun
146*4882a593Smuzhiyunconfig PGTABLE_LEVELS
147*4882a593Smuzhiyun	default 3 if X2TLB
148*4882a593Smuzhiyun	default 2
149*4882a593Smuzhiyun
150*4882a593Smuzhiyunmenu "System type"
151*4882a593Smuzhiyun
152*4882a593Smuzhiyun#
153*4882a593Smuzhiyun# Processor families
154*4882a593Smuzhiyun#
155*4882a593Smuzhiyunconfig CPU_SH2
156*4882a593Smuzhiyun	bool
157*4882a593Smuzhiyun	select SH_INTC
158*4882a593Smuzhiyun
159*4882a593Smuzhiyunconfig CPU_SH2A
160*4882a593Smuzhiyun	bool
161*4882a593Smuzhiyun	select CPU_SH2
162*4882a593Smuzhiyun	select UNCACHED_MAPPING
163*4882a593Smuzhiyun
164*4882a593Smuzhiyunconfig CPU_J2
165*4882a593Smuzhiyun	bool
166*4882a593Smuzhiyun	select CPU_SH2
167*4882a593Smuzhiyun	select OF
168*4882a593Smuzhiyun	select OF_EARLY_FLATTREE
169*4882a593Smuzhiyun
170*4882a593Smuzhiyunconfig CPU_SH3
171*4882a593Smuzhiyun	bool
172*4882a593Smuzhiyun	select CPU_HAS_INTEVT
173*4882a593Smuzhiyun	select CPU_HAS_SR_RB
174*4882a593Smuzhiyun	select SH_INTC
175*4882a593Smuzhiyun	select SYS_SUPPORTS_SH_TMU
176*4882a593Smuzhiyun
177*4882a593Smuzhiyunconfig CPU_SH4
178*4882a593Smuzhiyun	bool
179*4882a593Smuzhiyun	select CPU_HAS_INTEVT
180*4882a593Smuzhiyun	select CPU_HAS_SR_RB
181*4882a593Smuzhiyun	select CPU_HAS_FPU if !CPU_SH4AL_DSP
182*4882a593Smuzhiyun	select SH_INTC
183*4882a593Smuzhiyun	select SYS_SUPPORTS_SH_TMU
184*4882a593Smuzhiyun	select SYS_SUPPORTS_HUGETLBFS if MMU
185*4882a593Smuzhiyun
186*4882a593Smuzhiyunconfig CPU_SH4A
187*4882a593Smuzhiyun	bool
188*4882a593Smuzhiyun	select CPU_SH4
189*4882a593Smuzhiyun
190*4882a593Smuzhiyunconfig CPU_SH4AL_DSP
191*4882a593Smuzhiyun	bool
192*4882a593Smuzhiyun	select CPU_SH4A
193*4882a593Smuzhiyun	select CPU_HAS_DSP
194*4882a593Smuzhiyun
195*4882a593Smuzhiyunconfig CPU_SHX2
196*4882a593Smuzhiyun	bool
197*4882a593Smuzhiyun
198*4882a593Smuzhiyunconfig CPU_SHX3
199*4882a593Smuzhiyun	bool
200*4882a593Smuzhiyun	select DMA_COHERENT
201*4882a593Smuzhiyun	select SYS_SUPPORTS_SMP
202*4882a593Smuzhiyun	select SYS_SUPPORTS_NUMA
203*4882a593Smuzhiyun
204*4882a593Smuzhiyunconfig ARCH_SHMOBILE
205*4882a593Smuzhiyun	bool
206*4882a593Smuzhiyun	select ARCH_SUSPEND_POSSIBLE
207*4882a593Smuzhiyun	select PM
208*4882a593Smuzhiyun
209*4882a593Smuzhiyunconfig CPU_HAS_PMU
210*4882a593Smuzhiyun       depends on CPU_SH4 || CPU_SH4A
211*4882a593Smuzhiyun       default y
212*4882a593Smuzhiyun       bool
213*4882a593Smuzhiyun
214*4882a593Smuzhiyunchoice
215*4882a593Smuzhiyun	prompt "Processor sub-type selection"
216*4882a593Smuzhiyun
217*4882a593Smuzhiyun#
218*4882a593Smuzhiyun# Processor subtypes
219*4882a593Smuzhiyun#
220*4882a593Smuzhiyun
221*4882a593Smuzhiyun# SH-2 Processor Support
222*4882a593Smuzhiyun
223*4882a593Smuzhiyunconfig CPU_SUBTYPE_SH7619
224*4882a593Smuzhiyun	bool "Support SH7619 processor"
225*4882a593Smuzhiyun	select CPU_SH2
226*4882a593Smuzhiyun	select SYS_SUPPORTS_SH_CMT
227*4882a593Smuzhiyun
228*4882a593Smuzhiyunconfig CPU_SUBTYPE_J2
229*4882a593Smuzhiyun	bool "Support J2 processor"
230*4882a593Smuzhiyun	select CPU_J2
231*4882a593Smuzhiyun	select SYS_SUPPORTS_SMP
232*4882a593Smuzhiyun	select GENERIC_CLOCKEVENTS_BROADCAST if SMP
233*4882a593Smuzhiyun
234*4882a593Smuzhiyun# SH-2A Processor Support
235*4882a593Smuzhiyun
236*4882a593Smuzhiyunconfig CPU_SUBTYPE_SH7201
237*4882a593Smuzhiyun	bool "Support SH7201 processor"
238*4882a593Smuzhiyun	select CPU_SH2A
239*4882a593Smuzhiyun	select CPU_HAS_FPU
240*4882a593Smuzhiyun	select SYS_SUPPORTS_SH_MTU2
241*4882a593Smuzhiyun
242*4882a593Smuzhiyunconfig CPU_SUBTYPE_SH7203
243*4882a593Smuzhiyun	bool "Support SH7203 processor"
244*4882a593Smuzhiyun	select CPU_SH2A
245*4882a593Smuzhiyun	select CPU_HAS_FPU
246*4882a593Smuzhiyun	select SYS_SUPPORTS_SH_CMT
247*4882a593Smuzhiyun	select SYS_SUPPORTS_SH_MTU2
248*4882a593Smuzhiyun	select PINCTRL
249*4882a593Smuzhiyun
250*4882a593Smuzhiyunconfig CPU_SUBTYPE_SH7206
251*4882a593Smuzhiyun	bool "Support SH7206 processor"
252*4882a593Smuzhiyun	select CPU_SH2A
253*4882a593Smuzhiyun	select SYS_SUPPORTS_SH_CMT
254*4882a593Smuzhiyun	select SYS_SUPPORTS_SH_MTU2
255*4882a593Smuzhiyun
256*4882a593Smuzhiyunconfig CPU_SUBTYPE_SH7263
257*4882a593Smuzhiyun	bool "Support SH7263 processor"
258*4882a593Smuzhiyun	select CPU_SH2A
259*4882a593Smuzhiyun	select CPU_HAS_FPU
260*4882a593Smuzhiyun	select SYS_SUPPORTS_SH_CMT
261*4882a593Smuzhiyun	select SYS_SUPPORTS_SH_MTU2
262*4882a593Smuzhiyun
263*4882a593Smuzhiyunconfig CPU_SUBTYPE_SH7264
264*4882a593Smuzhiyun	bool "Support SH7264 processor"
265*4882a593Smuzhiyun	select CPU_SH2A
266*4882a593Smuzhiyun	select CPU_HAS_FPU
267*4882a593Smuzhiyun	select SYS_SUPPORTS_SH_CMT
268*4882a593Smuzhiyun	select SYS_SUPPORTS_SH_MTU2
269*4882a593Smuzhiyun	select PINCTRL
270*4882a593Smuzhiyun
271*4882a593Smuzhiyunconfig CPU_SUBTYPE_SH7269
272*4882a593Smuzhiyun	bool "Support SH7269 processor"
273*4882a593Smuzhiyun	select CPU_SH2A
274*4882a593Smuzhiyun	select CPU_HAS_FPU
275*4882a593Smuzhiyun	select SYS_SUPPORTS_SH_CMT
276*4882a593Smuzhiyun	select SYS_SUPPORTS_SH_MTU2
277*4882a593Smuzhiyun	select PINCTRL
278*4882a593Smuzhiyun
279*4882a593Smuzhiyunconfig CPU_SUBTYPE_MXG
280*4882a593Smuzhiyun	bool "Support MX-G processor"
281*4882a593Smuzhiyun	select CPU_SH2A
282*4882a593Smuzhiyun	select SYS_SUPPORTS_SH_MTU2
283*4882a593Smuzhiyun	help
284*4882a593Smuzhiyun	  Select MX-G if running on an R8A03022BG part.
285*4882a593Smuzhiyun
286*4882a593Smuzhiyun# SH-3 Processor Support
287*4882a593Smuzhiyun
288*4882a593Smuzhiyunconfig CPU_SUBTYPE_SH7705
289*4882a593Smuzhiyun	bool "Support SH7705 processor"
290*4882a593Smuzhiyun	select CPU_SH3
291*4882a593Smuzhiyun
292*4882a593Smuzhiyunconfig CPU_SUBTYPE_SH7706
293*4882a593Smuzhiyun	bool "Support SH7706 processor"
294*4882a593Smuzhiyun	select CPU_SH3
295*4882a593Smuzhiyun	help
296*4882a593Smuzhiyun	  Select SH7706 if you have a 133 Mhz SH-3 HD6417706 CPU.
297*4882a593Smuzhiyun
298*4882a593Smuzhiyunconfig CPU_SUBTYPE_SH7707
299*4882a593Smuzhiyun	bool "Support SH7707 processor"
300*4882a593Smuzhiyun	select CPU_SH3
301*4882a593Smuzhiyun	help
302*4882a593Smuzhiyun	  Select SH7707 if you have a  60 Mhz SH-3 HD6417707 CPU.
303*4882a593Smuzhiyun
304*4882a593Smuzhiyunconfig CPU_SUBTYPE_SH7708
305*4882a593Smuzhiyun	bool "Support SH7708 processor"
306*4882a593Smuzhiyun	select CPU_SH3
307*4882a593Smuzhiyun	help
308*4882a593Smuzhiyun	  Select SH7708 if you have a  60 Mhz SH-3 HD6417708S or
309*4882a593Smuzhiyun	  if you have a 100 Mhz SH-3 HD6417708R CPU.
310*4882a593Smuzhiyun
311*4882a593Smuzhiyunconfig CPU_SUBTYPE_SH7709
312*4882a593Smuzhiyun	bool "Support SH7709 processor"
313*4882a593Smuzhiyun	select CPU_SH3
314*4882a593Smuzhiyun	help
315*4882a593Smuzhiyun	  Select SH7709 if you have a  80 Mhz SH-3 HD6417709 CPU.
316*4882a593Smuzhiyun
317*4882a593Smuzhiyunconfig CPU_SUBTYPE_SH7710
318*4882a593Smuzhiyun	bool "Support SH7710 processor"
319*4882a593Smuzhiyun	select CPU_SH3
320*4882a593Smuzhiyun	select CPU_HAS_DSP
321*4882a593Smuzhiyun	help
322*4882a593Smuzhiyun	  Select SH7710 if you have a SH3-DSP SH7710 CPU.
323*4882a593Smuzhiyun
324*4882a593Smuzhiyunconfig CPU_SUBTYPE_SH7712
325*4882a593Smuzhiyun	bool "Support SH7712 processor"
326*4882a593Smuzhiyun	select CPU_SH3
327*4882a593Smuzhiyun	select CPU_HAS_DSP
328*4882a593Smuzhiyun	help
329*4882a593Smuzhiyun	  Select SH7712 if you have a SH3-DSP SH7712 CPU.
330*4882a593Smuzhiyun
331*4882a593Smuzhiyunconfig CPU_SUBTYPE_SH7720
332*4882a593Smuzhiyun	bool "Support SH7720 processor"
333*4882a593Smuzhiyun	select CPU_SH3
334*4882a593Smuzhiyun	select CPU_HAS_DSP
335*4882a593Smuzhiyun	select SYS_SUPPORTS_SH_CMT
336*4882a593Smuzhiyun	select USB_OHCI_SH if USB_OHCI_HCD
337*4882a593Smuzhiyun	select PINCTRL
338*4882a593Smuzhiyun	help
339*4882a593Smuzhiyun	  Select SH7720 if you have a SH3-DSP SH7720 CPU.
340*4882a593Smuzhiyun
341*4882a593Smuzhiyunconfig CPU_SUBTYPE_SH7721
342*4882a593Smuzhiyun	bool "Support SH7721 processor"
343*4882a593Smuzhiyun	select CPU_SH3
344*4882a593Smuzhiyun	select CPU_HAS_DSP
345*4882a593Smuzhiyun	select SYS_SUPPORTS_SH_CMT
346*4882a593Smuzhiyun	select USB_OHCI_SH if USB_OHCI_HCD
347*4882a593Smuzhiyun	help
348*4882a593Smuzhiyun	  Select SH7721 if you have a SH3-DSP SH7721 CPU.
349*4882a593Smuzhiyun
350*4882a593Smuzhiyun# SH-4 Processor Support
351*4882a593Smuzhiyun
352*4882a593Smuzhiyunconfig CPU_SUBTYPE_SH7750
353*4882a593Smuzhiyun	bool "Support SH7750 processor"
354*4882a593Smuzhiyun	select CPU_SH4
355*4882a593Smuzhiyun	help
356*4882a593Smuzhiyun	  Select SH7750 if you have a 200 Mhz SH-4 HD6417750 CPU.
357*4882a593Smuzhiyun
358*4882a593Smuzhiyunconfig CPU_SUBTYPE_SH7091
359*4882a593Smuzhiyun	bool "Support SH7091 processor"
360*4882a593Smuzhiyun	select CPU_SH4
361*4882a593Smuzhiyun	help
362*4882a593Smuzhiyun	  Select SH7091 if you have an SH-4 based Sega device (such as
363*4882a593Smuzhiyun	  the Dreamcast, Naomi, and Naomi 2).
364*4882a593Smuzhiyun
365*4882a593Smuzhiyunconfig CPU_SUBTYPE_SH7750R
366*4882a593Smuzhiyun	bool "Support SH7750R processor"
367*4882a593Smuzhiyun	select CPU_SH4
368*4882a593Smuzhiyun
369*4882a593Smuzhiyunconfig CPU_SUBTYPE_SH7750S
370*4882a593Smuzhiyun	bool "Support SH7750S processor"
371*4882a593Smuzhiyun	select CPU_SH4
372*4882a593Smuzhiyun
373*4882a593Smuzhiyunconfig CPU_SUBTYPE_SH7751
374*4882a593Smuzhiyun	bool "Support SH7751 processor"
375*4882a593Smuzhiyun	select CPU_SH4
376*4882a593Smuzhiyun	help
377*4882a593Smuzhiyun	  Select SH7751 if you have a 166 Mhz SH-4 HD6417751 CPU,
378*4882a593Smuzhiyun	  or if you have a HD6417751R CPU.
379*4882a593Smuzhiyun
380*4882a593Smuzhiyunconfig CPU_SUBTYPE_SH7751R
381*4882a593Smuzhiyun	bool "Support SH7751R processor"
382*4882a593Smuzhiyun	select CPU_SH4
383*4882a593Smuzhiyun
384*4882a593Smuzhiyunconfig CPU_SUBTYPE_SH7760
385*4882a593Smuzhiyun	bool "Support SH7760 processor"
386*4882a593Smuzhiyun	select CPU_SH4
387*4882a593Smuzhiyun
388*4882a593Smuzhiyunconfig CPU_SUBTYPE_SH4_202
389*4882a593Smuzhiyun	bool "Support SH4-202 processor"
390*4882a593Smuzhiyun	select CPU_SH4
391*4882a593Smuzhiyun
392*4882a593Smuzhiyun# SH-4A Processor Support
393*4882a593Smuzhiyun
394*4882a593Smuzhiyunconfig CPU_SUBTYPE_SH7723
395*4882a593Smuzhiyun	bool "Support SH7723 processor"
396*4882a593Smuzhiyun	select CPU_SH4A
397*4882a593Smuzhiyun	select CPU_SHX2
398*4882a593Smuzhiyun	select ARCH_SHMOBILE
399*4882a593Smuzhiyun	select ARCH_SPARSEMEM_ENABLE
400*4882a593Smuzhiyun	select SYS_SUPPORTS_SH_CMT
401*4882a593Smuzhiyun	select PINCTRL
402*4882a593Smuzhiyun	help
403*4882a593Smuzhiyun	  Select SH7723 if you have an SH-MobileR2 CPU.
404*4882a593Smuzhiyun
405*4882a593Smuzhiyunconfig CPU_SUBTYPE_SH7724
406*4882a593Smuzhiyun	bool "Support SH7724 processor"
407*4882a593Smuzhiyun	select CPU_SH4A
408*4882a593Smuzhiyun	select CPU_SHX2
409*4882a593Smuzhiyun	select ARCH_SHMOBILE
410*4882a593Smuzhiyun	select ARCH_SPARSEMEM_ENABLE
411*4882a593Smuzhiyun	select SYS_SUPPORTS_SH_CMT
412*4882a593Smuzhiyun	select PINCTRL
413*4882a593Smuzhiyun	help
414*4882a593Smuzhiyun	  Select SH7724 if you have an SH-MobileR2R CPU.
415*4882a593Smuzhiyun
416*4882a593Smuzhiyunconfig CPU_SUBTYPE_SH7734
417*4882a593Smuzhiyun	bool "Support SH7734 processor"
418*4882a593Smuzhiyun	select CPU_SH4A
419*4882a593Smuzhiyun	select CPU_SHX2
420*4882a593Smuzhiyun	select PINCTRL
421*4882a593Smuzhiyun	help
422*4882a593Smuzhiyun	  Select SH7734 if you have a SH4A SH7734 CPU.
423*4882a593Smuzhiyun
424*4882a593Smuzhiyunconfig CPU_SUBTYPE_SH7757
425*4882a593Smuzhiyun	bool "Support SH7757 processor"
426*4882a593Smuzhiyun	select CPU_SH4A
427*4882a593Smuzhiyun	select CPU_SHX2
428*4882a593Smuzhiyun	select PINCTRL
429*4882a593Smuzhiyun	help
430*4882a593Smuzhiyun	  Select SH7757 if you have a SH4A SH7757 CPU.
431*4882a593Smuzhiyun
432*4882a593Smuzhiyunconfig CPU_SUBTYPE_SH7763
433*4882a593Smuzhiyun	bool "Support SH7763 processor"
434*4882a593Smuzhiyun	select CPU_SH4A
435*4882a593Smuzhiyun	select USB_OHCI_SH if USB_OHCI_HCD
436*4882a593Smuzhiyun	help
437*4882a593Smuzhiyun	  Select SH7763 if you have a SH4A SH7763(R5S77631) CPU.
438*4882a593Smuzhiyun
439*4882a593Smuzhiyunconfig CPU_SUBTYPE_SH7770
440*4882a593Smuzhiyun	bool "Support SH7770 processor"
441*4882a593Smuzhiyun	select CPU_SH4A
442*4882a593Smuzhiyun
443*4882a593Smuzhiyunconfig CPU_SUBTYPE_SH7780
444*4882a593Smuzhiyun	bool "Support SH7780 processor"
445*4882a593Smuzhiyun	select CPU_SH4A
446*4882a593Smuzhiyun
447*4882a593Smuzhiyunconfig CPU_SUBTYPE_SH7785
448*4882a593Smuzhiyun	bool "Support SH7785 processor"
449*4882a593Smuzhiyun	select CPU_SH4A
450*4882a593Smuzhiyun	select CPU_SHX2
451*4882a593Smuzhiyun	select ARCH_SPARSEMEM_ENABLE
452*4882a593Smuzhiyun	select SYS_SUPPORTS_NUMA
453*4882a593Smuzhiyun	select PINCTRL
454*4882a593Smuzhiyun
455*4882a593Smuzhiyunconfig CPU_SUBTYPE_SH7786
456*4882a593Smuzhiyun	bool "Support SH7786 processor"
457*4882a593Smuzhiyun	select CPU_SH4A
458*4882a593Smuzhiyun	select CPU_SHX3
459*4882a593Smuzhiyun	select CPU_HAS_PTEAEX
460*4882a593Smuzhiyun	select GENERIC_CLOCKEVENTS_BROADCAST if SMP
461*4882a593Smuzhiyun	select USB_OHCI_SH if USB_OHCI_HCD
462*4882a593Smuzhiyun	select USB_EHCI_SH if USB_EHCI_HCD
463*4882a593Smuzhiyun	select PINCTRL
464*4882a593Smuzhiyun
465*4882a593Smuzhiyunconfig CPU_SUBTYPE_SHX3
466*4882a593Smuzhiyun	bool "Support SH-X3 processor"
467*4882a593Smuzhiyun	select CPU_SH4A
468*4882a593Smuzhiyun	select CPU_SHX3
469*4882a593Smuzhiyun	select GENERIC_CLOCKEVENTS_BROADCAST if SMP
470*4882a593Smuzhiyun	select GPIOLIB
471*4882a593Smuzhiyun	select PINCTRL
472*4882a593Smuzhiyun
473*4882a593Smuzhiyun# SH4AL-DSP Processor Support
474*4882a593Smuzhiyun
475*4882a593Smuzhiyunconfig CPU_SUBTYPE_SH7343
476*4882a593Smuzhiyun	bool "Support SH7343 processor"
477*4882a593Smuzhiyun	select CPU_SH4AL_DSP
478*4882a593Smuzhiyun	select ARCH_SHMOBILE
479*4882a593Smuzhiyun	select SYS_SUPPORTS_SH_CMT
480*4882a593Smuzhiyun
481*4882a593Smuzhiyunconfig CPU_SUBTYPE_SH7722
482*4882a593Smuzhiyun	bool "Support SH7722 processor"
483*4882a593Smuzhiyun	select CPU_SH4AL_DSP
484*4882a593Smuzhiyun	select CPU_SHX2
485*4882a593Smuzhiyun	select ARCH_SHMOBILE
486*4882a593Smuzhiyun	select ARCH_SPARSEMEM_ENABLE
487*4882a593Smuzhiyun	select SYS_SUPPORTS_NUMA
488*4882a593Smuzhiyun	select SYS_SUPPORTS_SH_CMT
489*4882a593Smuzhiyun	select PINCTRL
490*4882a593Smuzhiyun
491*4882a593Smuzhiyunconfig CPU_SUBTYPE_SH7366
492*4882a593Smuzhiyun	bool "Support SH7366 processor"
493*4882a593Smuzhiyun	select CPU_SH4AL_DSP
494*4882a593Smuzhiyun	select CPU_SHX2
495*4882a593Smuzhiyun	select ARCH_SHMOBILE
496*4882a593Smuzhiyun	select ARCH_SPARSEMEM_ENABLE
497*4882a593Smuzhiyun	select SYS_SUPPORTS_NUMA
498*4882a593Smuzhiyun	select SYS_SUPPORTS_SH_CMT
499*4882a593Smuzhiyun
500*4882a593Smuzhiyunendchoice
501*4882a593Smuzhiyun
502*4882a593Smuzhiyunsource "arch/sh/mm/Kconfig"
503*4882a593Smuzhiyun
504*4882a593Smuzhiyunsource "arch/sh/Kconfig.cpu"
505*4882a593Smuzhiyun
506*4882a593Smuzhiyunsource "arch/sh/boards/Kconfig"
507*4882a593Smuzhiyun
508*4882a593Smuzhiyunmenu "Timer and clock configuration"
509*4882a593Smuzhiyun
510*4882a593Smuzhiyunconfig SH_PCLK_FREQ
511*4882a593Smuzhiyun	int "Peripheral clock frequency (in Hz)"
512*4882a593Smuzhiyun	depends on SH_CLK_CPG_LEGACY
513*4882a593Smuzhiyun	default "31250000" if CPU_SUBTYPE_SH7619
514*4882a593Smuzhiyun	default "33333333" if CPU_SUBTYPE_SH7770 || \
515*4882a593Smuzhiyun			      CPU_SUBTYPE_SH7760 || \
516*4882a593Smuzhiyun			      CPU_SUBTYPE_SH7705 || \
517*4882a593Smuzhiyun			      CPU_SUBTYPE_SH7203 || \
518*4882a593Smuzhiyun			      CPU_SUBTYPE_SH7206 || \
519*4882a593Smuzhiyun			      CPU_SUBTYPE_SH7263 || \
520*4882a593Smuzhiyun			      CPU_SUBTYPE_MXG
521*4882a593Smuzhiyun	default "60000000" if CPU_SUBTYPE_SH7751 || CPU_SUBTYPE_SH7751R
522*4882a593Smuzhiyun	default "66000000" if CPU_SUBTYPE_SH4_202
523*4882a593Smuzhiyun	default "50000000"
524*4882a593Smuzhiyun	help
525*4882a593Smuzhiyun	  This option is used to specify the peripheral clock frequency.
526*4882a593Smuzhiyun	  This is necessary for determining the reference clock value on
527*4882a593Smuzhiyun	  platforms lacking an RTC.
528*4882a593Smuzhiyun
529*4882a593Smuzhiyunconfig SH_CLK_CPG
530*4882a593Smuzhiyun	def_bool y
531*4882a593Smuzhiyun
532*4882a593Smuzhiyunconfig SH_CLK_CPG_LEGACY
533*4882a593Smuzhiyun	depends on SH_CLK_CPG
534*4882a593Smuzhiyun	def_bool y if !CPU_SUBTYPE_SH7785 && !ARCH_SHMOBILE && \
535*4882a593Smuzhiyun		      !CPU_SHX3 && !CPU_SUBTYPE_SH7757 && \
536*4882a593Smuzhiyun		      !CPU_SUBTYPE_SH7734 && !CPU_SUBTYPE_SH7264 && \
537*4882a593Smuzhiyun		      !CPU_SUBTYPE_SH7269
538*4882a593Smuzhiyun
539*4882a593Smuzhiyunendmenu
540*4882a593Smuzhiyun
541*4882a593Smuzhiyunmenu "CPU Frequency scaling"
542*4882a593Smuzhiyunsource "drivers/cpufreq/Kconfig"
543*4882a593Smuzhiyunendmenu
544*4882a593Smuzhiyun
545*4882a593Smuzhiyunsource "arch/sh/drivers/Kconfig"
546*4882a593Smuzhiyun
547*4882a593Smuzhiyunendmenu
548*4882a593Smuzhiyun
549*4882a593Smuzhiyunmenu "Kernel features"
550*4882a593Smuzhiyun
551*4882a593Smuzhiyunsource "kernel/Kconfig.hz"
552*4882a593Smuzhiyun
553*4882a593Smuzhiyunconfig KEXEC
554*4882a593Smuzhiyun	bool "kexec system call (EXPERIMENTAL)"
555*4882a593Smuzhiyun	depends on MMU
556*4882a593Smuzhiyun	select KEXEC_CORE
557*4882a593Smuzhiyun	help
558*4882a593Smuzhiyun	  kexec is a system call that implements the ability to shutdown your
559*4882a593Smuzhiyun	  current kernel, and to start another kernel.  It is like a reboot
560*4882a593Smuzhiyun	  but it is independent of the system firmware.  And like a reboot
561*4882a593Smuzhiyun	  you can start any kernel with it, not just Linux.
562*4882a593Smuzhiyun
563*4882a593Smuzhiyun	  The name comes from the similarity to the exec system call.
564*4882a593Smuzhiyun
565*4882a593Smuzhiyun	  It is an ongoing process to be certain the hardware in a machine
566*4882a593Smuzhiyun	  is properly shutdown, so do not be surprised if this code does not
567*4882a593Smuzhiyun	  initially work for you.  As of this writing the exact hardware
568*4882a593Smuzhiyun	  interface is strongly in flux, so no good recommendation can be
569*4882a593Smuzhiyun	  made.
570*4882a593Smuzhiyun
571*4882a593Smuzhiyunconfig CRASH_DUMP
572*4882a593Smuzhiyun	bool "kernel crash dumps (EXPERIMENTAL)"
573*4882a593Smuzhiyun	depends on BROKEN_ON_SMP
574*4882a593Smuzhiyun	help
575*4882a593Smuzhiyun	  Generate crash dump after being started by kexec.
576*4882a593Smuzhiyun	  This should be normally only set in special crash dump kernels
577*4882a593Smuzhiyun	  which are loaded in the main kernel with kexec-tools into
578*4882a593Smuzhiyun	  a specially reserved region and then later executed after
579*4882a593Smuzhiyun	  a crash by kdump/kexec. The crash dump kernel must be compiled
580*4882a593Smuzhiyun	  to a memory address not used by the main kernel using
581*4882a593Smuzhiyun	  PHYSICAL_START.
582*4882a593Smuzhiyun
583*4882a593Smuzhiyun	  For more details see Documentation/admin-guide/kdump/kdump.rst
584*4882a593Smuzhiyun
585*4882a593Smuzhiyunconfig KEXEC_JUMP
586*4882a593Smuzhiyun	bool "kexec jump (EXPERIMENTAL)"
587*4882a593Smuzhiyun	depends on KEXEC && HIBERNATION
588*4882a593Smuzhiyun	help
589*4882a593Smuzhiyun	  Jump between original kernel and kexeced kernel and invoke
590*4882a593Smuzhiyun	  code via KEXEC
591*4882a593Smuzhiyun
592*4882a593Smuzhiyunconfig PHYSICAL_START
593*4882a593Smuzhiyun	hex "Physical address where the kernel is loaded" if (EXPERT || CRASH_DUMP)
594*4882a593Smuzhiyun	default MEMORY_START
595*4882a593Smuzhiyun	help
596*4882a593Smuzhiyun	  This gives the physical address where the kernel is loaded
597*4882a593Smuzhiyun	  and is ordinarily the same as MEMORY_START.
598*4882a593Smuzhiyun
599*4882a593Smuzhiyun	  Different values are primarily used in the case of kexec on panic
600*4882a593Smuzhiyun	  where the fail safe kernel needs to run at a different address
601*4882a593Smuzhiyun	  than the panic-ed kernel.
602*4882a593Smuzhiyun
603*4882a593Smuzhiyunconfig SMP
604*4882a593Smuzhiyun	bool "Symmetric multi-processing support"
605*4882a593Smuzhiyun	depends on SYS_SUPPORTS_SMP
606*4882a593Smuzhiyun	help
607*4882a593Smuzhiyun	  This enables support for systems with more than one CPU. If you have
608*4882a593Smuzhiyun	  a system with only one CPU, say N. If you have a system with more
609*4882a593Smuzhiyun	  than one CPU, say Y.
610*4882a593Smuzhiyun
611*4882a593Smuzhiyun	  If you say N here, the kernel will run on uni- and multiprocessor
612*4882a593Smuzhiyun	  machines, but will use only one CPU of a multiprocessor machine. If
613*4882a593Smuzhiyun	  you say Y here, the kernel will run on many, but not all,
614*4882a593Smuzhiyun	  uniprocessor machines. On a uniprocessor machine, the kernel
615*4882a593Smuzhiyun	  will run faster if you say N here.
616*4882a593Smuzhiyun
617*4882a593Smuzhiyun	  People using multiprocessor machines who say Y here should also say
618*4882a593Smuzhiyun	  Y to "Enhanced Real Time Clock Support", below.
619*4882a593Smuzhiyun
620*4882a593Smuzhiyun	  See also <file:Documentation/admin-guide/lockup-watchdogs.rst> and the SMP-HOWTO
621*4882a593Smuzhiyun	  available at <https://www.tldp.org/docs.html#howto>.
622*4882a593Smuzhiyun
623*4882a593Smuzhiyun	  If you don't know what to do here, say N.
624*4882a593Smuzhiyun
625*4882a593Smuzhiyunconfig NR_CPUS
626*4882a593Smuzhiyun	int "Maximum number of CPUs (2-32)"
627*4882a593Smuzhiyun	range 2 32
628*4882a593Smuzhiyun	depends on SMP
629*4882a593Smuzhiyun	default "4" if CPU_SUBTYPE_SHX3
630*4882a593Smuzhiyun	default "2"
631*4882a593Smuzhiyun	help
632*4882a593Smuzhiyun	  This allows you to specify the maximum number of CPUs which this
633*4882a593Smuzhiyun	  kernel will support.  The maximum supported value is 32 and the
634*4882a593Smuzhiyun	  minimum value which makes sense is 2.
635*4882a593Smuzhiyun
636*4882a593Smuzhiyun	  This is purely to save memory - each supported CPU adds
637*4882a593Smuzhiyun	  approximately eight kilobytes to the kernel image.
638*4882a593Smuzhiyun
639*4882a593Smuzhiyunconfig HOTPLUG_CPU
640*4882a593Smuzhiyun	bool "Support for hot-pluggable CPUs (EXPERIMENTAL)"
641*4882a593Smuzhiyun	depends on SMP
642*4882a593Smuzhiyun	help
643*4882a593Smuzhiyun	  Say Y here to experiment with turning CPUs off and on.  CPUs
644*4882a593Smuzhiyun	  can be controlled through /sys/devices/system/cpu.
645*4882a593Smuzhiyun
646*4882a593Smuzhiyunconfig GUSA
647*4882a593Smuzhiyun	def_bool y
648*4882a593Smuzhiyun	depends on !SMP
649*4882a593Smuzhiyun	help
650*4882a593Smuzhiyun	  This enables support for gUSA (general UserSpace Atomicity).
651*4882a593Smuzhiyun	  This is the default implementation for both UP and non-ll/sc
652*4882a593Smuzhiyun	  CPUs, and is used by the libc, amongst others.
653*4882a593Smuzhiyun
654*4882a593Smuzhiyun	  For additional information, design information can be found
655*4882a593Smuzhiyun	  in <http://lc.linux.or.jp/lc2002/papers/niibe0919p.pdf>.
656*4882a593Smuzhiyun
657*4882a593Smuzhiyun	  This should only be disabled for special cases where alternate
658*4882a593Smuzhiyun	  atomicity implementations exist.
659*4882a593Smuzhiyun
660*4882a593Smuzhiyunconfig GUSA_RB
661*4882a593Smuzhiyun	bool "Implement atomic operations by roll-back (gRB) (EXPERIMENTAL)"
662*4882a593Smuzhiyun	depends on GUSA && CPU_SH3 || (CPU_SH4 && !CPU_SH4A)
663*4882a593Smuzhiyun	help
664*4882a593Smuzhiyun	  Enabling this option will allow the kernel to implement some
665*4882a593Smuzhiyun	  atomic operations using a software implementation of load-locked/
666*4882a593Smuzhiyun	  store-conditional (LLSC). On machines which do not have hardware
667*4882a593Smuzhiyun	  LLSC, this should be more efficient than the other alternative of
668*4882a593Smuzhiyun	  disabling interrupts around the atomic sequence.
669*4882a593Smuzhiyun
670*4882a593Smuzhiyunconfig HW_PERF_EVENTS
671*4882a593Smuzhiyun	bool "Enable hardware performance counter support for perf events"
672*4882a593Smuzhiyun	depends on PERF_EVENTS && CPU_HAS_PMU
673*4882a593Smuzhiyun	default y
674*4882a593Smuzhiyun	help
675*4882a593Smuzhiyun	  Enable hardware performance counter support for perf events. If
676*4882a593Smuzhiyun	  disabled, perf events will use software events only.
677*4882a593Smuzhiyun
678*4882a593Smuzhiyunsource "drivers/sh/Kconfig"
679*4882a593Smuzhiyun
680*4882a593Smuzhiyunendmenu
681*4882a593Smuzhiyun
682*4882a593Smuzhiyunmenu "Boot options"
683*4882a593Smuzhiyun
684*4882a593Smuzhiyunconfig USE_BUILTIN_DTB
685*4882a593Smuzhiyun	bool "Use builtin DTB"
686*4882a593Smuzhiyun	default n
687*4882a593Smuzhiyun	depends on SH_DEVICE_TREE
688*4882a593Smuzhiyun	help
689*4882a593Smuzhiyun	  Link a device tree blob for particular hardware into the kernel,
690*4882a593Smuzhiyun	  suppressing use of the DTB pointer provided by the bootloader.
691*4882a593Smuzhiyun	  This option should only be used with legacy bootloaders that are
692*4882a593Smuzhiyun	  not capable of providing a DTB to the kernel, or for experimental
693*4882a593Smuzhiyun	  hardware without stable device tree bindings.
694*4882a593Smuzhiyun
695*4882a593Smuzhiyunconfig BUILTIN_DTB_SOURCE
696*4882a593Smuzhiyun	string "Source file for builtin DTB"
697*4882a593Smuzhiyun	default ""
698*4882a593Smuzhiyun	depends on USE_BUILTIN_DTB
699*4882a593Smuzhiyun	help
700*4882a593Smuzhiyun	  Base name (without suffix, relative to arch/sh/boot/dts) for the
701*4882a593Smuzhiyun	  a DTS file that will be used to produce the DTB linked into the
702*4882a593Smuzhiyun	  kernel.
703*4882a593Smuzhiyun
704*4882a593Smuzhiyunconfig ZERO_PAGE_OFFSET
705*4882a593Smuzhiyun	hex
706*4882a593Smuzhiyun	default "0x00010000" if PAGE_SIZE_64KB || SH_RTS7751R2D || \
707*4882a593Smuzhiyun				SH_7751_SOLUTION_ENGINE
708*4882a593Smuzhiyun	default "0x00004000" if PAGE_SIZE_16KB || SH_SH03
709*4882a593Smuzhiyun	default "0x00002000" if PAGE_SIZE_8KB
710*4882a593Smuzhiyun	default "0x00001000"
711*4882a593Smuzhiyun	help
712*4882a593Smuzhiyun	  This sets the default offset of zero page.
713*4882a593Smuzhiyun
714*4882a593Smuzhiyunconfig BOOT_LINK_OFFSET
715*4882a593Smuzhiyun	hex
716*4882a593Smuzhiyun	default "0x00210000" if SH_SHMIN
717*4882a593Smuzhiyun	default "0x00810000" if SH_7780_SOLUTION_ENGINE
718*4882a593Smuzhiyun	default "0x009e0000" if SH_TITAN
719*4882a593Smuzhiyun	default "0x01800000" if SH_SDK7780
720*4882a593Smuzhiyun	default "0x02000000" if SH_EDOSK7760
721*4882a593Smuzhiyun	default "0x00800000"
722*4882a593Smuzhiyun	help
723*4882a593Smuzhiyun	  This option allows you to set the link address offset of the zImage.
724*4882a593Smuzhiyun	  This can be useful if you are on a board which has a small amount of
725*4882a593Smuzhiyun	  memory.
726*4882a593Smuzhiyun
727*4882a593Smuzhiyunconfig ENTRY_OFFSET
728*4882a593Smuzhiyun	hex
729*4882a593Smuzhiyun	default "0x00001000" if PAGE_SIZE_4KB
730*4882a593Smuzhiyun	default "0x00002000" if PAGE_SIZE_8KB
731*4882a593Smuzhiyun	default "0x00004000" if PAGE_SIZE_16KB
732*4882a593Smuzhiyun	default "0x00010000" if PAGE_SIZE_64KB
733*4882a593Smuzhiyun	default "0x00000000"
734*4882a593Smuzhiyun
735*4882a593Smuzhiyunconfig ROMIMAGE_MMCIF
736*4882a593Smuzhiyun	bool "Include MMCIF loader in romImage (EXPERIMENTAL)"
737*4882a593Smuzhiyun	depends on CPU_SUBTYPE_SH7724
738*4882a593Smuzhiyun	help
739*4882a593Smuzhiyun	  Say Y here to include experimental MMCIF loading code in
740*4882a593Smuzhiyun	  romImage. With this enabled it is possible to write the romImage
741*4882a593Smuzhiyun	  kernel image to an MMC card and boot the kernel straight from
742*4882a593Smuzhiyun	  the reset vector. At reset the processor Mask ROM will load the
743*4882a593Smuzhiyun	  first part of the romImage which in turn loads the rest the kernel
744*4882a593Smuzhiyun	  image to RAM using the MMCIF hardware block.
745*4882a593Smuzhiyun
746*4882a593Smuzhiyunchoice
747*4882a593Smuzhiyun	prompt "Kernel command line"
748*4882a593Smuzhiyun	optional
749*4882a593Smuzhiyun	default CMDLINE_OVERWRITE
750*4882a593Smuzhiyun	help
751*4882a593Smuzhiyun	  Setting this option allows the kernel command line arguments
752*4882a593Smuzhiyun	  to be set.
753*4882a593Smuzhiyun
754*4882a593Smuzhiyunconfig CMDLINE_OVERWRITE
755*4882a593Smuzhiyun	bool "Overwrite bootloader kernel arguments"
756*4882a593Smuzhiyun	help
757*4882a593Smuzhiyun	  Given string will overwrite any arguments passed in by
758*4882a593Smuzhiyun	  a bootloader.
759*4882a593Smuzhiyun
760*4882a593Smuzhiyunconfig CMDLINE_EXTEND
761*4882a593Smuzhiyun	bool "Extend bootloader kernel arguments"
762*4882a593Smuzhiyun	help
763*4882a593Smuzhiyun	  Given string will be concatenated with arguments passed in
764*4882a593Smuzhiyun	  by a bootloader.
765*4882a593Smuzhiyun
766*4882a593Smuzhiyunendchoice
767*4882a593Smuzhiyun
768*4882a593Smuzhiyunconfig CMDLINE
769*4882a593Smuzhiyun	string "Kernel command line arguments string"
770*4882a593Smuzhiyun	depends on CMDLINE_OVERWRITE || CMDLINE_EXTEND
771*4882a593Smuzhiyun	default "console=ttySC1,115200"
772*4882a593Smuzhiyun
773*4882a593Smuzhiyunendmenu
774*4882a593Smuzhiyun
775*4882a593Smuzhiyunmenu "Bus options"
776*4882a593Smuzhiyun
777*4882a593Smuzhiyunconfig SUPERHYWAY
778*4882a593Smuzhiyun	tristate "SuperHyway Bus support"
779*4882a593Smuzhiyun	depends on CPU_SUBTYPE_SH4_202
780*4882a593Smuzhiyun
781*4882a593Smuzhiyunconfig MAPLE
782*4882a593Smuzhiyun	bool "Maple Bus support"
783*4882a593Smuzhiyun	depends on SH_DREAMCAST
784*4882a593Smuzhiyun	help
785*4882a593Smuzhiyun	 The Maple Bus is SEGA's serial communication bus for peripherals
786*4882a593Smuzhiyun	 on the Dreamcast. Without this bus support you won't be able to
787*4882a593Smuzhiyun	 get your Dreamcast keyboard etc to work, so most users
788*4882a593Smuzhiyun	 probably want to say 'Y' here, unless you are only using the
789*4882a593Smuzhiyun	 Dreamcast with a serial line terminal or a remote network
790*4882a593Smuzhiyun	 connection.
791*4882a593Smuzhiyun
792*4882a593Smuzhiyunendmenu
793*4882a593Smuzhiyun
794*4882a593Smuzhiyunmenu "Power management options (EXPERIMENTAL)"
795*4882a593Smuzhiyun
796*4882a593Smuzhiyunsource "kernel/power/Kconfig"
797*4882a593Smuzhiyun
798*4882a593Smuzhiyunsource "drivers/cpuidle/Kconfig"
799*4882a593Smuzhiyun
800*4882a593Smuzhiyunendmenu
801