xref: /linux/arch/openrisc/Kconfig (revision 8e6d08e0a15e7d4d4b608b56597350d4cdd77710)
1f8c4a270SJonas Bonn#
2f8c4a270SJonas Bonn# For a description of the syntax of this configuration file,
3395cf969SPaul Bolle# see Documentation/kbuild/kconfig-language.txt.
4f8c4a270SJonas Bonn#
5f8c4a270SJonas Bonn
6f8c4a270SJonas Bonnconfig OPENRISC
7f8c4a270SJonas Bonn	def_bool y
8f8c4a270SJonas Bonn	select OF
9f8c4a270SJonas Bonn	select OF_EARLY_FLATTREE
10b4c4c6eeSJonas Bonn	select IRQ_DOMAIN
11d1f6f28fSMarc Zyngier	select HANDLE_DOMAIN_IRQ
12f8c4a270SJonas Bonn	select HAVE_MEMBLOCK
138636f344SLinus Walleij	select GPIOLIB
14f8c4a270SJonas Bonn        select HAVE_ARCH_TRACEHOOK
15c0fcaf55SJonas Bonn	select SPARSE_IRQ
16f8c4a270SJonas Bonn	select GENERIC_IRQ_CHIP
17f8c4a270SJonas Bonn	select GENERIC_IRQ_PROBE
18f8c4a270SJonas Bonn	select GENERIC_IRQ_SHOW
19f8c4a270SJonas Bonn	select GENERIC_IOMAP
209f13a1fdSBen Hutchings	select GENERIC_CPU_DEVICES
2104ea1e91SAndrew Morton	select HAVE_UID16
220662d33aSRichard Weinberger	select GENERIC_ATOMIC64
235bf8f6bfSAnna-Maria Gleixner	select GENERIC_CLOCKEVENTS
24*8e6d08e0SStefan Kristiansson	select GENERIC_CLOCKEVENTS_BROADCAST
25603d6637SJonas Bonn	select GENERIC_STRNCPY_FROM_USER
26b48b2c3eSJonas Bonn	select GENERIC_STRNLEN_USER
27*8e6d08e0SStefan Kristiansson	select GENERIC_SMP_IDLE_THREAD
28786d35d4SDavid Howells	select MODULES_USE_ELF_RELA
29d1a1dc0bSDave Hansen	select HAVE_DEBUG_STACKOVERFLOW
304db8e6d2SStefan Kristiansson	select OR1K_PIC
31fff7fb0bSZhaoxiu Zeng	select CPU_NO_EFFICIENT_FFS if !OPENRISC_HAVE_INST_FF1
32266c7fadSStafford Horne	select NO_BOOTMEM
33b5f82176SStafford Horne	select ARCH_USE_QUEUED_SPINLOCKS
34b5f82176SStafford Horne	select ARCH_USE_QUEUED_RWLOCKS
359b54470aSStafford Horne	select OMPIC if SMP
36f8c4a270SJonas Bonn
374c97a0c8SBabu Mogerconfig CPU_BIG_ENDIAN
384c97a0c8SBabu Moger	def_bool y
394c97a0c8SBabu Moger
40f8c4a270SJonas Bonnconfig MMU
41f8c4a270SJonas Bonn	def_bool y
42f8c4a270SJonas Bonn
43f8c4a270SJonas Bonnconfig RWSEM_GENERIC_SPINLOCK
44f8c4a270SJonas Bonn	def_bool y
45f8c4a270SJonas Bonn
46f8c4a270SJonas Bonnconfig RWSEM_XCHGADD_ALGORITHM
47f8c4a270SJonas Bonn	def_bool n
48f8c4a270SJonas Bonn
49f8c4a270SJonas Bonnconfig GENERIC_HWEIGHT
50f8c4a270SJonas Bonn	def_bool y
51f8c4a270SJonas Bonn
52ce816fa8SUwe Kleine-Königconfig NO_IOPORT_MAP
53f8c4a270SJonas Bonn	def_bool y
54f8c4a270SJonas Bonn
55f8c4a270SJonas Bonnconfig TRACE_IRQFLAGS_SUPPORT
56f8c4a270SJonas Bonn        def_bool y
57f8c4a270SJonas Bonn
58f8c4a270SJonas Bonn# For now, use generic checksum functions
59f8c4a270SJonas Bonn#These can be reimplemented in assembly later if so inclined
60f8c4a270SJonas Bonnconfig GENERIC_CSUM
61f8c4a270SJonas Bonn        def_bool y
62f8c4a270SJonas Bonn
63f8c4a270SJonas Bonnsource "init/Kconfig"
64f8c4a270SJonas Bonn
6557a1a197SChen Gangsource "kernel/Kconfig.freezer"
66f8c4a270SJonas Bonn
67f8c4a270SJonas Bonnmenu "Processor type and features"
68f8c4a270SJonas Bonn
69f8c4a270SJonas Bonnchoice
70f8c4a270SJonas Bonn	prompt "Subarchitecture"
71f8c4a270SJonas Bonn	default OR1K_1200
72f8c4a270SJonas Bonn
73f8c4a270SJonas Bonnconfig OR1K_1200
74f8c4a270SJonas Bonn	bool "OR1200"
75f8c4a270SJonas Bonn	help
76f8c4a270SJonas Bonn	  Generic OpenRISC 1200 architecture
77f8c4a270SJonas Bonn
78f8c4a270SJonas Bonnendchoice
79f8c4a270SJonas Bonn
80f8c4a270SJonas Bonnconfig OPENRISC_BUILTIN_DTB
81f8c4a270SJonas Bonn        string "Builtin DTB"
82f8c4a270SJonas Bonn        default ""
83f8c4a270SJonas Bonn
84f8c4a270SJonas Bonnmenu "Class II Instructions"
85f8c4a270SJonas Bonn
86f8c4a270SJonas Bonnconfig OPENRISC_HAVE_INST_FF1
87f8c4a270SJonas Bonn	bool "Have instruction l.ff1"
88f8c4a270SJonas Bonn	default y
89f8c4a270SJonas Bonn	help
90f8c4a270SJonas Bonn	  Select this if your implementation has the Class II instruction l.ff1
91f8c4a270SJonas Bonn
92f8c4a270SJonas Bonnconfig OPENRISC_HAVE_INST_FL1
93f8c4a270SJonas Bonn	bool "Have instruction l.fl1"
94f8c4a270SJonas Bonn	default y
95f8c4a270SJonas Bonn	help
96f8c4a270SJonas Bonn	  Select this if your implementation has the Class II instruction l.fl1
97f8c4a270SJonas Bonn
98f8c4a270SJonas Bonnconfig OPENRISC_HAVE_INST_MUL
99f8c4a270SJonas Bonn	bool "Have instruction l.mul for hardware multiply"
100f8c4a270SJonas Bonn	default y
101f8c4a270SJonas Bonn	help
102f8c4a270SJonas Bonn	  Select this if your implementation has a hardware multiply instruction
103f8c4a270SJonas Bonn
104f8c4a270SJonas Bonnconfig OPENRISC_HAVE_INST_DIV
105f8c4a270SJonas Bonn	bool "Have instruction l.div for hardware divide"
106f8c4a270SJonas Bonn	default y
107f8c4a270SJonas Bonn	help
108f8c4a270SJonas Bonn	  Select this if your implementation has a hardware divide instruction
109f8c4a270SJonas Bonnendmenu
110f8c4a270SJonas Bonn
11134bbdcdcSStafford Horneconfig NR_CPUS
112*8e6d08e0SStefan Kristiansson	int "Maximum number of CPUs (2-32)"
113*8e6d08e0SStefan Kristiansson	range 2 32
114*8e6d08e0SStefan Kristiansson	depends on SMP
115*8e6d08e0SStefan Kristiansson	default "2"
116*8e6d08e0SStefan Kristiansson
117*8e6d08e0SStefan Kristianssonconfig SMP
118*8e6d08e0SStefan Kristiansson	bool "Symmetric Multi-Processing support"
119*8e6d08e0SStefan Kristiansson	help
120*8e6d08e0SStefan Kristiansson	  This enables support for systems with more than one CPU. If you have
121*8e6d08e0SStefan Kristiansson	  a system with only one CPU, say N. If you have a system with more
122*8e6d08e0SStefan Kristiansson	  than one CPU, say Y.
123*8e6d08e0SStefan Kristiansson
124*8e6d08e0SStefan Kristiansson	  If you don't know what to do here, say N.
125f8c4a270SJonas Bonn
126f8c4a270SJonas Bonnsource kernel/Kconfig.hz
127f8c4a270SJonas Bonnsource kernel/Kconfig.preempt
128f8c4a270SJonas Bonnsource "mm/Kconfig"
129f8c4a270SJonas Bonn
130f8c4a270SJonas Bonnconfig OPENRISC_NO_SPR_SR_DSX
131f8c4a270SJonas Bonn	bool "use SPR_SR_DSX software emulation" if OR1K_1200
132f8c4a270SJonas Bonn	default y
133f8c4a270SJonas Bonn	help
134f8c4a270SJonas Bonn	  SPR_SR_DSX bit is status register bit indicating whether
135f8c4a270SJonas Bonn	  the last exception has happened in delay slot.
136f8c4a270SJonas Bonn
137f8c4a270SJonas Bonn	  OpenRISC architecture makes it optional to have it implemented
138f8c4a270SJonas Bonn	  in hardware and the OR1200 does not have it.
139f8c4a270SJonas Bonn
140f8c4a270SJonas Bonn	  Say N here if you know that your OpenRISC processor has
141f8c4a270SJonas Bonn	  SPR_SR_DSX bit implemented. Say Y if you are unsure.
142f8c4a270SJonas Bonn
14391993c8cSStefan Kristianssonconfig OPENRISC_HAVE_SHADOW_GPRS
14491993c8cSStefan Kristiansson	bool "Support for shadow gpr files" if !SMP
14591993c8cSStefan Kristiansson	default y if SMP
14691993c8cSStefan Kristiansson	help
14791993c8cSStefan Kristiansson	  Say Y here if your OpenRISC processor features shadowed
14891993c8cSStefan Kristiansson	  register files. They will in such case be used as a
14991993c8cSStefan Kristiansson	  scratch reg storage on exception entry.
15091993c8cSStefan Kristiansson
15191993c8cSStefan Kristiansson	  On SMP systems, this feature is mandatory.
15291993c8cSStefan Kristiansson	  On a unicore system it's safe to say N here if you are unsure.
15391993c8cSStefan Kristiansson
154f8c4a270SJonas Bonnconfig CMDLINE
155f8c4a270SJonas Bonn        string "Default kernel command string"
156f8c4a270SJonas Bonn        default ""
157f8c4a270SJonas Bonn        help
158f8c4a270SJonas Bonn          On some architectures there is currently no way for the boot loader
159f8c4a270SJonas Bonn          to pass arguments to the kernel. For these architectures, you should
160f8c4a270SJonas Bonn          supply some command-line options at build time by entering them
161f8c4a270SJonas Bonn          here.
162f8c4a270SJonas Bonn
163f8c4a270SJonas Bonnmenu "Debugging options"
164f8c4a270SJonas Bonn
165f8c4a270SJonas Bonnconfig JUMP_UPON_UNHANDLED_EXCEPTION
166f8c4a270SJonas Bonn	bool "Try to die gracefully"
167f8c4a270SJonas Bonn	default y
168f8c4a270SJonas Bonn	help
169f8c4a270SJonas Bonn	  Now this puts kernel into infinite loop after first oops. Till
170f8c4a270SJonas Bonn	  your kernel crashes this doesn't have any influence.
171f8c4a270SJonas Bonn
172f8c4a270SJonas Bonn	  Say Y if you are unsure.
173f8c4a270SJonas Bonn
174f8c4a270SJonas Bonnconfig OPENRISC_ESR_EXCEPTION_BUG_CHECK
175f8c4a270SJonas Bonn	bool "Check for possible ESR exception bug"
176f8c4a270SJonas Bonn	default n
177f8c4a270SJonas Bonn	help
178f8c4a270SJonas Bonn	  This option enables some checks that might expose some problems
179f8c4a270SJonas Bonn          in kernel.
180f8c4a270SJonas Bonn
181f8c4a270SJonas Bonn	  Say N if you are unsure.
182f8c4a270SJonas Bonn
183f8c4a270SJonas Bonnendmenu
184f8c4a270SJonas Bonn
185f8c4a270SJonas Bonnendmenu
186f8c4a270SJonas Bonn
187f8c4a270SJonas Bonnmenu "Executable file formats"
188f8c4a270SJonas Bonn
189f8c4a270SJonas Bonnsource "fs/Kconfig.binfmt"
190f8c4a270SJonas Bonn
191f8c4a270SJonas Bonnendmenu
192f8c4a270SJonas Bonn
193f8c4a270SJonas Bonnsource "net/Kconfig"
194f8c4a270SJonas Bonn
195f8c4a270SJonas Bonnsource "drivers/Kconfig"
196f8c4a270SJonas Bonn
197f8c4a270SJonas Bonnsource "fs/Kconfig"
198f8c4a270SJonas Bonn
199f8c4a270SJonas Bonnsource "security/Kconfig"
200f8c4a270SJonas Bonn
201f8c4a270SJonas Bonnsource "crypto/Kconfig"
202f8c4a270SJonas Bonn
203f8c4a270SJonas Bonnsource "lib/Kconfig"
204f8c4a270SJonas Bonn
205f8c4a270SJonas Bonnmenu "Kernel hacking"
206f8c4a270SJonas Bonn
207f8c4a270SJonas Bonnsource "lib/Kconfig.debug"
208f8c4a270SJonas Bonn
209f8c4a270SJonas Bonnendmenu
210