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