blob: 9ecad05bfc7343ade8e5164d8fb0194fb494671f [file] [log] [blame]
Greg Kroah-Hartmanb2441312017-11-01 15:07:57 +01001# SPDX-License-Identifier: GPL-2.0
Jonas Bonnf8c4a272011-06-04 21:52:05 +03002#
3# For a description of the syntax of this configuration file,
Paul Bolle395cf962011-08-15 02:02:26 +02004# see Documentation/kbuild/kconfig-language.txt.
Jonas Bonnf8c4a272011-06-04 21:52:05 +03005#
6
7config OPENRISC
8 def_bool y
9 select OF
10 select OF_EARLY_FLATTREE
Jonas Bonnb4c4c6e2012-04-06 12:52:54 +020011 select IRQ_DOMAIN
Marc Zyngierd1f6f282014-08-26 11:03:19 +010012 select HANDLE_DOMAIN_IRQ
Jonas Bonnf8c4a272011-06-04 21:52:05 +030013 select HAVE_MEMBLOCK
Linus Walleij8636f342016-04-19 13:15:43 +020014 select GPIOLIB
Jonas Bonnf8c4a272011-06-04 21:52:05 +030015 select HAVE_ARCH_TRACEHOOK
Jonas Bonnc0fcaf52012-05-09 23:19:44 +020016 select SPARSE_IRQ
Jonas Bonnf8c4a272011-06-04 21:52:05 +030017 select GENERIC_IRQ_CHIP
18 select GENERIC_IRQ_PROBE
19 select GENERIC_IRQ_SHOW
20 select GENERIC_IOMAP
Ben Hutchings9f13a1f2012-01-10 03:04:32 +000021 select GENERIC_CPU_DEVICES
Andrew Morton04ea1e92015-07-17 16:23:28 -070022 select HAVE_UID16
Richard Weinberger0662d332012-03-02 01:55:11 +010023 select GENERIC_ATOMIC64
Anna-Maria Gleixner5bf8f6b2012-05-18 16:45:51 +000024 select GENERIC_CLOCKEVENTS
Stefan Kristiansson8e6d08e2014-05-11 21:49:34 +030025 select GENERIC_CLOCKEVENTS_BROADCAST
Jonas Bonn603d66372012-05-25 08:24:49 +020026 select GENERIC_STRNCPY_FROM_USER
Jonas Bonnb48b2c32012-05-27 10:25:47 +020027 select GENERIC_STRNLEN_USER
Stefan Kristiansson8e6d08e2014-05-11 21:49:34 +030028 select GENERIC_SMP_IDLE_THREAD
David Howells786d35d2012-09-28 14:31:03 +093029 select MODULES_USE_ELF_RELA
Palmer Dabbelt83fbdf12018-04-03 21:31:29 -070030 select MULTI_IRQ_HANDLER
Dave Hansend1a1dc02013-07-01 13:04:42 -070031 select HAVE_DEBUG_STACKOVERFLOW
Stefan Kristiansson4db8e6d2014-05-26 23:31:42 +030032 select OR1K_PIC
Zhaoxiu Zengfff7fb02016-05-20 17:03:57 -070033 select CPU_NO_EFFICIENT_FFS if !OPENRISC_HAVE_INST_FF1
Stafford Horne266c7fa2016-04-03 19:14:49 +090034 select NO_BOOTMEM
Stafford Horneb5f82172017-03-24 07:13:03 +090035 select ARCH_USE_QUEUED_SPINLOCKS
36 select ARCH_USE_QUEUED_RWLOCKS
Stafford Horne9b544702017-10-30 21:38:35 +090037 select OMPIC if SMP
Stafford Horneeecac382017-07-24 21:44:35 +090038 select ARCH_WANT_FRAME_POINTERS
Jonas Bonnf8c4a272011-06-04 21:52:05 +030039
Babu Moger4c97a0c2017-09-08 16:14:22 -070040config CPU_BIG_ENDIAN
41 def_bool y
42
Jonas Bonnf8c4a272011-06-04 21:52:05 +030043config MMU
44 def_bool y
45
Jonas Bonnf8c4a272011-06-04 21:52:05 +030046config RWSEM_GENERIC_SPINLOCK
47 def_bool y
48
49config RWSEM_XCHGADD_ALGORITHM
50 def_bool n
51
52config GENERIC_HWEIGHT
53 def_bool y
54
Uwe Kleine-Königce816fa2014-04-07 15:39:19 -070055config NO_IOPORT_MAP
Jonas Bonnf8c4a272011-06-04 21:52:05 +030056 def_bool y
57
Jonas Bonnf8c4a272011-06-04 21:52:05 +030058config 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
63config GENERIC_CSUM
64 def_bool y
65
Stafford Horneeecac382017-07-24 21:44:35 +090066config STACKTRACE_SUPPORT
67 def_bool y
68
Stafford Horne78cdfb52017-07-24 21:55:16 +090069config LOCKDEP_SUPPORT
70 def_bool y
71
Palmer Dabbelt83fbdf12018-04-03 21:31:29 -070072config MULTI_IRQ_HANDLER
73 def_bool y
74
Jonas Bonnf8c4a272011-06-04 21:52:05 +030075source "init/Kconfig"
76
Chen Gang57a1a192013-08-13 16:01:02 -070077source "kernel/Kconfig.freezer"
Jonas Bonnf8c4a272011-06-04 21:52:05 +030078
79menu "Processor type and features"
80
81choice
82 prompt "Subarchitecture"
83 default OR1K_1200
84
85config OR1K_1200
86 bool "OR1200"
87 help
88 Generic OpenRISC 1200 architecture
89
90endchoice
91
Jan Henrik Weinstock4ee93d82015-11-04 17:26:10 +010092config DCACHE_WRITETHROUGH
93 bool "Have write through data caches"
94 default n
95 help
96 Select this if your implementation features write through data caches.
97 Selecting 'N' here will allow the kernel to force flushing of data
98 caches at relevant times. Most OpenRISC implementations support write-
99 through data caches.
100
101 If unsure say N here
102
Jonas Bonnf8c4a272011-06-04 21:52:05 +0300103config OPENRISC_BUILTIN_DTB
104 string "Builtin DTB"
105 default ""
106
107menu "Class II Instructions"
108
109config OPENRISC_HAVE_INST_FF1
110 bool "Have instruction l.ff1"
111 default y
112 help
113 Select this if your implementation has the Class II instruction l.ff1
114
115config OPENRISC_HAVE_INST_FL1
116 bool "Have instruction l.fl1"
117 default y
118 help
119 Select this if your implementation has the Class II instruction l.fl1
120
121config OPENRISC_HAVE_INST_MUL
122 bool "Have instruction l.mul for hardware multiply"
123 default y
124 help
125 Select this if your implementation has a hardware multiply instruction
126
127config OPENRISC_HAVE_INST_DIV
128 bool "Have instruction l.div for hardware divide"
129 default y
130 help
131 Select this if your implementation has a hardware divide instruction
132endmenu
133
Stafford Horne34bbdcd2016-09-24 22:20:42 +0900134config NR_CPUS
Stefan Kristiansson8e6d08e2014-05-11 21:49:34 +0300135 int "Maximum number of CPUs (2-32)"
136 range 2 32
137 depends on SMP
138 default "2"
139
140config SMP
141 bool "Symmetric Multi-Processing support"
142 help
143 This enables support for systems with more than one CPU. If you have
144 a system with only one CPU, say N. If you have a system with more
145 than one CPU, say Y.
146
147 If you don't know what to do here, say N.
Jonas Bonnf8c4a272011-06-04 21:52:05 +0300148
Jonas Bonnf8c4a272011-06-04 21:52:05 +0300149source kernel/Kconfig.hz
150source kernel/Kconfig.preempt
151source "mm/Kconfig"
152
153config OPENRISC_NO_SPR_SR_DSX
154 bool "use SPR_SR_DSX software emulation" if OR1K_1200
155 default y
156 help
157 SPR_SR_DSX bit is status register bit indicating whether
158 the last exception has happened in delay slot.
159
160 OpenRISC architecture makes it optional to have it implemented
161 in hardware and the OR1200 does not have it.
162
163 Say N here if you know that your OpenRISC processor has
164 SPR_SR_DSX bit implemented. Say Y if you are unsure.
165
Stefan Kristiansson91993c82014-05-11 12:08:37 +0300166config OPENRISC_HAVE_SHADOW_GPRS
167 bool "Support for shadow gpr files" if !SMP
168 default y if SMP
169 help
170 Say Y here if your OpenRISC processor features shadowed
171 register files. They will in such case be used as a
172 scratch reg storage on exception entry.
173
174 On SMP systems, this feature is mandatory.
175 On a unicore system it's safe to say N here if you are unsure.
176
Jonas Bonnf8c4a272011-06-04 21:52:05 +0300177config CMDLINE
178 string "Default kernel command string"
179 default ""
180 help
181 On some architectures there is currently no way for the boot loader
182 to pass arguments to the kernel. For these architectures, you should
183 supply some command-line options at build time by entering them
184 here.
185
186menu "Debugging options"
187
Jonas Bonnf8c4a272011-06-04 21:52:05 +0300188config JUMP_UPON_UNHANDLED_EXCEPTION
189 bool "Try to die gracefully"
190 default y
191 help
192 Now this puts kernel into infinite loop after first oops. Till
193 your kernel crashes this doesn't have any influence.
194
195 Say Y if you are unsure.
196
Jonas Bonnf8c4a272011-06-04 21:52:05 +0300197config OPENRISC_ESR_EXCEPTION_BUG_CHECK
198 bool "Check for possible ESR exception bug"
199 default n
200 help
201 This option enables some checks that might expose some problems
202 in kernel.
203
204 Say N if you are unsure.
205
206endmenu
207
208endmenu
209
210menu "Executable file formats"
211
212source "fs/Kconfig.binfmt"
213
214endmenu
215
216source "net/Kconfig"
217
218source "drivers/Kconfig"
219
220source "fs/Kconfig"
221
222source "security/Kconfig"
223
224source "crypto/Kconfig"
225
226source "lib/Kconfig"
227
228menu "Kernel hacking"
229
230source "lib/Kconfig.debug"
231
232endmenu