blob: 1928e061ff96dc90927ecb03ade29841ecbf88db [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 Hellwig56007792018-07-19 06:02:32 -070010 select ARCH_HAS_SYNC_DMA_FOR_DEVICE
Jonas Bonnf8c4a272011-06-04 21:52:05 +030011 select OF
12 select OF_EARLY_FLATTREE
Jonas Bonnb4c4c6e2012-04-06 12:52:54 +020013 select IRQ_DOMAIN
Marc Zyngierd1f6f282014-08-26 11:03:19 +010014 select HANDLE_DOMAIN_IRQ
Linus Walleij8636f342016-04-19 13:15:43 +020015 select GPIOLIB
Krzysztof Kozlowski0ecdcaa2019-11-20 21:37:12 +080016 select HAVE_ARCH_TRACEHOOK
Jonas Bonnc0fcaf52012-05-09 23:19:44 +020017 select SPARSE_IRQ
Jonas Bonnf8c4a272011-06-04 21:52:05 +030018 select GENERIC_IRQ_CHIP
19 select GENERIC_IRQ_PROBE
20 select GENERIC_IRQ_SHOW
21 select GENERIC_IOMAP
Ben Hutchings9f13a1f2012-01-10 03:04:32 +000022 select GENERIC_CPU_DEVICES
Andrew Morton04ea1e92015-07-17 16:23:28 -070023 select HAVE_UID16
Richard Weinberger0662d332012-03-02 01:55:11 +010024 select GENERIC_ATOMIC64
Anna-Maria Gleixner5bf8f6b2012-05-18 16:45:51 +000025 select GENERIC_CLOCKEVENTS
Stefan Kristiansson8e6d08e2014-05-11 21:49:34 +030026 select GENERIC_CLOCKEVENTS_BROADCAST
Jonas Bonn603d6632012-05-25 08:24:49 +020027 select GENERIC_STRNCPY_FROM_USER
Jonas Bonnb48b2c32012-05-27 10:25:47 +020028 select GENERIC_STRNLEN_USER
Stefan Kristiansson8e6d08e2014-05-11 21:49:34 +030029 select GENERIC_SMP_IDLE_THREAD
David Howells786d35d2012-09-28 14:31:03 +093030 select MODULES_USE_ELF_RELA
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 Horneb5f82172017-03-24 07:13:03 +090034 select ARCH_USE_QUEUED_SPINLOCKS
35 select ARCH_USE_QUEUED_RWLOCKS
Stafford Horne9b544702017-10-30 21:38:35 +090036 select OMPIC if SMP
Stafford Horneeecac382017-07-24 21:44:35 +090037 select ARCH_WANT_FRAME_POINTERS
Palmer Dabbeltc5ca4562018-06-22 10:01:25 -070038 select GENERIC_IRQ_MULTI_HANDLER
Peter Zijlstra6137fed2018-09-04 17:04:07 +020039 select MMU_GATHER_NO_RANGE if MMU
Jonas Bonnf8c4a272011-06-04 21:52:05 +030040
Babu Moger4c97a0c2017-09-08 16:14:22 -070041config CPU_BIG_ENDIAN
42 def_bool y
43
Jonas Bonnf8c4a272011-06-04 21:52:05 +030044config MMU
45 def_bool y
46
Jonas Bonnf8c4a272011-06-04 21:52:05 +030047config GENERIC_HWEIGHT
48 def_bool y
49
Uwe Kleine-Königce816fa2014-04-07 15:39:19 -070050config NO_IOPORT_MAP
Jonas Bonnf8c4a272011-06-04 21:52:05 +030051 def_bool y
52
Jonas Bonnf8c4a272011-06-04 21:52:05 +030053config TRACE_IRQFLAGS_SUPPORT
Krzysztof Kozlowski0ecdcaa2019-11-20 21:37:12 +080054 def_bool y
Jonas Bonnf8c4a272011-06-04 21:52:05 +030055
56# For now, use generic checksum functions
57#These can be reimplemented in assembly later if so inclined
58config GENERIC_CSUM
Krzysztof Kozlowski0ecdcaa2019-11-20 21:37:12 +080059 def_bool y
Jonas Bonnf8c4a272011-06-04 21:52:05 +030060
Stafford Horneeecac382017-07-24 21:44:35 +090061config STACKTRACE_SUPPORT
62 def_bool y
63
Stafford Horne78cdfb52017-07-24 21:55:16 +090064config LOCKDEP_SUPPORT
65 def_bool y
66
Jonas Bonnf8c4a272011-06-04 21:52:05 +030067menu "Processor type and features"
68
69choice
70 prompt "Subarchitecture"
71 default OR1K_1200
72
73config OR1K_1200
74 bool "OR1200"
75 help
76 Generic OpenRISC 1200 architecture
77
78endchoice
79
Jan Henrik Weinstock4ee93d82015-11-04 17:26:10 +010080config DCACHE_WRITETHROUGH
81 bool "Have write through data caches"
82 default n
83 help
84 Select this if your implementation features write through data caches.
85 Selecting 'N' here will allow the kernel to force flushing of data
86 caches at relevant times. Most OpenRISC implementations support write-
87 through data caches.
88
89 If unsure say N here
90
Jonas Bonnf8c4a272011-06-04 21:52:05 +030091config OPENRISC_BUILTIN_DTB
Krzysztof Kozlowski0ecdcaa2019-11-20 21:37:12 +080092 string "Builtin DTB"
93 default ""
Jonas Bonnf8c4a272011-06-04 21:52:05 +030094
95menu "Class II Instructions"
96
97config OPENRISC_HAVE_INST_FF1
98 bool "Have instruction l.ff1"
99 default y
100 help
101 Select this if your implementation has the Class II instruction l.ff1
102
103config OPENRISC_HAVE_INST_FL1
104 bool "Have instruction l.fl1"
105 default y
106 help
107 Select this if your implementation has the Class II instruction l.fl1
108
109config OPENRISC_HAVE_INST_MUL
110 bool "Have instruction l.mul for hardware multiply"
111 default y
112 help
113 Select this if your implementation has a hardware multiply instruction
114
115config OPENRISC_HAVE_INST_DIV
116 bool "Have instruction l.div for hardware divide"
117 default y
118 help
119 Select this if your implementation has a hardware divide instruction
120endmenu
121
Stafford Horne34bbdcd2016-09-24 22:20:42 +0900122config NR_CPUS
Stefan Kristiansson8e6d08e2014-05-11 21:49:34 +0300123 int "Maximum number of CPUs (2-32)"
124 range 2 32
125 depends on SMP
126 default "2"
127
128config SMP
129 bool "Symmetric Multi-Processing support"
130 help
131 This enables support for systems with more than one CPU. If you have
132 a system with only one CPU, say N. If you have a system with more
133 than one CPU, say Y.
134
135 If you don't know what to do here, say N.
Jonas Bonnf8c4a272011-06-04 21:52:05 +0300136
Masahiro Yamada8636a1f2018-12-11 20:01:04 +0900137source "kernel/Kconfig.hz"
Jonas Bonnf8c4a272011-06-04 21:52:05 +0300138
139config OPENRISC_NO_SPR_SR_DSX
140 bool "use SPR_SR_DSX software emulation" if OR1K_1200
141 default y
142 help
143 SPR_SR_DSX bit is status register bit indicating whether
144 the last exception has happened in delay slot.
145
146 OpenRISC architecture makes it optional to have it implemented
147 in hardware and the OR1200 does not have it.
148
149 Say N here if you know that your OpenRISC processor has
150 SPR_SR_DSX bit implemented. Say Y if you are unsure.
151
Stefan Kristiansson91993c82014-05-11 12:08:37 +0300152config OPENRISC_HAVE_SHADOW_GPRS
153 bool "Support for shadow gpr files" if !SMP
154 default y if SMP
155 help
156 Say Y here if your OpenRISC processor features shadowed
157 register files. They will in such case be used as a
158 scratch reg storage on exception entry.
159
160 On SMP systems, this feature is mandatory.
161 On a unicore system it's safe to say N here if you are unsure.
162
Jonas Bonnf8c4a272011-06-04 21:52:05 +0300163config CMDLINE
Krzysztof Kozlowski0ecdcaa2019-11-20 21:37:12 +0800164 string "Default kernel command string"
165 default ""
166 help
167 On some architectures there is currently no way for the boot loader
168 to pass arguments to the kernel. For these architectures, you should
169 supply some command-line options at build time by entering them
170 here.
Jonas Bonnf8c4a272011-06-04 21:52:05 +0300171
172menu "Debugging options"
173
Jonas Bonnf8c4a272011-06-04 21:52:05 +0300174config JUMP_UPON_UNHANDLED_EXCEPTION
175 bool "Try to die gracefully"
176 default y
177 help
178 Now this puts kernel into infinite loop after first oops. Till
179 your kernel crashes this doesn't have any influence.
180
181 Say Y if you are unsure.
182
Jonas Bonnf8c4a272011-06-04 21:52:05 +0300183config OPENRISC_ESR_EXCEPTION_BUG_CHECK
184 bool "Check for possible ESR exception bug"
185 default n
186 help
187 This option enables some checks that might expose some problems
Krzysztof Kozlowski0ecdcaa2019-11-20 21:37:12 +0800188 in kernel.
Jonas Bonnf8c4a272011-06-04 21:52:05 +0300189
190 Say N if you are unsure.
191
192endmenu
193
194endmenu