kconfig: include common Kconfig files from top-level Kconfig
[linux-2.6-block.git] / arch / openrisc / Kconfig
1 # SPDX-License-Identifier: GPL-2.0
2 #
3 # For a description of the syntax of this configuration file,
4 # see Documentation/kbuild/kconfig-language.txt.
5 #
6
7 config OPENRISC
8         def_bool y
9         select OF
10         select OF_EARLY_FLATTREE
11         select IRQ_DOMAIN
12         select HANDLE_DOMAIN_IRQ
13         select HAVE_MEMBLOCK
14         select GPIOLIB
15         select HAVE_ARCH_TRACEHOOK
16         select SPARSE_IRQ
17         select GENERIC_IRQ_CHIP
18         select GENERIC_IRQ_PROBE
19         select GENERIC_IRQ_SHOW
20         select GENERIC_IOMAP
21         select GENERIC_CPU_DEVICES
22         select HAVE_UID16
23         select GENERIC_ATOMIC64
24         select GENERIC_CLOCKEVENTS
25         select GENERIC_CLOCKEVENTS_BROADCAST
26         select GENERIC_STRNCPY_FROM_USER
27         select GENERIC_STRNLEN_USER
28         select GENERIC_SMP_IDLE_THREAD
29         select MODULES_USE_ELF_RELA
30         select MULTI_IRQ_HANDLER
31         select HAVE_DEBUG_STACKOVERFLOW
32         select OR1K_PIC
33         select CPU_NO_EFFICIENT_FFS if !OPENRISC_HAVE_INST_FF1
34         select NO_BOOTMEM
35         select ARCH_USE_QUEUED_SPINLOCKS
36         select ARCH_USE_QUEUED_RWLOCKS
37         select OMPIC if SMP
38         select ARCH_WANT_FRAME_POINTERS
39
40 config CPU_BIG_ENDIAN
41         def_bool y
42
43 config MMU
44         def_bool y
45
46 config RWSEM_GENERIC_SPINLOCK
47         def_bool y
48
49 config RWSEM_XCHGADD_ALGORITHM
50         def_bool n
51
52 config GENERIC_HWEIGHT
53         def_bool y
54
55 config NO_IOPORT_MAP
56         def_bool y
57
58 config TRACE_IRQFLAGS_SUPPORT
59         def_bool y
60
61 # For now, use generic checksum functions
62 #These can be reimplemented in assembly later if so inclined
63 config GENERIC_CSUM
64         def_bool y
65
66 config STACKTRACE_SUPPORT
67         def_bool y
68
69 config LOCKDEP_SUPPORT
70         def_bool  y
71
72 config MULTI_IRQ_HANDLER
73         def_bool y
74
75 menu "Processor type and features"
76
77 choice
78         prompt "Subarchitecture"
79         default OR1K_1200
80
81 config OR1K_1200
82         bool "OR1200"
83         help
84           Generic OpenRISC 1200 architecture
85
86 endchoice
87
88 config DCACHE_WRITETHROUGH
89         bool "Have write through data caches"
90         default n
91         help
92           Select this if your implementation features write through data caches.
93           Selecting 'N' here will allow the kernel to force flushing of data
94           caches at relevant times. Most OpenRISC implementations support write-
95           through data caches.
96
97           If unsure say N here
98
99 config OPENRISC_BUILTIN_DTB
100         string "Builtin DTB"
101         default ""
102
103 menu "Class II Instructions"
104
105 config OPENRISC_HAVE_INST_FF1
106         bool "Have instruction l.ff1"
107         default y
108         help
109           Select this if your implementation has the Class II instruction l.ff1
110
111 config OPENRISC_HAVE_INST_FL1
112         bool "Have instruction l.fl1"
113         default y
114         help
115           Select this if your implementation has the Class II instruction l.fl1
116
117 config OPENRISC_HAVE_INST_MUL
118         bool "Have instruction l.mul for hardware multiply"
119         default y
120         help
121           Select this if your implementation has a hardware multiply instruction
122
123 config OPENRISC_HAVE_INST_DIV
124         bool "Have instruction l.div for hardware divide"
125         default y
126         help
127           Select this if your implementation has a hardware divide instruction
128 endmenu
129
130 config NR_CPUS
131         int "Maximum number of CPUs (2-32)"
132         range 2 32
133         depends on SMP
134         default "2"
135
136 config SMP
137         bool "Symmetric Multi-Processing support"
138         help
139           This enables support for systems with more than one CPU. If you have
140           a system with only one CPU, say N. If you have a system with more
141           than one CPU, say Y.
142
143           If you don't know what to do here, say N.
144
145 source kernel/Kconfig.hz
146 source kernel/Kconfig.preempt
147
148 config OPENRISC_NO_SPR_SR_DSX
149         bool "use SPR_SR_DSX software emulation" if OR1K_1200
150         default y
151         help
152           SPR_SR_DSX bit is status register bit indicating whether
153           the last exception has happened in delay slot.
154
155           OpenRISC architecture makes it optional to have it implemented
156           in hardware and the OR1200 does not have it.
157
158           Say N here if you know that your OpenRISC processor has
159           SPR_SR_DSX bit implemented. Say Y if you are unsure.
160
161 config OPENRISC_HAVE_SHADOW_GPRS
162         bool "Support for shadow gpr files" if !SMP
163         default y if SMP
164         help
165           Say Y here if your OpenRISC processor features shadowed
166           register files. They will in such case be used as a
167           scratch reg storage on exception entry.
168
169           On SMP systems, this feature is mandatory.
170           On a unicore system it's safe to say N here if you are unsure.
171
172 config CMDLINE
173         string "Default kernel command string"
174         default ""
175         help
176           On some architectures there is currently no way for the boot loader
177           to pass arguments to the kernel. For these architectures, you should
178           supply some command-line options at build time by entering them
179           here.
180
181 menu "Debugging options"
182
183 config JUMP_UPON_UNHANDLED_EXCEPTION
184         bool "Try to die gracefully"
185         default y
186         help
187           Now this puts kernel into infinite loop after first oops. Till
188           your kernel crashes this doesn't have any influence.
189
190           Say Y if you are unsure.
191
192 config OPENRISC_ESR_EXCEPTION_BUG_CHECK
193         bool "Check for possible ESR exception bug"
194         default n
195         help
196           This option enables some checks that might expose some problems
197           in kernel.
198
199           Say N if you are unsure.
200
201 endmenu
202
203 endmenu
204
205 menu "Kernel hacking"
206
207 source "lib/Kconfig.debug"
208
209 endmenu