blob: e0081e7348271d212b56ea5e28680d4e07ce59cb [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
Christoph Hellwig56007792018-07-19 06:02:32 -07009 select ARCH_HAS_SYNC_DMA_FOR_DEVICE
10 select DMA_NONCOHERENT_OPS
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
Jonas Bonnf8c4a272011-06-04 21:52:05 +030015 select HAVE_MEMBLOCK
Linus Walleij8636f342016-04-19 13:15:43 +020016 select GPIOLIB
Jonas Bonnf8c4a272011-06-04 21:52:05 +030017 select HAVE_ARCH_TRACEHOOK
Jonas Bonnc0fcaf52012-05-09 23:19:44 +020018 select SPARSE_IRQ
Jonas Bonnf8c4a272011-06-04 21:52:05 +030019 select GENERIC_IRQ_CHIP
20 select GENERIC_IRQ_PROBE
21 select GENERIC_IRQ_SHOW
22 select GENERIC_IOMAP
Ben Hutchings9f13a1f2012-01-10 03:04:32 +000023 select GENERIC_CPU_DEVICES
Andrew Morton04ea1e92015-07-17 16:23:28 -070024 select HAVE_UID16
Richard Weinberger0662d332012-03-02 01:55:11 +010025 select GENERIC_ATOMIC64
Anna-Maria Gleixner5bf8f6b2012-05-18 16:45:51 +000026 select GENERIC_CLOCKEVENTS
Stefan Kristiansson8e6d08e2014-05-11 21:49:34 +030027 select GENERIC_CLOCKEVENTS_BROADCAST
Jonas Bonn603d6632012-05-25 08:24:49 +020028 select GENERIC_STRNCPY_FROM_USER
Jonas Bonnb48b2c32012-05-27 10:25:47 +020029 select GENERIC_STRNLEN_USER
Stefan Kristiansson8e6d08e2014-05-11 21:49:34 +030030 select GENERIC_SMP_IDLE_THREAD
David Howells786d35d2012-09-28 14:31:03 +093031 select MODULES_USE_ELF_RELA
Dave Hansend1a1dc02013-07-01 13:04:42 -070032 select HAVE_DEBUG_STACKOVERFLOW
Stefan Kristiansson4db8e6d2014-05-26 23:31:42 +030033 select OR1K_PIC
Zhaoxiu Zengfff7fb02016-05-20 17:03:57 -070034 select CPU_NO_EFFICIENT_FFS if !OPENRISC_HAVE_INST_FF1
Stafford Horne266c7fa2016-04-03 19:14:49 +090035 select NO_BOOTMEM
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
Jonas Bonnf8c4a272011-06-04 21:52:05 +030041
Babu Moger4c97a0c2017-09-08 16:14:22 -070042config CPU_BIG_ENDIAN
43 def_bool y
44
Jonas Bonnf8c4a272011-06-04 21:52:05 +030045config MMU
46 def_bool y
47
Jonas Bonnf8c4a272011-06-04 21:52:05 +030048config RWSEM_GENERIC_SPINLOCK
49 def_bool y
50
51config RWSEM_XCHGADD_ALGORITHM
52 def_bool n
53
54config GENERIC_HWEIGHT
55 def_bool y
56
Uwe Kleine-Königce816fa2014-04-07 15:39:19 -070057config NO_IOPORT_MAP
Jonas Bonnf8c4a272011-06-04 21:52:05 +030058 def_bool y
59
Jonas Bonnf8c4a272011-06-04 21:52:05 +030060config TRACE_IRQFLAGS_SUPPORT
61 def_bool y
62
63# For now, use generic checksum functions
64#These can be reimplemented in assembly later if so inclined
65config GENERIC_CSUM
66 def_bool y
67
Stafford Horneeecac382017-07-24 21:44:35 +090068config STACKTRACE_SUPPORT
69 def_bool y
70
Stafford Horne78cdfb52017-07-24 21:55:16 +090071config LOCKDEP_SUPPORT
72 def_bool y
73
Jonas Bonnf8c4a272011-06-04 21:52:05 +030074menu "Processor type and features"
75
76choice
77 prompt "Subarchitecture"
78 default OR1K_1200
79
80config OR1K_1200
81 bool "OR1200"
82 help
83 Generic OpenRISC 1200 architecture
84
85endchoice
86
Jan Henrik Weinstock4ee93d82015-11-04 17:26:10 +010087config DCACHE_WRITETHROUGH
88 bool "Have write through data caches"
89 default n
90 help
91 Select this if your implementation features write through data caches.
92 Selecting 'N' here will allow the kernel to force flushing of data
93 caches at relevant times. Most OpenRISC implementations support write-
94 through data caches.
95
96 If unsure say N here
97
Jonas Bonnf8c4a272011-06-04 21:52:05 +030098config OPENRISC_BUILTIN_DTB
99 string "Builtin DTB"
100 default ""
101
102menu "Class II Instructions"
103
104config OPENRISC_HAVE_INST_FF1
105 bool "Have instruction l.ff1"
106 default y
107 help
108 Select this if your implementation has the Class II instruction l.ff1
109
110config OPENRISC_HAVE_INST_FL1
111 bool "Have instruction l.fl1"
112 default y
113 help
114 Select this if your implementation has the Class II instruction l.fl1
115
116config OPENRISC_HAVE_INST_MUL
117 bool "Have instruction l.mul for hardware multiply"
118 default y
119 help
120 Select this if your implementation has a hardware multiply instruction
121
122config OPENRISC_HAVE_INST_DIV
123 bool "Have instruction l.div for hardware divide"
124 default y
125 help
126 Select this if your implementation has a hardware divide instruction
127endmenu
128
Stafford Horne34bbdcd2016-09-24 22:20:42 +0900129config NR_CPUS
Stefan Kristiansson8e6d08e2014-05-11 21:49:34 +0300130 int "Maximum number of CPUs (2-32)"
131 range 2 32
132 depends on SMP
133 default "2"
134
135config SMP
136 bool "Symmetric Multi-Processing support"
137 help
138 This enables support for systems with more than one CPU. If you have
139 a system with only one CPU, say N. If you have a system with more
140 than one CPU, say Y.
141
142 If you don't know what to do here, say N.
Jonas Bonnf8c4a272011-06-04 21:52:05 +0300143
Jonas Bonnf8c4a272011-06-04 21:52:05 +0300144source kernel/Kconfig.hz
Jonas Bonnf8c4a272011-06-04 21:52:05 +0300145
146config OPENRISC_NO_SPR_SR_DSX
147 bool "use SPR_SR_DSX software emulation" if OR1K_1200
148 default y
149 help
150 SPR_SR_DSX bit is status register bit indicating whether
151 the last exception has happened in delay slot.
152
153 OpenRISC architecture makes it optional to have it implemented
154 in hardware and the OR1200 does not have it.
155
156 Say N here if you know that your OpenRISC processor has
157 SPR_SR_DSX bit implemented. Say Y if you are unsure.
158
Stefan Kristiansson91993c82014-05-11 12:08:37 +0300159config OPENRISC_HAVE_SHADOW_GPRS
160 bool "Support for shadow gpr files" if !SMP
161 default y if SMP
162 help
163 Say Y here if your OpenRISC processor features shadowed
164 register files. They will in such case be used as a
165 scratch reg storage on exception entry.
166
167 On SMP systems, this feature is mandatory.
168 On a unicore system it's safe to say N here if you are unsure.
169
Jonas Bonnf8c4a272011-06-04 21:52:05 +0300170config CMDLINE
171 string "Default kernel command string"
172 default ""
173 help
174 On some architectures there is currently no way for the boot loader
175 to pass arguments to the kernel. For these architectures, you should
176 supply some command-line options at build time by entering them
177 here.
178
179menu "Debugging options"
180
Jonas Bonnf8c4a272011-06-04 21:52:05 +0300181config JUMP_UPON_UNHANDLED_EXCEPTION
182 bool "Try to die gracefully"
183 default y
184 help
185 Now this puts kernel into infinite loop after first oops. Till
186 your kernel crashes this doesn't have any influence.
187
188 Say Y if you are unsure.
189
Jonas Bonnf8c4a272011-06-04 21:52:05 +0300190config OPENRISC_ESR_EXCEPTION_BUG_CHECK
191 bool "Check for possible ESR exception bug"
192 default n
193 help
194 This option enables some checks that might expose some problems
195 in kernel.
196
197 Say N if you are unsure.
198
199endmenu
200
201endmenu