1b2441318SGreg Kroah-Hartman# SPDX-License-Identifier: GPL-2.0 2f8c4a270SJonas Bonn# 3f8c4a270SJonas Bonn# For a description of the syntax of this configuration file, 4395cf969SPaul Bolle# see Documentation/kbuild/kconfig-language.txt. 5f8c4a270SJonas Bonn# 6f8c4a270SJonas Bonn 7f8c4a270SJonas Bonnconfig OPENRISC 8f8c4a270SJonas Bonn def_bool y 9*5600779eSChristoph Hellwig select ARCH_HAS_SYNC_DMA_FOR_DEVICE 10*5600779eSChristoph Hellwig select DMA_NONCOHERENT_OPS 11f8c4a270SJonas Bonn select OF 12f8c4a270SJonas Bonn select OF_EARLY_FLATTREE 13b4c4c6eeSJonas Bonn select IRQ_DOMAIN 14d1f6f28fSMarc Zyngier select HANDLE_DOMAIN_IRQ 15f8c4a270SJonas Bonn select HAVE_MEMBLOCK 168636f344SLinus Walleij select GPIOLIB 17f8c4a270SJonas Bonn select HAVE_ARCH_TRACEHOOK 18c0fcaf55SJonas Bonn select SPARSE_IRQ 19f8c4a270SJonas Bonn select GENERIC_IRQ_CHIP 20f8c4a270SJonas Bonn select GENERIC_IRQ_PROBE 21f8c4a270SJonas Bonn select GENERIC_IRQ_SHOW 22f8c4a270SJonas Bonn select GENERIC_IOMAP 239f13a1fdSBen Hutchings select GENERIC_CPU_DEVICES 2404ea1e91SAndrew Morton select HAVE_UID16 250662d33aSRichard Weinberger select GENERIC_ATOMIC64 265bf8f6bfSAnna-Maria Gleixner select GENERIC_CLOCKEVENTS 278e6d08e0SStefan Kristiansson select GENERIC_CLOCKEVENTS_BROADCAST 28603d6637SJonas Bonn select GENERIC_STRNCPY_FROM_USER 29b48b2c3eSJonas Bonn select GENERIC_STRNLEN_USER 308e6d08e0SStefan Kristiansson select GENERIC_SMP_IDLE_THREAD 31786d35d4SDavid Howells select MODULES_USE_ELF_RELA 3283fbdf1cSPalmer Dabbelt select MULTI_IRQ_HANDLER 33d1a1dc0bSDave Hansen select HAVE_DEBUG_STACKOVERFLOW 344db8e6d2SStefan Kristiansson select OR1K_PIC 35fff7fb0bSZhaoxiu Zeng select CPU_NO_EFFICIENT_FFS if !OPENRISC_HAVE_INST_FF1 36266c7fadSStafford Horne select NO_BOOTMEM 37b5f82176SStafford Horne select ARCH_USE_QUEUED_SPINLOCKS 38b5f82176SStafford Horne select ARCH_USE_QUEUED_RWLOCKS 399b54470aSStafford Horne select OMPIC if SMP 40eecac38bSStafford Horne select ARCH_WANT_FRAME_POINTERS 41f8c4a270SJonas Bonn 424c97a0c8SBabu Mogerconfig CPU_BIG_ENDIAN 434c97a0c8SBabu Moger def_bool y 444c97a0c8SBabu Moger 45f8c4a270SJonas Bonnconfig MMU 46f8c4a270SJonas Bonn def_bool y 47f8c4a270SJonas Bonn 48f8c4a270SJonas Bonnconfig RWSEM_GENERIC_SPINLOCK 49f8c4a270SJonas Bonn def_bool y 50f8c4a270SJonas Bonn 51f8c4a270SJonas Bonnconfig RWSEM_XCHGADD_ALGORITHM 52f8c4a270SJonas Bonn def_bool n 53f8c4a270SJonas Bonn 54f8c4a270SJonas Bonnconfig GENERIC_HWEIGHT 55f8c4a270SJonas Bonn def_bool y 56f8c4a270SJonas Bonn 57ce816fa8SUwe Kleine-Königconfig NO_IOPORT_MAP 58f8c4a270SJonas Bonn def_bool y 59f8c4a270SJonas Bonn 60f8c4a270SJonas Bonnconfig TRACE_IRQFLAGS_SUPPORT 61f8c4a270SJonas Bonn def_bool y 62f8c4a270SJonas Bonn 63f8c4a270SJonas Bonn# For now, use generic checksum functions 64f8c4a270SJonas Bonn#These can be reimplemented in assembly later if so inclined 65f8c4a270SJonas Bonnconfig GENERIC_CSUM 66f8c4a270SJonas Bonn def_bool y 67f8c4a270SJonas Bonn 68eecac38bSStafford Horneconfig STACKTRACE_SUPPORT 69eecac38bSStafford Horne def_bool y 70eecac38bSStafford Horne 7178cdfb5cSStafford Horneconfig LOCKDEP_SUPPORT 7278cdfb5cSStafford Horne def_bool y 7378cdfb5cSStafford Horne 7483fbdf1cSPalmer Dabbeltconfig MULTI_IRQ_HANDLER 7583fbdf1cSPalmer Dabbelt def_bool y 7683fbdf1cSPalmer Dabbelt 77f8c4a270SJonas Bonnsource "init/Kconfig" 78f8c4a270SJonas Bonn 7957a1a197SChen Gangsource "kernel/Kconfig.freezer" 80f8c4a270SJonas Bonn 81f8c4a270SJonas Bonnmenu "Processor type and features" 82f8c4a270SJonas Bonn 83f8c4a270SJonas Bonnchoice 84f8c4a270SJonas Bonn prompt "Subarchitecture" 85f8c4a270SJonas Bonn default OR1K_1200 86f8c4a270SJonas Bonn 87f8c4a270SJonas Bonnconfig OR1K_1200 88f8c4a270SJonas Bonn bool "OR1200" 89f8c4a270SJonas Bonn help 90f8c4a270SJonas Bonn Generic OpenRISC 1200 architecture 91f8c4a270SJonas Bonn 92f8c4a270SJonas Bonnendchoice 93f8c4a270SJonas Bonn 944ee93d80SJan Henrik Weinstockconfig DCACHE_WRITETHROUGH 954ee93d80SJan Henrik Weinstock bool "Have write through data caches" 964ee93d80SJan Henrik Weinstock default n 974ee93d80SJan Henrik Weinstock help 984ee93d80SJan Henrik Weinstock Select this if your implementation features write through data caches. 994ee93d80SJan Henrik Weinstock Selecting 'N' here will allow the kernel to force flushing of data 1004ee93d80SJan Henrik Weinstock caches at relevant times. Most OpenRISC implementations support write- 1014ee93d80SJan Henrik Weinstock through data caches. 1024ee93d80SJan Henrik Weinstock 1034ee93d80SJan Henrik Weinstock If unsure say N here 1044ee93d80SJan Henrik Weinstock 105f8c4a270SJonas Bonnconfig OPENRISC_BUILTIN_DTB 106f8c4a270SJonas Bonn string "Builtin DTB" 107f8c4a270SJonas Bonn default "" 108f8c4a270SJonas Bonn 109f8c4a270SJonas Bonnmenu "Class II Instructions" 110f8c4a270SJonas Bonn 111f8c4a270SJonas Bonnconfig OPENRISC_HAVE_INST_FF1 112f8c4a270SJonas Bonn bool "Have instruction l.ff1" 113f8c4a270SJonas Bonn default y 114f8c4a270SJonas Bonn help 115f8c4a270SJonas Bonn Select this if your implementation has the Class II instruction l.ff1 116f8c4a270SJonas Bonn 117f8c4a270SJonas Bonnconfig OPENRISC_HAVE_INST_FL1 118f8c4a270SJonas Bonn bool "Have instruction l.fl1" 119f8c4a270SJonas Bonn default y 120f8c4a270SJonas Bonn help 121f8c4a270SJonas Bonn Select this if your implementation has the Class II instruction l.fl1 122f8c4a270SJonas Bonn 123f8c4a270SJonas Bonnconfig OPENRISC_HAVE_INST_MUL 124f8c4a270SJonas Bonn bool "Have instruction l.mul for hardware multiply" 125f8c4a270SJonas Bonn default y 126f8c4a270SJonas Bonn help 127f8c4a270SJonas Bonn Select this if your implementation has a hardware multiply instruction 128f8c4a270SJonas Bonn 129f8c4a270SJonas Bonnconfig OPENRISC_HAVE_INST_DIV 130f8c4a270SJonas Bonn bool "Have instruction l.div for hardware divide" 131f8c4a270SJonas Bonn default y 132f8c4a270SJonas Bonn help 133f8c4a270SJonas Bonn Select this if your implementation has a hardware divide instruction 134f8c4a270SJonas Bonnendmenu 135f8c4a270SJonas Bonn 13634bbdcdcSStafford Horneconfig NR_CPUS 1378e6d08e0SStefan Kristiansson int "Maximum number of CPUs (2-32)" 1388e6d08e0SStefan Kristiansson range 2 32 1398e6d08e0SStefan Kristiansson depends on SMP 1408e6d08e0SStefan Kristiansson default "2" 1418e6d08e0SStefan Kristiansson 1428e6d08e0SStefan Kristianssonconfig SMP 1438e6d08e0SStefan Kristiansson bool "Symmetric Multi-Processing support" 1448e6d08e0SStefan Kristiansson help 1458e6d08e0SStefan Kristiansson This enables support for systems with more than one CPU. If you have 1468e6d08e0SStefan Kristiansson a system with only one CPU, say N. If you have a system with more 1478e6d08e0SStefan Kristiansson than one CPU, say Y. 1488e6d08e0SStefan Kristiansson 1498e6d08e0SStefan Kristiansson If you don't know what to do here, say N. 150f8c4a270SJonas Bonn 151f8c4a270SJonas Bonnsource kernel/Kconfig.hz 152f8c4a270SJonas Bonnsource kernel/Kconfig.preempt 153f8c4a270SJonas Bonnsource "mm/Kconfig" 154f8c4a270SJonas Bonn 155f8c4a270SJonas Bonnconfig OPENRISC_NO_SPR_SR_DSX 156f8c4a270SJonas Bonn bool "use SPR_SR_DSX software emulation" if OR1K_1200 157f8c4a270SJonas Bonn default y 158f8c4a270SJonas Bonn help 159f8c4a270SJonas Bonn SPR_SR_DSX bit is status register bit indicating whether 160f8c4a270SJonas Bonn the last exception has happened in delay slot. 161f8c4a270SJonas Bonn 162f8c4a270SJonas Bonn OpenRISC architecture makes it optional to have it implemented 163f8c4a270SJonas Bonn in hardware and the OR1200 does not have it. 164f8c4a270SJonas Bonn 165f8c4a270SJonas Bonn Say N here if you know that your OpenRISC processor has 166f8c4a270SJonas Bonn SPR_SR_DSX bit implemented. Say Y if you are unsure. 167f8c4a270SJonas Bonn 16891993c8cSStefan Kristianssonconfig OPENRISC_HAVE_SHADOW_GPRS 16991993c8cSStefan Kristiansson bool "Support for shadow gpr files" if !SMP 17091993c8cSStefan Kristiansson default y if SMP 17191993c8cSStefan Kristiansson help 17291993c8cSStefan Kristiansson Say Y here if your OpenRISC processor features shadowed 17391993c8cSStefan Kristiansson register files. They will in such case be used as a 17491993c8cSStefan Kristiansson scratch reg storage on exception entry. 17591993c8cSStefan Kristiansson 17691993c8cSStefan Kristiansson On SMP systems, this feature is mandatory. 17791993c8cSStefan Kristiansson On a unicore system it's safe to say N here if you are unsure. 17891993c8cSStefan Kristiansson 179f8c4a270SJonas Bonnconfig CMDLINE 180f8c4a270SJonas Bonn string "Default kernel command string" 181f8c4a270SJonas Bonn default "" 182f8c4a270SJonas Bonn help 183f8c4a270SJonas Bonn On some architectures there is currently no way for the boot loader 184f8c4a270SJonas Bonn to pass arguments to the kernel. For these architectures, you should 185f8c4a270SJonas Bonn supply some command-line options at build time by entering them 186f8c4a270SJonas Bonn here. 187f8c4a270SJonas Bonn 188f8c4a270SJonas Bonnmenu "Debugging options" 189f8c4a270SJonas Bonn 190f8c4a270SJonas Bonnconfig JUMP_UPON_UNHANDLED_EXCEPTION 191f8c4a270SJonas Bonn bool "Try to die gracefully" 192f8c4a270SJonas Bonn default y 193f8c4a270SJonas Bonn help 194f8c4a270SJonas Bonn Now this puts kernel into infinite loop after first oops. Till 195f8c4a270SJonas Bonn your kernel crashes this doesn't have any influence. 196f8c4a270SJonas Bonn 197f8c4a270SJonas Bonn Say Y if you are unsure. 198f8c4a270SJonas Bonn 199f8c4a270SJonas Bonnconfig OPENRISC_ESR_EXCEPTION_BUG_CHECK 200f8c4a270SJonas Bonn bool "Check for possible ESR exception bug" 201f8c4a270SJonas Bonn default n 202f8c4a270SJonas Bonn help 203f8c4a270SJonas Bonn This option enables some checks that might expose some problems 204f8c4a270SJonas Bonn in kernel. 205f8c4a270SJonas Bonn 206f8c4a270SJonas Bonn Say N if you are unsure. 207f8c4a270SJonas Bonn 208f8c4a270SJonas Bonnendmenu 209f8c4a270SJonas Bonn 210f8c4a270SJonas Bonnendmenu 211f8c4a270SJonas Bonn 212f8c4a270SJonas Bonnmenu "Executable file formats" 213f8c4a270SJonas Bonn 214f8c4a270SJonas Bonnsource "fs/Kconfig.binfmt" 215f8c4a270SJonas Bonn 216f8c4a270SJonas Bonnendmenu 217f8c4a270SJonas Bonn 218f8c4a270SJonas Bonnsource "net/Kconfig" 219f8c4a270SJonas Bonn 220f8c4a270SJonas Bonnsource "drivers/Kconfig" 221f8c4a270SJonas Bonn 222f8c4a270SJonas Bonnsource "fs/Kconfig" 223f8c4a270SJonas Bonn 224f8c4a270SJonas Bonnsource "security/Kconfig" 225f8c4a270SJonas Bonn 226f8c4a270SJonas Bonnsource "crypto/Kconfig" 227f8c4a270SJonas Bonn 228f8c4a270SJonas Bonnsource "lib/Kconfig" 229f8c4a270SJonas Bonn 230f8c4a270SJonas Bonnmenu "Kernel hacking" 231f8c4a270SJonas Bonn 232f8c4a270SJonas Bonnsource "lib/Kconfig.debug" 233f8c4a270SJonas Bonn 234f8c4a270SJonas Bonnendmenu 235