blob: 7e94fe37cb2fdf341cee2461cd51ce3cf3e14905 [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,
Mauro Carvalho Chehabcd238ef2019-06-12 14:52:48 -03004# see Documentation/kbuild/kconfig-language.rst.
Jonas Bonnf8c4a272011-06-04 21:52:05 +03005#
6
7config OPENRISC
8 def_bool y
Yury Norov942fa982018-05-16 11:18:49 +03009 select ARCH_32BIT_OFF_T
Christoph Hellwiga4a4d112019-11-07 18:08:39 +010010 select ARCH_HAS_DMA_SET_UNCACHED
11 select ARCH_HAS_DMA_CLEAR_UNCACHED
Christoph Hellwig56007792018-07-19 06:02:32 -070012 select ARCH_HAS_SYNC_DMA_FOR_DEVICE
Jonas Bonnf8c4a272011-06-04 21:52:05 +030013 select OF
14 select OF_EARLY_FLATTREE
Jonas Bonnb4c4c6e2012-04-06 12:52:54 +020015 select IRQ_DOMAIN
Marc Zyngierd1f6f282014-08-26 11:03:19 +010016 select HANDLE_DOMAIN_IRQ
Linus Walleij8636f342016-04-19 13:15:43 +020017 select GPIOLIB
Krzysztof Kozlowski0ecdcaa2019-11-20 21:37:12 +080018 select HAVE_ARCH_TRACEHOOK
Jonas Bonnc0fcaf52012-05-09 23:19:44 +020019 select SPARSE_IRQ
Jonas Bonnf8c4a272011-06-04 21:52:05 +030020 select GENERIC_IRQ_CHIP
21 select GENERIC_IRQ_PROBE
22 select GENERIC_IRQ_SHOW
23 select GENERIC_IOMAP
Ben Hutchings9f13a1f2012-01-10 03:04:32 +000024 select GENERIC_CPU_DEVICES
Andrew Morton04ea1e92015-07-17 16:23:28 -070025 select HAVE_UID16
Richard Weinberger0662d332012-03-02 01:55:11 +010026 select GENERIC_ATOMIC64
Anna-Maria Gleixner5bf8f6b2012-05-18 16:45:51 +000027 select GENERIC_CLOCKEVENTS
Stefan Kristiansson8e6d08e2014-05-11 21:49:34 +030028 select GENERIC_CLOCKEVENTS_BROADCAST
Jonas Bonn603d6632012-05-25 08:24:49 +020029 select GENERIC_STRNCPY_FROM_USER
Jonas Bonnb48b2c32012-05-27 10:25:47 +020030 select GENERIC_STRNLEN_USER
Stefan Kristiansson8e6d08e2014-05-11 21:49:34 +030031 select GENERIC_SMP_IDLE_THREAD
David Howells786d35d2012-09-28 14:31:03 +093032 select MODULES_USE_ELF_RELA
Dave Hansend1a1dc02013-07-01 13:04:42 -070033 select HAVE_DEBUG_STACKOVERFLOW
Stefan Kristiansson4db8e6d2014-05-26 23:31:42 +030034 select OR1K_PIC
Zhaoxiu Zengfff7fb02016-05-20 17:03:57 -070035 select CPU_NO_EFFICIENT_FFS if !OPENRISC_HAVE_INST_FF1
Stafford Horneb5f82172017-03-24 07:13:03 +090036 select ARCH_USE_QUEUED_SPINLOCKS
37 select ARCH_USE_QUEUED_RWLOCKS
Stafford Horne9b544702017-10-30 21:38:35 +090038 select OMPIC if SMP
Stafford Horneeecac382017-07-24 21:44:35 +090039 select ARCH_WANT_FRAME_POINTERS
Palmer Dabbeltc5ca4562018-06-22 10:01:25 -070040 select GENERIC_IRQ_MULTI_HANDLER
Peter Zijlstra6137fed2018-09-04 17:04:07 +020041 select MMU_GATHER_NO_RANGE if MMU
Jonas Bonnf8c4a272011-06-04 21:52:05 +030042
Babu Moger4c97a0c2017-09-08 16:14:22 -070043config CPU_BIG_ENDIAN
44 def_bool y
45
Jonas Bonnf8c4a272011-06-04 21:52:05 +030046config MMU
47 def_bool y
48
Jonas Bonnf8c4a272011-06-04 21:52:05 +030049config GENERIC_HWEIGHT
50 def_bool y
51
Uwe Kleine-Königce816fa2014-04-07 15:39:19 -070052config NO_IOPORT_MAP
Jonas Bonnf8c4a272011-06-04 21:52:05 +030053 def_bool y
54
Jonas Bonnf8c4a272011-06-04 21:52:05 +030055config TRACE_IRQFLAGS_SUPPORT
Krzysztof Kozlowski0ecdcaa2019-11-20 21:37:12 +080056 def_bool y
Jonas Bonnf8c4a272011-06-04 21:52:05 +030057
58# For now, use generic checksum functions
59#These can be reimplemented in assembly later if so inclined
60config GENERIC_CSUM
Krzysztof Kozlowski0ecdcaa2019-11-20 21:37:12 +080061 def_bool y
Jonas Bonnf8c4a272011-06-04 21:52:05 +030062
Stafford Horneeecac382017-07-24 21:44:35 +090063config STACKTRACE_SUPPORT
64 def_bool y
65
Stafford Horne78cdfb52017-07-24 21:55:16 +090066config LOCKDEP_SUPPORT
67 def_bool y
68
Jonas Bonnf8c4a272011-06-04 21:52:05 +030069menu "Processor type and features"
70
71choice
72 prompt "Subarchitecture"
73 default OR1K_1200
74
75config OR1K_1200
76 bool "OR1200"
77 help
78 Generic OpenRISC 1200 architecture
79
80endchoice
81
Jan Henrik Weinstock4ee93d82015-11-04 17:26:10 +010082config DCACHE_WRITETHROUGH
83 bool "Have write through data caches"
84 default n
85 help
86 Select this if your implementation features write through data caches.
87 Selecting 'N' here will allow the kernel to force flushing of data
88 caches at relevant times. Most OpenRISC implementations support write-
89 through data caches.
90
91 If unsure say N here
92
Jonas Bonnf8c4a272011-06-04 21:52:05 +030093config OPENRISC_BUILTIN_DTB
Krzysztof Kozlowski0ecdcaa2019-11-20 21:37:12 +080094 string "Builtin DTB"
95 default ""
Jonas Bonnf8c4a272011-06-04 21:52:05 +030096
97menu "Class II Instructions"
98
99config OPENRISC_HAVE_INST_FF1
100 bool "Have instruction l.ff1"
101 default y
102 help
103 Select this if your implementation has the Class II instruction l.ff1
104
105config OPENRISC_HAVE_INST_FL1
106 bool "Have instruction l.fl1"
107 default y
108 help
109 Select this if your implementation has the Class II instruction l.fl1
110
111config OPENRISC_HAVE_INST_MUL
112 bool "Have instruction l.mul for hardware multiply"
113 default y
114 help
115 Select this if your implementation has a hardware multiply instruction
116
117config OPENRISC_HAVE_INST_DIV
118 bool "Have instruction l.div for hardware divide"
119 default y
120 help
121 Select this if your implementation has a hardware divide instruction
122endmenu
123
Stafford Horne34bbdcd2016-09-24 22:20:42 +0900124config NR_CPUS
Stefan Kristiansson8e6d08e2014-05-11 21:49:34 +0300125 int "Maximum number of CPUs (2-32)"
126 range 2 32
127 depends on SMP
128 default "2"
129
130config SMP
131 bool "Symmetric Multi-Processing support"
132 help
133 This enables support for systems with more than one CPU. If you have
134 a system with only one CPU, say N. If you have a system with more
135 than one CPU, say Y.
136
137 If you don't know what to do here, say N.
Jonas Bonnf8c4a272011-06-04 21:52:05 +0300138
Masahiro Yamada8636a1f2018-12-11 20:01:04 +0900139source "kernel/Kconfig.hz"
Jonas Bonnf8c4a272011-06-04 21:52:05 +0300140
141config OPENRISC_NO_SPR_SR_DSX
142 bool "use SPR_SR_DSX software emulation" if OR1K_1200
143 default y
144 help
145 SPR_SR_DSX bit is status register bit indicating whether
146 the last exception has happened in delay slot.
147
148 OpenRISC architecture makes it optional to have it implemented
149 in hardware and the OR1200 does not have it.
150
151 Say N here if you know that your OpenRISC processor has
152 SPR_SR_DSX bit implemented. Say Y if you are unsure.
153
Stefan Kristiansson91993c82014-05-11 12:08:37 +0300154config OPENRISC_HAVE_SHADOW_GPRS
155 bool "Support for shadow gpr files" if !SMP
156 default y if SMP
157 help
158 Say Y here if your OpenRISC processor features shadowed
159 register files. They will in such case be used as a
160 scratch reg storage on exception entry.
161
162 On SMP systems, this feature is mandatory.
163 On a unicore system it's safe to say N here if you are unsure.
164
Jonas Bonnf8c4a272011-06-04 21:52:05 +0300165config CMDLINE
Krzysztof Kozlowski0ecdcaa2019-11-20 21:37:12 +0800166 string "Default kernel command string"
167 default ""
168 help
169 On some architectures there is currently no way for the boot loader
170 to pass arguments to the kernel. For these architectures, you should
171 supply some command-line options at build time by entering them
172 here.
Jonas Bonnf8c4a272011-06-04 21:52:05 +0300173
174menu "Debugging options"
175
Jonas Bonnf8c4a272011-06-04 21:52:05 +0300176config JUMP_UPON_UNHANDLED_EXCEPTION
177 bool "Try to die gracefully"
178 default y
179 help
180 Now this puts kernel into infinite loop after first oops. Till
181 your kernel crashes this doesn't have any influence.
182
183 Say Y if you are unsure.
184
Jonas Bonnf8c4a272011-06-04 21:52:05 +0300185config OPENRISC_ESR_EXCEPTION_BUG_CHECK
186 bool "Check for possible ESR exception bug"
187 default n
188 help
189 This option enables some checks that might expose some problems
Krzysztof Kozlowski0ecdcaa2019-11-20 21:37:12 +0800190 in kernel.
Jonas Bonnf8c4a272011-06-04 21:52:05 +0300191
192 Say N if you are unsure.
193
194endmenu
195
196endmenu